AWS SDK

AWS SDK

rev. d8779bdf94938a194237beaa6a569c9e3849b504 (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/delete_object.rs

@@ -1,1 +24,24 @@
    3      3   
    /// Constructs a fluent builder for the [`DeleteObject`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`bucket(impl Into<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::set_bucket):<br>required: **true**<br><p>The bucket name of the bucket containing the object.</p> <p><b>Directory buckets</b> - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format <code> <i>Bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format <code> <i>bucket-base-name</i>--<i>zone-id</i>--x-s3</code> (for example, <code> <i>amzn-s3-demo-bucket</i>--<i>usw2-az1</i>--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p> <p><b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>Object Lambda access points are not supported by directory buckets.</p> </note> <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p><br>
    7      7   
    ///   - [`key(impl Into<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::key) / [`set_key(Option<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::set_key):<br>required: **true**<br><p>Key name of the object to delete.</p><br>
    8      8   
    ///   - [`mfa(impl Into<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::mfa) / [`set_mfa(Option<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::set_mfa):<br>required: **false**<br><p>The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device. Required to permanently delete a versioned object if versioning is configured with MFA delete enabled.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
    9      9   
    ///   - [`version_id(impl Into<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::version_id) / [`set_version_id(Option<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::set_version_id):<br>required: **false**<br><p>Version ID used to reference a specific version of the object.</p><note>  <p>For directory buckets in this API operation, only the <code>null</code> value of the version ID is supported.</p> </note><br>
   10     10   
    ///   - [`request_payer(RequestPayer)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   11     11   
    ///   - [`bypass_governance_retention(bool)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::bypass_governance_retention) / [`set_bypass_governance_retention(Option<bool>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::set_bypass_governance_retention):<br>required: **false**<br><p>Indicates whether S3 Object Lock should bypass Governance-mode restrictions to process this operation. To use this header, you must have the <code>s3:BypassGovernanceRetention</code> permission.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   12     12   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   13         -
    ///   - [`if_match(impl Into<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::if_match) / [`set_if_match(Option<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::set_if_match):<br>required: **false**<br><p>The <code>If-Match</code> header field makes the request method conditional on ETags. If the ETag value does not match, the operation returns a <code>412 Precondition Failed</code> error. If the ETag matches or if the object doesn't exist, the operation will return a <code>204 Success (No Content) response</code>.</p> <p>For more information about conditional requests, see <a href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p><note>  <p>This functionality is only supported for directory buckets.</p> </note><br>
          13  +
    ///   - [`if_match(impl Into<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::if_match) / [`set_if_match(Option<String>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::set_if_match):<br>required: **false**<br><p>Deletes the object if the ETag (entity tag) value provided during the delete operation matches the ETag of the object in S3. If the ETag values do not match, the operation returns a <code>412 Precondition Failed</code> error.</p> <p>Expects the ETag value as a string. <code>If-Match</code> does accept a string value of an '*' (asterisk) character to denote a match of any ETag.</p> <p>For more information about conditional requests, see <a href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p><br>
   14     14   
    ///   - [`if_match_last_modified_time(DateTime)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::if_match_last_modified_time) / [`set_if_match_last_modified_time(Option<DateTime>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::set_if_match_last_modified_time):<br>required: **false**<br><p>If present, the object is deleted only if its modification times matches the provided <code>Timestamp</code>. If the <code>Timestamp</code> values do not match, the operation returns a <code>412 Precondition Failed</code> error. If the <code>Timestamp</code> matches or if the object doesn’t exist, the operation returns a <code>204 Success (No Content)</code> response.</p><note>  <p>This functionality is only supported for directory buckets.</p> </note><br>
   15     15   
    ///   - [`if_match_size(i64)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::if_match_size) / [`set_if_match_size(Option<i64>)`](crate::operation::delete_object::builders::DeleteObjectFluentBuilder::set_if_match_size):<br>required: **false**<br><p>If present, the object is deleted only if its size matches the provided size in bytes. If the <code>Size</code> value does not match, the operation returns a <code>412 Precondition Failed</code> error. If the <code>Size</code> matches or if the object doesn’t exist, the operation returns a <code>204 Success (No Content)</code> response.</p><note>  <p>This functionality is only supported for directory buckets.</p> </note> <important>  <p>You can use the <code>If-Match</code>, <code>x-amz-if-match-last-modified-time</code> and <code>x-amz-if-match-size</code> conditional headers in conjunction with each-other or individually.</p> </important><br>
   16     16   
    /// - On success, responds with [`DeleteObjectOutput`](crate::operation::delete_object::DeleteObjectOutput) with field(s):
   17     17   
    ///   - [`delete_marker(Option<bool>)`](crate::operation::delete_object::DeleteObjectOutput::delete_marker): <p>Indicates whether the specified object version that was permanently deleted was (true) or was not (false) a delete marker before deletion. In a simple DELETE, this header indicates whether (true) or not (false) the current version of the object is a delete marker. To learn more about delete markers, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html">Working with delete markers</a>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   18     18   
    ///   - [`version_id(Option<String>)`](crate::operation::delete_object::DeleteObjectOutput::version_id): <p>Returns the version ID of the delete marker created as a result of the DELETE operation.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   19     19   
    ///   - [`request_charged(Option<RequestCharged>)`](crate::operation::delete_object::DeleteObjectOutput::request_charged): <p>If present, indicates that the requester was successfully charged for the request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple Storage Service user guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   20     20   
    /// - On failure, responds with [`SdkError<DeleteObjectError>`](crate::operation::delete_object::DeleteObjectError)
   21     21   
    pub fn delete_object(&self) -> crate::operation::delete_object::builders::DeleteObjectFluentBuilder {
   22     22   
        crate::operation::delete_object::builders::DeleteObjectFluentBuilder::new(self.handle.clone())
   23     23   
    }

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/get_bucket_abac.rs

@@ -0,1 +0,14 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`GetBucketAbac`](crate::operation::get_bucket_abac::builders::GetBucketAbacFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`bucket(impl Into<String>)`](crate::operation::get_bucket_abac::builders::GetBucketAbacFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::get_bucket_abac::builders::GetBucketAbacFluentBuilder::set_bucket):<br>required: **true**<br><p>The name of the general purpose bucket.</p><br>
           7  +
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::get_bucket_abac::builders::GetBucketAbacFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::get_bucket_abac::builders::GetBucketAbacFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The Amazon Web Services account ID of the general purpose bucket's owner.</p><br>
           8  +
    /// - On success, responds with [`GetBucketAbacOutput`](crate::operation::get_bucket_abac::GetBucketAbacOutput) with field(s):
           9  +
    ///   - [`abac_status(Option<AbacStatus>)`](crate::operation::get_bucket_abac::GetBucketAbacOutput::abac_status): <p>The ABAC status of the general purpose bucket.</p>
          10  +
    /// - On failure, responds with [`SdkError<GetBucketAbacError>`](crate::operation::get_bucket_abac::GetBucketAbacError)
          11  +
    pub fn get_bucket_abac(&self) -> crate::operation::get_bucket_abac::builders::GetBucketAbacFluentBuilder {
          12  +
        crate::operation::get_bucket_abac::builders::GetBucketAbacFluentBuilder::new(self.handle.clone())
          13  +
    }
          14  +
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/get_bucket_acl.rs

@@ -1,1 +15,15 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`GetBucketAcl`](crate::operation::get_bucket_acl::builders::GetBucketAclFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`bucket(impl Into<String>)`](crate::operation::get_bucket_acl::builders::GetBucketAclFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::get_bucket_acl::builders::GetBucketAclFluentBuilder::set_bucket):<br>required: **true**<br><p>Specifies the S3 bucket whose ACL is being requested.</p> <p>When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.</p> <p>When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. If the Object Lambda access point alias in a request is not valid, the error code <code>InvalidAccessPointAliasError</code> is returned. For more information about <code>InvalidAccessPointAliasError</code>, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList">List of Error Codes</a>.</p><br>
    7      7   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::get_bucket_acl::builders::GetBucketAclFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::get_bucket_acl::builders::GetBucketAclFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
    8      8   
    /// - On success, responds with [`GetBucketAclOutput`](crate::operation::get_bucket_acl::GetBucketAclOutput) with field(s):
    9         -
    ///   - [`owner(Option<Owner>)`](crate::operation::get_bucket_acl::GetBucketAclOutput::owner): <p>Container for the bucket owner's display name and ID.</p>
           9  +
    ///   - [`owner(Option<Owner>)`](crate::operation::get_bucket_acl::GetBucketAclOutput::owner): <p>Container for the bucket owner's ID.</p>
   10     10   
    ///   - [`grants(Option<Vec::<Grant>>)`](crate::operation::get_bucket_acl::GetBucketAclOutput::grants): <p>A list of grants.</p>
   11     11   
    /// - On failure, responds with [`SdkError<GetBucketAclError>`](crate::operation::get_bucket_acl::GetBucketAclError)
   12     12   
    pub fn get_bucket_acl(&self) -> crate::operation::get_bucket_acl::builders::GetBucketAclFluentBuilder {
   13     13   
        crate::operation::get_bucket_acl::builders::GetBucketAclFluentBuilder::new(self.handle.clone())
   14     14   
    }
   15     15   
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/get_object.rs

@@ -7,7 +70,70 @@
   27     27   
    /// - On success, responds with [`GetObjectOutput`](crate::operation::get_object::GetObjectOutput) with field(s):
   28     28   
    ///   - [`body(ByteStream)`](crate::operation::get_object::GetObjectOutput::body): <p>Object data.</p>
   29     29   
    ///   - [`delete_marker(Option<bool>)`](crate::operation::get_object::GetObjectOutput::delete_marker): <p>Indicates whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response.</p><note>  <ul>   <li>    <p>If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes <code>x-amz-delete-marker: true</code> in the response.</p></li>   <li>    <p>If the specified version in the request is a delete marker, the response returns a <code>405 Method Not Allowed</code> error and the <code>Last-Modified: timestamp</code> response header.</p></li>  </ul> </note>
   30     30   
    ///   - [`accept_ranges(Option<String>)`](crate::operation::get_object::GetObjectOutput::accept_ranges): <p>Indicates that a range of bytes was specified in the request.</p>
   31     31   
    ///   - [`expiration(Option<String>)`](crate::operation::get_object::GetObjectOutput::expiration): <p>If the object expiration is configured (see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html"> <code>PutBucketLifecycleConfiguration</code> </a>), the response includes this header. It includes the <code>expiry-date</code> and <code>rule-id</code> key-value pairs providing object expiration information. The value of the <code>rule-id</code> is URL-encoded.</p><note>  <p>Object expiration information is not returned in directory buckets and this header returns the value "<code>NotImplemented</code>" in all responses for directory buckets.</p> </note>
   32     32   
    ///   - [`restore(Option<String>)`](crate::operation::get_object::GetObjectOutput::restore): <p>Provides information about object restoration action and expiration time of the restored object copy.</p><note>  <p>This functionality is not supported for directory buckets. Directory buckets only support <code>EXPRESS_ONEZONE</code> (the S3 Express One Zone storage class) in Availability Zones and <code>ONEZONE_IA</code> (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.</p> </note>
   33     33   
    ///   - [`last_modified(Option<DateTime>)`](crate::operation::get_object::GetObjectOutput::last_modified): <p>Date and time when the object was last modified.</p> <p><b>General purpose buckets </b> - When you specify a <code>versionId</code> of the object in your request, if the specified version in the request is a delete marker, the response returns a <code>405 Method Not Allowed</code> error and the <code>Last-Modified: timestamp</code> response header.</p>
   34     34   
    ///   - [`content_length(Option<i64>)`](crate::operation::get_object::GetObjectOutput::content_length): <p>Size of the body in bytes.</p>
   35     35   
    ///   - [`e_tag(Option<String>)`](crate::operation::get_object::GetObjectOutput::e_tag): <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a specific version of a resource found at a URL.</p>
   36     36   
    ///   - [`checksum_crc32(Option<String>)`](crate::operation::get_object::GetObjectOutput::checksum_crc32): <p>The Base64 encoded, 32-bit <code>CRC32</code> checksum of the object. This checksum is only present if the object was uploaded with the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   37         -
    ///   - [`checksum_crc32_c(Option<String>)`](crate::operation::get_object::GetObjectOutput::checksum_crc32_c): <p>The Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object. This will only be present if the object was uploaded with the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          37  +
    ///   - [`checksum_crc32_c(Option<String>)`](crate::operation::get_object::GetObjectOutput::checksum_crc32_c): <p>The Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object. This checksum is only present if the checksum was uploaded with the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   38     38   
    ///   - [`checksum_crc64_nvme(Option<String>)`](crate::operation::get_object::GetObjectOutput::checksum_crc64_nvme): <p>The Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p>
   39         -
    ///   - [`checksum_sha1(Option<String>)`](crate::operation::get_object::GetObjectOutput::checksum_sha1): <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This will only be present if the object was uploaded with the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   40         -
    ///   - [`checksum_sha256(Option<String>)`](crate::operation::get_object::GetObjectOutput::checksum_sha256): <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This will only be present if the object was uploaded with the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          39  +
    ///   - [`checksum_sha1(Option<String>)`](crate::operation::get_object::GetObjectOutput::checksum_sha1): <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This checksum is only present if the checksum was uploaded with the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          40  +
    ///   - [`checksum_sha256(Option<String>)`](crate::operation::get_object::GetObjectOutput::checksum_sha256): <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This checksum is only present if the checksum was uploaded with the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   41     41   
    ///   - [`checksum_type(Option<ChecksumType>)`](crate::operation::get_object::GetObjectOutput::checksum_type): <p>The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header response to verify that the checksum type that is received is the same checksum type that was specified in the <code>CreateMultipartUpload</code> request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   42     42   
    ///   - [`missing_meta(Option<i32>)`](crate::operation::get_object::GetObjectOutput::missing_meta): <p>This is set to the number of metadata entries not returned in the headers that are prefixed with <code>x-amz-meta-</code>. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   43     43   
    ///   - [`version_id(Option<String>)`](crate::operation::get_object::GetObjectOutput::version_id): <p>Version ID of the object.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   44     44   
    ///   - [`cache_control(Option<String>)`](crate::operation::get_object::GetObjectOutput::cache_control): <p>Specifies caching behavior along the request/reply chain.</p>
   45     45   
    ///   - [`content_disposition(Option<String>)`](crate::operation::get_object::GetObjectOutput::content_disposition): <p>Specifies presentational information for the object.</p>
   46     46   
    ///   - [`content_encoding(Option<String>)`](crate::operation::get_object::GetObjectOutput::content_encoding): <p>Indicates what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.</p>
   47     47   
    ///   - [`content_language(Option<String>)`](crate::operation::get_object::GetObjectOutput::content_language): <p>The language the content is in.</p>
   48     48   
    ///   - [`content_range(Option<String>)`](crate::operation::get_object::GetObjectOutput::content_range): <p>The portion of the object returned in the response.</p>
   49     49   
    ///   - [`content_type(Option<String>)`](crate::operation::get_object::GetObjectOutput::content_type): <p>A standard MIME type describing the format of the object data.</p>
   50     50   
    ///   - [`website_redirect_location(Option<String>)`](crate::operation::get_object::GetObjectOutput::website_redirect_location): <p>If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/get_object_acl.rs

@@ -1,1 +19,19 @@
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`GetObjectAcl`](crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`bucket(impl Into<String>)`](crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder::set_bucket):<br>required: **true**<br><p>The bucket name that contains the object for which to get the ACL information.</p> <p><b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><br>
    7      7   
    ///   - [`key(impl Into<String>)`](crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder::key) / [`set_key(Option<String>)`](crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder::set_key):<br>required: **true**<br><p>The key of the object for which to get the ACL information.</p><br>
    8      8   
    ///   - [`version_id(impl Into<String>)`](crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder::version_id) / [`set_version_id(Option<String>)`](crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder::set_version_id):<br>required: **false**<br><p>Version ID used to reference a specific version of the object.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
    9      9   
    ///   - [`request_payer(RequestPayer)`](crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   10     10   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   11     11   
    /// - On success, responds with [`GetObjectAclOutput`](crate::operation::get_object_acl::GetObjectAclOutput) with field(s):
   12         -
    ///   - [`owner(Option<Owner>)`](crate::operation::get_object_acl::GetObjectAclOutput::owner): <p>Container for the bucket owner's display name and ID.</p>
          12  +
    ///   - [`owner(Option<Owner>)`](crate::operation::get_object_acl::GetObjectAclOutput::owner): <p>Container for the bucket owner's ID.</p>
   13     13   
    ///   - [`grants(Option<Vec::<Grant>>)`](crate::operation::get_object_acl::GetObjectAclOutput::grants): <p>A list of grants.</p>
   14     14   
    ///   - [`request_charged(Option<RequestCharged>)`](crate::operation::get_object_acl::GetObjectAclOutput::request_charged): <p>If present, indicates that the requester was successfully charged for the request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple Storage Service user guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   15     15   
    /// - On failure, responds with [`SdkError<GetObjectAclError>`](crate::operation::get_object_acl::GetObjectAclError)
   16     16   
    pub fn get_object_acl(&self) -> crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder {
   17     17   
        crate::operation::get_object_acl::builders::GetObjectAclFluentBuilder::new(self.handle.clone())
   18     18   
    }
   19     19   
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/head_object.rs

@@ -5,5 +69,69 @@
   25     25   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::head_object::builders::HeadObjectFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::head_object::builders::HeadObjectFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   26     26   
    ///   - [`checksum_mode(ChecksumMode)`](crate::operation::head_object::builders::HeadObjectFluentBuilder::checksum_mode) / [`set_checksum_mode(Option<ChecksumMode>)`](crate::operation::head_object::builders::HeadObjectFluentBuilder::set_checksum_mode):<br>required: **false**<br><p>To retrieve the checksum, this parameter must be enabled.</p> <p><b>General purpose buckets</b> - If you enable checksum mode and the object is uploaded with a <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html">checksum</a> and encrypted with an Key Management Service (KMS) key, you must have permission to use the <code>kms:Decrypt</code> action to retrieve the checksum.</p> <p><b>Directory buckets</b> - If you enable <code>ChecksumMode</code> and the object is encrypted with Amazon Web Services Key Management Service (Amazon Web Services KMS), you must also have the <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> permissions in IAM identity-based policies and KMS key policies for the KMS key to retrieve the checksum of the object.</p><br>
   27     27   
    /// - On success, responds with [`HeadObjectOutput`](crate::operation::head_object::HeadObjectOutput) with field(s):
   28     28   
    ///   - [`delete_marker(Option<bool>)`](crate::operation::head_object::HeadObjectOutput::delete_marker): <p>Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   29     29   
    ///   - [`accept_ranges(Option<String>)`](crate::operation::head_object::HeadObjectOutput::accept_ranges): <p>Indicates that a range of bytes was specified.</p>
   30     30   
    ///   - [`expiration(Option<String>)`](crate::operation::head_object::HeadObjectOutput::expiration): <p>If the object expiration is configured (see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html"> <code>PutBucketLifecycleConfiguration</code> </a>), the response includes this header. It includes the <code>expiry-date</code> and <code>rule-id</code> key-value pairs providing object expiration information. The value of the <code>rule-id</code> is URL-encoded.</p><note>  <p>Object expiration information is not returned in directory buckets and this header returns the value "<code>NotImplemented</code>" in all responses for directory buckets.</p> </note>
   31     31   
    ///   - [`restore(Option<String>)`](crate::operation::head_object::HeadObjectOutput::restore): <p>If the object is an archived object (an object whose storage class is GLACIER), the response includes this header if either the archive restoration is in progress (see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a> or an archive copy is already restored.</p> <p>If an archive copy is already restored, the header value indicates when Amazon S3 is scheduled to delete the object copy. For example:</p> <p><code>x-amz-restore: ongoing-request="false", expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code></p> <p>If the object restoration is in progress, the header returns the value <code>ongoing-request="true"</code>.</p> <p>For more information about archiving objects, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations">Transitioning Objects: General Considerations</a>.</p><note>  <p>This functionality is not supported for directory buckets. Directory buckets only support <code>EXPRESS_ONEZONE</code> (the S3 Express One Zone storage class) in Availability Zones and <code>ONEZONE_IA</code> (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.</p> </note>
   32     32   
    ///   - [`archive_status(Option<ArchiveStatus>)`](crate::operation::head_object::HeadObjectOutput::archive_status): <p>The archive state of the head object.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   33     33   
    ///   - [`last_modified(Option<DateTime>)`](crate::operation::head_object::HeadObjectOutput::last_modified): <p>Date and time when the object was last modified.</p>
   34     34   
    ///   - [`content_length(Option<i64>)`](crate::operation::head_object::HeadObjectOutput::content_length): <p>Size of the body in bytes.</p>
   35         -
    ///   - [`checksum_crc32(Option<String>)`](crate::operation::head_object::HeadObjectOutput::checksum_crc32): <p>The Base64 encoded, 32-bit <code>CRC32 checksum</code> of the object. This checksum is only be present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          35  +
    ///   - [`checksum_crc32(Option<String>)`](crate::operation::head_object::HeadObjectOutput::checksum_crc32): <p>The Base64 encoded, 32-bit <code>CRC32 checksum</code> of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   36     36   
    ///   - [`checksum_crc32_c(Option<String>)`](crate::operation::head_object::HeadObjectOutput::checksum_crc32_c): <p>The Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   37     37   
    ///   - [`checksum_crc64_nvme(Option<String>)`](crate::operation::head_object::HeadObjectOutput::checksum_crc64_nvme): <p>The Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p>
   38         -
    ///   - [`checksum_sha1(Option<String>)`](crate::operation::head_object::HeadObjectOutput::checksum_sha1): <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This will only be present if the object was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   39         -
    ///   - [`checksum_sha256(Option<String>)`](crate::operation::head_object::HeadObjectOutput::checksum_sha256): <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This will only be present if the object was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          38  +
    ///   - [`checksum_sha1(Option<String>)`](crate::operation::head_object::HeadObjectOutput::checksum_sha1): <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This checksum is only present if the checksum was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          39  +
    ///   - [`checksum_sha256(Option<String>)`](crate::operation::head_object::HeadObjectOutput::checksum_sha256): <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   40     40   
    ///   - [`checksum_type(Option<ChecksumType>)`](crate::operation::head_object::HeadObjectOutput::checksum_type): <p>The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header response to verify that the checksum type that is received is the same checksum type that was specified in <code>CreateMultipartUpload</code> request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p>
   41     41   
    ///   - [`e_tag(Option<String>)`](crate::operation::head_object::HeadObjectOutput::e_tag): <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a specific version of a resource found at a URL.</p>
   42     42   
    ///   - [`missing_meta(Option<i32>)`](crate::operation::head_object::HeadObjectOutput::missing_meta): <p>This is set to the number of metadata entries not returned in <code>x-amz-meta</code> headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   43     43   
    ///   - [`version_id(Option<String>)`](crate::operation::head_object::HeadObjectOutput::version_id): <p>Version ID of the object.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   44     44   
    ///   - [`cache_control(Option<String>)`](crate::operation::head_object::HeadObjectOutput::cache_control): <p>Specifies caching behavior along the request/reply chain.</p>
   45     45   
    ///   - [`content_disposition(Option<String>)`](crate::operation::head_object::HeadObjectOutput::content_disposition): <p>Specifies presentational information for the object.</p>
   46     46   
    ///   - [`content_encoding(Option<String>)`](crate::operation::head_object::HeadObjectOutput::content_encoding): <p>Indicates what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.</p>
   47     47   
    ///   - [`content_language(Option<String>)`](crate::operation::head_object::HeadObjectOutput::content_language): <p>The language the content is in.</p>
   48     48   
    ///   - [`content_type(Option<String>)`](crate::operation::head_object::HeadObjectOutput::content_type): <p>A standard MIME type describing the format of the object data.</p>
   49     49   
    ///   - [`content_range(Option<String>)`](crate::operation::head_object::HeadObjectOutput::content_range): <p>The portion of the object returned in the response for a <code>GET</code> request.</p>

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/list_parts.rs

@@ -1,1 +38,38 @@
   18     18   
    ///   - [`abort_date(Option<DateTime>)`](crate::operation::list_parts::ListPartsOutput::abort_date): <p>If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, then the response includes this header indicating when the initiated multipart upload will become eligible for abort operation. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration</a>.</p> <p>The response will also include the <code>x-amz-abort-rule-id</code> header that will provide the ID of the lifecycle configuration rule that defines this action.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   19     19   
    ///   - [`abort_rule_id(Option<String>)`](crate::operation::list_parts::ListPartsOutput::abort_rule_id): <p>This header is returned along with the <code>x-amz-abort-date</code> header. It identifies applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   20     20   
    ///   - [`bucket(Option<String>)`](crate::operation::list_parts::ListPartsOutput::bucket): <p>The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.</p>
   21     21   
    ///   - [`key(Option<String>)`](crate::operation::list_parts::ListPartsOutput::key): <p>Object key for which the multipart upload was initiated.</p>
   22     22   
    ///   - [`upload_id(Option<String>)`](crate::operation::list_parts::ListPartsOutput::upload_id): <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
   23     23   
    ///   - [`part_number_marker(Option<String>)`](crate::operation::list_parts::ListPartsOutput::part_number_marker): <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
   24     24   
    ///   - [`next_part_number_marker(Option<String>)`](crate::operation::list_parts::ListPartsOutput::next_part_number_marker): <p>When a list is truncated, this element specifies the last part in the list, as well as the value to use for the <code>part-number-marker</code> request parameter in a subsequent request.</p>
   25     25   
    ///   - [`max_parts(Option<i32>)`](crate::operation::list_parts::ListPartsOutput::max_parts): <p>Maximum number of parts that were allowed in the response.</p>
   26     26   
    ///   - [`is_truncated(Option<bool>)`](crate::operation::list_parts::ListPartsOutput::is_truncated): <p>Indicates whether the returned list of parts is truncated. A true value indicates that the list was truncated. A list can be truncated if the number of parts exceeds the limit returned in the MaxParts element.</p>
   27     27   
    ///   - [`parts(Option<Vec::<Part>>)`](crate::operation::list_parts::ListPartsOutput::parts): <p>Container for elements related to a particular part. A response can contain zero or more <code>Part</code> elements.</p>
   28         -
    ///   - [`initiator(Option<Initiator>)`](crate::operation::list_parts::ListPartsOutput::initiator): <p>Container element that identifies who initiated the multipart upload. If the initiator is an Amazon Web Services account, this element provides the same information as the <code>Owner</code> element. If the initiator is an IAM User, this element provides the user ARN and display name.</p>
   29         -
    ///   - [`owner(Option<Owner>)`](crate::operation::list_parts::ListPartsOutput::owner): <p>Container element that identifies the object owner, after the object is created. If multipart upload is initiated by an IAM user, this element provides the parent account ID and display name.</p><note>  <p><b>Directory buckets</b> - The bucket owner is returned as the object owner for all the parts.</p> </note>
          28  +
    ///   - [`initiator(Option<Initiator>)`](crate::operation::list_parts::ListPartsOutput::initiator): <p>Container element that identifies who initiated the multipart upload. If the initiator is an Amazon Web Services account, this element provides the same information as the <code>Owner</code> element. If the initiator is an IAM User, this element provides the user ARN.</p>
          29  +
    ///   - [`owner(Option<Owner>)`](crate::operation::list_parts::ListPartsOutput::owner): <p>Container element that identifies the object owner, after the object is created. If multipart upload is initiated by an IAM user, this element provides the parent account ID.</p><note>  <p><b>Directory buckets</b> - The bucket owner is returned as the object owner for all the parts.</p> </note>
   30     30   
    ///   - [`storage_class(Option<StorageClass>)`](crate::operation::list_parts::ListPartsOutput::storage_class): <p>The class of storage used to store the uploaded object.</p><note>  <p><b>Directory buckets</b> - Directory buckets only support <code>EXPRESS_ONEZONE</code> (the S3 Express One Zone storage class) in Availability Zones and <code>ONEZONE_IA</code> (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.</p> </note>
   31     31   
    ///   - [`request_charged(Option<RequestCharged>)`](crate::operation::list_parts::ListPartsOutput::request_charged): <p>If present, indicates that the requester was successfully charged for the request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple Storage Service user guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   32     32   
    ///   - [`checksum_algorithm(Option<ChecksumAlgorithm>)`](crate::operation::list_parts::ListPartsOutput::checksum_algorithm): <p>The algorithm that was used to create a checksum of the object.</p>
   33     33   
    ///   - [`checksum_type(Option<ChecksumType>)`](crate::operation::list_parts::ListPartsOutput::checksum_type): <p>The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header response to verify that the checksum type that is received is the same checksum type that was specified in <code>CreateMultipartUpload</code> request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p>
   34     34   
    /// - On failure, responds with [`SdkError<ListPartsError>`](crate::operation::list_parts::ListPartsError)
   35     35   
    pub fn list_parts(&self) -> crate::operation::list_parts::builders::ListPartsFluentBuilder {
   36     36   
        crate::operation::list_parts::builders::ListPartsFluentBuilder::new(self.handle.clone())
   37     37   
    }
   38     38   
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/put_bucket_abac.rs

@@ -0,1 +0,16 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
impl super::Client {
           3  +
    /// Constructs a fluent builder for the [`PutBucketAbac`](crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder) operation.
           4  +
    ///
           5  +
    /// - The fluent builder is configurable:
           6  +
    ///   - [`bucket(impl Into<String>)`](crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder::set_bucket):<br>required: **true**<br><p>The name of the general purpose bucket.</p><br>
           7  +
    ///   - [`content_md5(impl Into<String>)`](crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder::content_md5) / [`set_content_md5(Option<String>)`](crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder::set_content_md5):<br>required: **false**<br><p>The MD5 hash of the <code>PutBucketAbac</code> request body.</p> <p>For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.</p><br>
           8  +
    ///   - [`checksum_algorithm(ChecksumAlgorithm)`](crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder::checksum_algorithm) / [`set_checksum_algorithm(Option<ChecksumAlgorithm>)`](crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder::set_checksum_algorithm):<br>required: **false**<br><p>Indicates the algorithm that you want Amazon S3 to use to create the checksum. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p><br>
           9  +
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The Amazon Web Services account ID of the general purpose bucket's owner.</p><br>
          10  +
    ///   - [`abac_status(AbacStatus)`](crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder::abac_status) / [`set_abac_status(Option<AbacStatus>)`](crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder::set_abac_status):<br>required: **true**<br><p>The ABAC status of the general purpose bucket. When ABAC is enabled for the general purpose bucket, you can use tags to manage access to the general purpose buckets as well as for cost tracking purposes. When ABAC is disabled for the general purpose buckets, you can only use tags for cost tracking purposes. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/buckets-tagging.html">Using tags with S3 general purpose buckets</a>.</p><br>
          11  +
    /// - On success, responds with [`PutBucketAbacOutput`](crate::operation::put_bucket_abac::PutBucketAbacOutput)
          12  +
    /// - On failure, responds with [`SdkError<PutBucketAbacError>`](crate::operation::put_bucket_abac::PutBucketAbacError)
          13  +
    pub fn put_bucket_abac(&self) -> crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder {
          14  +
        crate::operation::put_bucket_abac::builders::PutBucketAbacFluentBuilder::new(self.handle.clone())
          15  +
    }
          16  +
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/put_bucket_versioning.rs

@@ -1,1 +17,17 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
impl super::Client {
    3      3   
    /// Constructs a fluent builder for the [`PutBucketVersioning`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`bucket(impl Into<String>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::set_bucket):<br>required: **true**<br><p>The bucket name.</p><br>
    7      7   
    ///   - [`content_md5(impl Into<String>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::content_md5) / [`set_content_md5(Option<String>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::set_content_md5):<br>required: **false**<br><p>&gt;The Base64 encoded 128-bit <code>MD5</code> digest of the data. You must use this header as a message integrity check to verify that the request body was not corrupted in transit. For more information, see <a href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.</p><br>
    8      8   
    ///   - [`checksum_algorithm(ChecksumAlgorithm)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::checksum_algorithm) / [`set_checksum_algorithm(Option<ChecksumAlgorithm>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::set_checksum_algorithm):<br>required: **false**<br><p>Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent. Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad Request</code>. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide an individual checksum, Amazon S3 ignores any provided <code>ChecksumAlgorithm</code> parameter.</p><br>
    9         -
    ///   - [`mfa(impl Into<String>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::mfa) / [`set_mfa(Option<String>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::set_mfa):<br>required: **false**<br><p>The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device.</p><br>
           9  +
    ///   - [`mfa(impl Into<String>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::mfa) / [`set_mfa(Option<String>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::set_mfa):<br>required: **false**<br><p>The concatenation of the authentication device's serial number, a space, and the value that is displayed on your authentication device. The serial number is the number that uniquely identifies the MFA device. For physical MFA devices, this is the unique serial number that's provided with the device. For virtual MFA devices, the serial number is the device ARN. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/manage-versioning-examples.html">Enabling versioning on buckets</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiFactorAuthenticationDelete.html">Configuring MFA delete</a> in the <i>Amazon Simple Storage Service User Guide</i>.</p><br>
   10     10   
    ///   - [`versioning_configuration(VersioningConfiguration)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::versioning_configuration) / [`set_versioning_configuration(Option<VersioningConfiguration>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::set_versioning_configuration):<br>required: **true**<br><p>Container for setting the versioning state.</p><br>
   11     11   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   12     12   
    /// - On success, responds with [`PutBucketVersioningOutput`](crate::operation::put_bucket_versioning::PutBucketVersioningOutput)
   13     13   
    /// - On failure, responds with [`SdkError<PutBucketVersioningError>`](crate::operation::put_bucket_versioning::PutBucketVersioningError)
   14     14   
    pub fn put_bucket_versioning(&self) -> crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder {
   15     15   
        crate::operation::put_bucket_versioning::builders::PutBucketVersioningFluentBuilder::new(self.handle.clone())
   16     16   
    }
   17     17   
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/put_object.rs

@@ -20,20 +69,69 @@
   40     40   
    ///   - [`bucket_key_enabled(bool)`](crate::operation::put_object::builders::PutObjectFluentBuilder::bucket_key_enabled) / [`set_bucket_key_enabled(Option<bool>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_bucket_key_enabled):<br>required: **false**<br><p>Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using Key Management Service (KMS) keys (SSE-KMS).</p> <p><b>General purpose buckets</b> - Setting this header to <code>true</code> causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS. Also, specifying this header with a PUT action doesn't affect bucket-level settings for S3 Bucket Key.</p> <p><b>Directory buckets</b> - S3 Bucket Keys are always enabled for <code>GET</code> and <code>PUT</code> operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets to directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>, <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>, <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-objects-Batch-Ops">the Copy operation in Batch Operations</a>, or <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-import-job">the import jobs</a>. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.</p><br>
   41     41   
    ///   - [`request_payer(RequestPayer)`](crate::operation::put_object::builders::PutObjectFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   42     42   
    ///   - [`tagging(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::tagging) / [`set_tagging(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_tagging):<br>required: **false**<br><p>The tag-set for the object. The tag-set must be encoded as URL Query parameters. (For example, "Key1=Value1")</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   43     43   
    ///   - [`object_lock_mode(ObjectLockMode)`](crate::operation::put_object::builders::PutObjectFluentBuilder::object_lock_mode) / [`set_object_lock_mode(Option<ObjectLockMode>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_object_lock_mode):<br>required: **false**<br><p>The Object Lock mode that you want to apply to this object.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   44     44   
    ///   - [`object_lock_retain_until_date(DateTime)`](crate::operation::put_object::builders::PutObjectFluentBuilder::object_lock_retain_until_date) / [`set_object_lock_retain_until_date(Option<DateTime>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_object_lock_retain_until_date):<br>required: **false**<br><p>The date and time when you want this object's Object Lock to expire. Must be formatted as a timestamp parameter.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   45     45   
    ///   - [`object_lock_legal_hold_status(ObjectLockLegalHoldStatus)`](crate::operation::put_object::builders::PutObjectFluentBuilder::object_lock_legal_hold_status) / [`set_object_lock_legal_hold_status(Option<ObjectLockLegalHoldStatus>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_object_lock_legal_hold_status):<br>required: **false**<br><p>Specifies whether a legal hold will be applied to this object. For more information about S3 Object Lock, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object Lock</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   46     46   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::put_object::builders::PutObjectFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   47     47   
    /// - On success, responds with [`PutObjectOutput`](crate::operation::put_object::PutObjectOutput) with field(s):
   48     48   
    ///   - [`expiration(Option<String>)`](crate::operation::put_object::PutObjectOutput::expiration): <p>If the expiration is configured for the object (see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>) in the <i>Amazon S3 User Guide</i>, the response includes this header. It includes the <code>expiry-date</code> and <code>rule-id</code> key-value pairs that provide information about object expiration. The value of the <code>rule-id</code> is URL-encoded.</p><note>  <p>Object expiration information is not returned in directory buckets and this header returns the value "<code>NotImplemented</code>" in all responses for directory buckets.</p> </note>
   49     49   
    ///   - [`e_tag(Option<String>)`](crate::operation::put_object::PutObjectOutput::e_tag): <p>Entity tag for the uploaded object.</p> <p><b>General purpose buckets </b> - To ensure that data is not corrupted traversing the network, for objects where the ETag is the MD5 digest of the object, you can calculate the MD5 while putting an object to Amazon S3 and compare the returned ETag to the calculated MD5 value.</p> <p><b>Directory buckets </b> - The ETag for the object in a directory bucket isn't the MD5 digest of the object.</p>
   50         -
    ///   - [`checksum_crc32(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_crc32): <p>The Base64 encoded, 32-bit <code>CRC32 checksum</code> of the object. This checksum is only be present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          50  +
    ///   - [`checksum_crc32(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_crc32): <p>The Base64 encoded, 32-bit <code>CRC32 checksum</code> of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   51     51   
    ///   - [`checksum_crc32_c(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_crc32_c): <p>The Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   52     52   
    ///   - [`checksum_crc64_nvme(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_crc64_nvme): <p>The Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the object. This header is present if the object was uploaded with the <code>CRC64NVME</code> checksum algorithm, or if it was uploaded without a checksum (and Amazon S3 added the default checksum, <code>CRC64NVME</code>, to the uploaded object). For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p>
   53         -
    ///   - [`checksum_sha1(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_sha1): <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This will only be present if the object was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   54         -
    ///   - [`checksum_sha256(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_sha256): <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This will only be present if the object was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          53  +
    ///   - [`checksum_sha1(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_sha1): <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This checksum is only present if the checksum was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          54  +
    ///   - [`checksum_sha256(Option<String>)`](crate::operation::put_object::PutObjectOutput::checksum_sha256): <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   55     55   
    ///   - [`checksum_type(Option<ChecksumType>)`](crate::operation::put_object::PutObjectOutput::checksum_type): <p>This header specifies the checksum type of the object, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. For <code>PutObject</code> uploads, the checksum type is always <code>FULL_OBJECT</code>. You can use this header as a data integrity check to verify that the checksum type that is received is the same checksum that was specified. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   56     56   
    ///   - [`server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::put_object::PutObjectOutput::server_side_encryption): <p>The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.</p><note>  <p>When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side encryption option is <code>aws:fsx</code>.</p> </note>
   57     57   
    ///   - [`version_id(Option<String>)`](crate::operation::put_object::PutObjectOutput::version_id): <p>Version ID of the object.</p> <p>If you enable versioning for a bucket, Amazon S3 automatically generates a unique version ID for the object being stored. Amazon S3 returns this ID in the response. When you enable versioning for a bucket, if Amazon S3 receives multiple write requests for the same object simultaneously, it stores all of the objects. For more information about versioning, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html">Adding Objects to Versioning-Enabled Buckets</a> in the <i>Amazon S3 User Guide</i>. For information about returning the versioning state of a bucket, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html">GetBucketVersioning</a>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   58     58   
    ///   - [`sse_customer_algorithm(Option<String>)`](crate::operation::put_object::PutObjectOutput::sse_customer_algorithm): <p>If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   59     59   
    ///   - [`sse_customer_key_md5(Option<String>)`](crate::operation::put_object::PutObjectOutput::sse_customer_key_md5): <p>If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   60     60   
    ///   - [`ssekms_key_id(Option<String>)`](crate::operation::put_object::PutObjectOutput::ssekms_key_id): <p>If present, indicates the ID of the KMS key that was used for object encryption.</p>
   61     61   
    ///   - [`ssekms_encryption_context(Option<String>)`](crate::operation::put_object::PutObjectOutput::ssekms_encryption_context): <p>If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future <code>GetObject</code> operations on this object.</p>
   62     62   
    ///   - [`bucket_key_enabled(Option<bool>)`](crate::operation::put_object::PutObjectOutput::bucket_key_enabled): <p>Indicates whether the uploaded object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).</p>
   63     63   
    ///   - [`size(Option<i64>)`](crate::operation::put_object::PutObjectOutput::size): <p>The size of the object in bytes. This value is only be present if you append to an object.</p><note>  <p>This functionality is only supported for objects in the Amazon S3 Express One Zone storage class in directory buckets.</p> </note>
   64     64   
    ///   - [`request_charged(Option<RequestCharged>)`](crate::operation::put_object::PutObjectOutput::request_charged): <p>If present, indicates that the requester was successfully charged for the request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple Storage Service user guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/put_object_tagging.rs

@@ -1,1 +20,20 @@
    3      3   
    /// Constructs a fluent builder for the [`PutObjectTagging`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder) operation.
    4      4   
    ///
    5      5   
    /// - The fluent builder is configurable:
    6      6   
    ///   - [`bucket(impl Into<String>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::bucket) / [`set_bucket(Option<String>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::set_bucket):<br>required: **true**<br><p>The bucket name containing the object.</p> <p><b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p><br>
    7      7   
    ///   - [`key(impl Into<String>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::key) / [`set_key(Option<String>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::set_key):<br>required: **true**<br><p>Name of the object key.</p><br>
    8      8   
    ///   - [`version_id(impl Into<String>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::version_id) / [`set_version_id(Option<String>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::set_version_id):<br>required: **false**<br><p>The versionId of the object that the tag-set will be added to.</p><br>
    9      9   
    ///   - [`content_md5(impl Into<String>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::content_md5) / [`set_content_md5(Option<String>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::set_content_md5):<br>required: **false**<br><p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.</p><br>
   10     10   
    ///   - [`checksum_algorithm(ChecksumAlgorithm)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::checksum_algorithm) / [`set_checksum_algorithm(Option<ChecksumAlgorithm>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::set_checksum_algorithm):<br>required: **false**<br><p>Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any additional functionality if you don't use the SDK. When you send this header, there must be a corresponding <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent. Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad Request</code>. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide an individual checksum, Amazon S3 ignores any provided <code>ChecksumAlgorithm</code> parameter.</p><br>
   11     11   
    ///   - [`tagging(Tagging)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::tagging) / [`set_tagging(Option<Tagging>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::set_tagging):<br>required: **true**<br><p>Container for the <code>TagSet</code> and <code>Tag</code> elements</p><br>
   12     12   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   13         -
    ///   - [`request_payer(RequestPayer)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
          13  +
    ///   - [`request_payer(RequestPayer)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that she or he will be charged for the tagging object request. Bucket owners need not specify this parameter in their requests.</p><br>
   14     14   
    /// - On success, responds with [`PutObjectTaggingOutput`](crate::operation::put_object_tagging::PutObjectTaggingOutput) with field(s):
   15     15   
    ///   - [`version_id(Option<String>)`](crate::operation::put_object_tagging::PutObjectTaggingOutput::version_id): <p>The versionId of the object the tag-set was added to.</p>
   16     16   
    /// - On failure, responds with [`SdkError<PutObjectTaggingError>`](crate::operation::put_object_tagging::PutObjectTaggingError)
   17     17   
    pub fn put_object_tagging(&self) -> crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder {
   18     18   
        crate::operation::put_object_tagging::builders::PutObjectTaggingFluentBuilder::new(self.handle.clone())
   19     19   
    }
   20     20   
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/client/upload_part.rs

@@ -1,1 +41,41 @@
   17     17   
    ///   - [`part_number(i32)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::part_number) / [`set_part_number(Option<i32>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_part_number):<br>required: **true**<br><p>Part number of part being uploaded. This is a positive integer between 1 and 10,000.</p><br>
   18     18   
    ///   - [`upload_id(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::upload_id) / [`set_upload_id(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_upload_id):<br>required: **true**<br><p>Upload ID identifying the multipart upload whose part is being uploaded.</p><br>
   19     19   
    ///   - [`sse_customer_algorithm(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::sse_customer_algorithm) / [`set_sse_customer_algorithm(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_sse_customer_algorithm):<br>required: **false**<br><p>Specifies the algorithm to use when encrypting the object (for example, AES256).</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   20     20   
    ///   - [`sse_customer_key(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::sse_customer_key) / [`set_sse_customer_key(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_sse_customer_key):<br>required: **false**<br><p>Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the <code>x-amz-server-side-encryption-customer-algorithm header</code>. This must be the same encryption key specified in the initiate multipart upload request.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   21     21   
    ///   - [`sse_customer_key_md5(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::sse_customer_key_md5) / [`set_sse_customer_key_md5(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_sse_customer_key_md5):<br>required: **false**<br><p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   22     22   
    ///   - [`request_payer(RequestPayer)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::request_payer) / [`set_request_payer(Option<RequestPayer>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_request_payer):<br>required: **false**<br><p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note><br>
   23     23   
    ///   - [`expected_bucket_owner(impl Into<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::expected_bucket_owner) / [`set_expected_bucket_owner(Option<String>)`](crate::operation::upload_part::builders::UploadPartFluentBuilder::set_expected_bucket_owner):<br>required: **false**<br><p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p><br>
   24     24   
    /// - On success, responds with [`UploadPartOutput`](crate::operation::upload_part::UploadPartOutput) with field(s):
   25     25   
    ///   - [`server_side_encryption(Option<ServerSideEncryption>)`](crate::operation::upload_part::UploadPartOutput::server_side_encryption): <p>The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.</p><note>  <p>When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side encryption option is <code>aws:fsx</code>.</p> </note>
   26     26   
    ///   - [`e_tag(Option<String>)`](crate::operation::upload_part::UploadPartOutput::e_tag): <p>Entity tag for the uploaded object.</p>
   27         -
    ///   - [`checksum_crc32(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_crc32): <p>The Base64 encoded, 32-bit <code>CRC32 checksum</code> of the object. This checksum is only be present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          27  +
    ///   - [`checksum_crc32(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_crc32): <p>The Base64 encoded, 32-bit <code>CRC32 checksum</code> of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   28     28   
    ///   - [`checksum_crc32_c(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_crc32_c): <p>The Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   29     29   
    ///   - [`checksum_crc64_nvme(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_crc64_nvme): <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the part. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   30         -
    ///   - [`checksum_sha1(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_sha1): <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This will only be present if the object was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   31         -
    ///   - [`checksum_sha256(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_sha256): <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This will only be present if the object was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          30  +
    ///   - [`checksum_sha1(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_sha1): <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This checksum is only present if the checksum was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
          31  +
    ///   - [`checksum_sha256(Option<String>)`](crate::operation::upload_part::UploadPartOutput::checksum_sha256): <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
   32     32   
    ///   - [`sse_customer_algorithm(Option<String>)`](crate::operation::upload_part::UploadPartOutput::sse_customer_algorithm): <p>If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   33     33   
    ///   - [`sse_customer_key_md5(Option<String>)`](crate::operation::upload_part::UploadPartOutput::sse_customer_key_md5): <p>If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   34     34   
    ///   - [`ssekms_key_id(Option<String>)`](crate::operation::upload_part::UploadPartOutput::ssekms_key_id): <p>If present, indicates the ID of the KMS key that was used for object encryption.</p>
   35     35   
    ///   - [`bucket_key_enabled(Option<bool>)`](crate::operation::upload_part::UploadPartOutput::bucket_key_enabled): <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).</p>
   36     36   
    ///   - [`request_charged(Option<RequestCharged>)`](crate::operation::upload_part::UploadPartOutput::request_charged): <p>If present, indicates that the requester was successfully charged for the request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple Storage Service user guide</i>.</p><note>  <p>This functionality is not supported for directory buckets.</p> </note>
   37     37   
    /// - On failure, responds with [`SdkError<UploadPartError>`](crate::operation::upload_part::UploadPartError)
   38     38   
    pub fn upload_part(&self) -> crate::operation::upload_part::builders::UploadPartFluentBuilder {
   39     39   
        crate::operation::upload_part::builders::UploadPartFluentBuilder::new(self.handle.clone())
   40     40   
    }
   41     41   
}

tmp-codegen-diff/aws-sdk/sdk/s3/src/config/endpoint.rs

@@ -10018,10018 +10331,17166 @@
10038  10038   
            .use_s3_express_control_endpoint(false)
10039  10039   
            .disable_s3_express_session_auth(true)
10040  10040   
            .build()
10041  10041   
            .expect("invalid params");
10042  10042   
        let resolver = crate::config::endpoint::DefaultResolver::new();
10043  10043   
        let endpoint = resolver.resolve_endpoint(&params);
10044  10044   
        let error = endpoint.expect_err("expected error: Unrecognized S3Express bucket name format. [bad AP format error no session auth]");
10045  10045   
        assert_eq!(format!("{}", error), "Unrecognized S3Express bucket name format.")
10046  10046   
    }
10047  10047   
10048         -
    /// dual-stack error
10049         -
    #[test]
10050         -
    fn test_338() {
10051         -
        let params = crate::config::endpoint::Params::builder()
10052         -
            .region("us-east-1".to_string())
10053         -
            .bucket("mybucket--test-ab1--x-s3".to_string())
10054         -
            .use_fips(false)
10055         -
            .use_dual_stack(true)
10056         -
            .accelerate(false)
10057         -
            .use_s3_express_control_endpoint(false)
10058         -
            .build()
10059         -
            .expect("invalid params");
10060         -
        let resolver = crate::config::endpoint::DefaultResolver::new();
10061         -
        let endpoint = resolver.resolve_endpoint(&params);
10062         -
        let error = endpoint.expect_err("expected error: S3Express does not support Dual-stack. [dual-stack error]");
10063         -
        assert_eq!(format!("{}", error), "S3Express does not support Dual-stack.")
10064         -
    }
10065         -
10066         -
    /// dual-stack error with AP
10067         -
    #[test]
10068         -
    fn test_339() {
10069         -
        let params = crate::config::endpoint::Params::builder()
10070         -
            .region("us-east-1".to_string())
10071         -
            .bucket("myaccesspoint--test-ab1--xa-s3".to_string())
10072         -
            .use_fips(false)
10073         -
            .use_dual_stack(true)
10074         -
            .accelerate(false)
10075         -
            .use_s3_express_control_endpoint(false)
10076         -
            .build()
10077         -
            .expect("invalid params");
10078         -
        let resolver = crate::config::endpoint::DefaultResolver::new();
10079         -
        let endpoint = resolver.resolve_endpoint(&params);
10080         -
        let error = endpoint.expect_err("expected error: S3Express does not support Dual-stack. [dual-stack error with AP]");
10081         -
        assert_eq!(format!("{}", error), "S3Express does not support Dual-stack.")
10082         -
    }
10083         -
10084  10048   
    /// accelerate error
10085  10049   
    #[test]
10086         -
    fn test_340() {
       10050  +
    fn test_338() {
10087  10051   
        let params = crate::config::endpoint::Params::builder()
10088  10052   
            .region("us-east-1".to_string())
10089  10053   
            .bucket("mybucket--test-ab1--x-s3".to_string())
10090  10054   
            .use_fips(false)
10091  10055   
            .use_dual_stack(false)
10092  10056   
            .accelerate(true)
10093  10057   
            .use_s3_express_control_endpoint(false)
10094  10058   
            .build()
10095  10059   
            .expect("invalid params");
10096  10060   
        let resolver = crate::config::endpoint::DefaultResolver::new();
10097  10061   
        let endpoint = resolver.resolve_endpoint(&params);
10098  10062   
        let error = endpoint.expect_err("expected error: S3Express does not support S3 Accelerate. [accelerate error]");
10099  10063   
        assert_eq!(format!("{}", error), "S3Express does not support S3 Accelerate.")
10100  10064   
    }
10101  10065   
10102  10066   
    /// accelerate error with AP
10103  10067   
    #[test]
10104         -
    fn test_341() {
       10068  +
    fn test_339() {
10105  10069   
        let params = crate::config::endpoint::Params::builder()
10106  10070   
            .region("us-east-1".to_string())
10107  10071   
            .bucket("myaccesspoint--test-ab1--xa-s3".to_string())
10108  10072   
            .use_fips(false)
10109  10073   
            .use_dual_stack(false)
10110  10074   
            .accelerate(true)
10111  10075   
            .use_s3_express_control_endpoint(false)
10112  10076   
            .build()
10113  10077   
            .expect("invalid params");
10114  10078   
        let resolver = crate::config::endpoint::DefaultResolver::new();
10115  10079   
        let endpoint = resolver.resolve_endpoint(&params);
10116  10080   
        let error = endpoint.expect_err("expected error: S3Express does not support S3 Accelerate. [accelerate error with AP]");
10117  10081   
        assert_eq!(format!("{}", error), "S3Express does not support S3 Accelerate.")
10118  10082   
    }
10119  10083   
10120  10084   
    /// Data plane bucket format error
10121  10085   
    #[test]
10122         -
    fn test_342() {
       10086  +
    fn test_340() {
10123  10087   
        let params = crate::config::endpoint::Params::builder()
10124  10088   
            .region("us-east-1".to_string())
10125  10089   
            .bucket("my.bucket--test-ab1--x-s3".to_string())
10126  10090   
            .use_fips(false)
10127  10091   
            .use_dual_stack(false)
10128  10092   
            .accelerate(false)
10129  10093   
            .use_s3_express_control_endpoint(false)
10130  10094   
            .build()
10131  10095   
            .expect("invalid params");
10132  10096   
        let resolver = crate::config::endpoint::DefaultResolver::new();
10133  10097   
        let endpoint = resolver.resolve_endpoint(&params);
10134  10098   
        let error =
10135  10099   
            endpoint.expect_err("expected error: S3Express bucket name is not a valid virtual hostable name. [Data plane bucket format error]");
10136  10100   
        assert_eq!(format!("{}", error), "S3Express bucket name is not a valid virtual hostable name.")
10137  10101   
    }
10138  10102   
10139  10103   
    /// Data plane AP format error
10140  10104   
    #[test]
10141         -
    fn test_343() {
       10105  +
    fn test_341() {
10142  10106   
        let params = crate::config::endpoint::Params::builder()
10143  10107   
            .region("us-east-1".to_string())
10144  10108   
            .bucket("my.myaccesspoint--test-ab1--xa-s3".to_string())
10145  10109   
            .use_fips(false)
10146  10110   
            .use_dual_stack(false)
10147  10111   
            .accelerate(false)
10148  10112   
            .use_s3_express_control_endpoint(false)
10149  10113   
            .build()
10150  10114   
            .expect("invalid params");
10151  10115   
        let resolver = crate::config::endpoint::DefaultResolver::new();
10152  10116   
        let endpoint = resolver.resolve_endpoint(&params);
10153  10117   
        let error = endpoint.expect_err("expected error: S3Express bucket name is not a valid virtual hostable name. [Data plane AP format error]");
10154  10118   
        assert_eq!(format!("{}", error), "S3Express bucket name is not a valid virtual hostable name.")
10155  10119   
    }
10156  10120   
10157  10121   
    /// host override data plane bucket error session auth
10158  10122   
    #[test]
10159         -
    fn test_344() {
       10123  +
    fn test_342() {
10160  10124   
        let params = crate::config::endpoint::Params::builder()
10161  10125   
            .region("us-west-2".to_string())
10162  10126   
            .bucket("my.bucket--usw2-az1--x-s3".to_string())
10163  10127   
            .use_fips(false)
10164  10128   
            .use_dual_stack(false)
10165  10129   
            .accelerate(false)
10166  10130   
            .endpoint("https://custom.com".to_string())
10167  10131   
            .build()
10168  10132   
            .expect("invalid params");
10169  10133   
        let resolver = crate::config::endpoint::DefaultResolver::new();
10170  10134   
        let endpoint = resolver.resolve_endpoint(&params);
10171  10135   
        let error = endpoint.expect_err(
10172  10136   
            "expected error: S3Express bucket name is not a valid virtual hostable name. [host override data plane bucket error session auth]",
10173  10137   
        );
10174  10138   
        assert_eq!(format!("{}", error), "S3Express bucket name is not a valid virtual hostable name.")
10175  10139   
    }
10176  10140   
10177  10141   
    /// host override data plane AP error session auth
10178  10142   
    #[test]
10179         -
    fn test_345() {
       10143  +
    fn test_343() {
10180  10144   
        let params = crate::config::endpoint::Params::builder()
10181  10145   
            .region("us-west-2".to_string())
10182  10146   
            .bucket("my.myaccesspoint--usw2-az1--xa-s3".to_string())
10183  10147   
            .use_fips(false)
10184  10148   
            .use_dual_stack(false)
10185  10149   
            .accelerate(false)
10186  10150   
            .endpoint("https://custom.com".to_string())
10187  10151   
            .build()
10188  10152   
            .expect("invalid params");
10189  10153   
        let resolver = crate::config::endpoint::DefaultResolver::new();
10190  10154   
        let endpoint = resolver.resolve_endpoint(&params);
10191  10155   
        let error = endpoint.expect_err(
10192  10156   
            "expected error: S3Express bucket name is not a valid virtual hostable name. [host override data plane AP error session auth]",
10193  10157   
        );
10194  10158   
        assert_eq!(format!("{}", error), "S3Express bucket name is not a valid virtual hostable name.")
10195  10159   
    }
10196  10160   
10197  10161   
    /// host override data plane bucket error
10198  10162   
    #[test]
10199         -
    fn test_346() {
       10163  +
    fn test_344() {
10200  10164   
        let params = crate::config::endpoint::Params::builder()
10201  10165   
            .region("us-west-2".to_string())
10202  10166   
            .bucket("my.bucket--usw2-az1--x-s3".to_string())
10203  10167   
            .use_fips(false)
10204  10168   
            .use_dual_stack(false)
10205  10169   
            .accelerate(false)
10206  10170   
            .endpoint("https://custom.com".to_string())
10207  10171   
            .disable_s3_express_session_auth(true)
10208  10172   
            .build()
10209  10173   
            .expect("invalid params");
10210  10174   
        let resolver = crate::config::endpoint::DefaultResolver::new();
10211  10175   
        let endpoint = resolver.resolve_endpoint(&params);
10212  10176   
        let error = endpoint
10213  10177   
            .expect_err("expected error: S3Express bucket name is not a valid virtual hostable name. [host override data plane bucket error]");
10214  10178   
        assert_eq!(format!("{}", error), "S3Express bucket name is not a valid virtual hostable name.")
10215  10179   
    }
10216  10180   
10217  10181   
    /// host override data plane AP error
10218  10182   
    #[test]
10219         -
    fn test_347() {
       10183  +
    fn test_345() {
10220  10184   
        let params = crate::config::endpoint::Params::builder()
10221  10185   
            .region("us-west-2".to_string())
10222  10186   
            .bucket("my.myaccesspoint--usw2-az1--xa-s3".to_string())
10223  10187   
            .use_fips(false)
10224  10188   
            .use_dual_stack(false)
10225  10189   
            .accelerate(false)
10226  10190   
            .endpoint("https://custom.com".to_string())
10227  10191   
            .disable_s3_express_session_auth(true)
10228  10192   
            .build()
10229  10193   
            .expect("invalid params");
10230  10194   
        let resolver = crate::config::endpoint::DefaultResolver::new();
10231  10195   
        let endpoint = resolver.resolve_endpoint(&params);
10232  10196   
        let error =
10233  10197   
            endpoint.expect_err("expected error: S3Express bucket name is not a valid virtual hostable name. [host override data plane AP error]");
10234  10198   
        assert_eq!(format!("{}", error), "S3Express bucket name is not a valid virtual hostable name.")
10235  10199   
    }
10236         -
}
10237         -
10238         -
/// Endpoint resolver trait specific to Amazon Simple Storage Service
10239         -
pub trait ResolveEndpoint: ::std::marker::Send + ::std::marker::Sync + ::std::fmt::Debug {
10240         -
    /// Resolve an endpoint with the given parameters
10241         -
    fn resolve_endpoint<'a>(&'a self, params: &'a crate::config::endpoint::Params) -> ::aws_smithy_runtime_api::client::endpoint::EndpointFuture<'a>;
10242  10200   
10243         -
    /// Convert this service-specific resolver into a `SharedEndpointResolver`
10244         -
    ///
10245         -
    /// The resulting resolver will downcast `EndpointResolverParams` into `crate::config::endpoint::Params`.
10246         -
    fn into_shared_resolver(self) -> ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver
10247         -
    where
10248         -
        Self: Sized + 'static,
10249         -
    {
10250         -
        ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver::new(DowncastParams(self))
       10201  +
    /// Control plane without bucket and dualstack
       10202  +
    #[test]
       10203  +
    fn test_346() {
       10204  +
        let params = crate::config::endpoint::Params::builder()
       10205  +
            .region("us-east-1".to_string())
       10206  +
            .use_fips(false)
       10207  +
            .use_dual_stack(true)
       10208  +
            .accelerate(false)
       10209  +
            .use_s3_express_control_endpoint(true)
       10210  +
            .disable_s3_express_session_auth(false)
       10211  +
            .build()
       10212  +
            .expect("invalid params");
       10213  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10214  +
        let endpoint = resolver.resolve_endpoint(&params);
       10215  +
        let endpoint = endpoint.expect("Expected valid endpoint: https://s3express-control.dualstack.us-east-1.amazonaws.com");
       10216  +
        assert_eq!(
       10217  +
            endpoint,
       10218  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10219  +
                .url("https://s3express-control.dualstack.us-east-1.amazonaws.com")
       10220  +
                .property(
       10221  +
                    "authSchemes",
       10222  +
                    vec![{
       10223  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10224  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       10225  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10226  +
                        out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
       10227  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10228  +
                        out
10251  10229   
                    }
10252         -
}
10253         -
10254         -
#[derive(Debug)]
10255         -
struct DowncastParams<T>(T);
10256         -
impl<T> ::aws_smithy_runtime_api::client::endpoint::ResolveEndpoint for DowncastParams<T>
10257         -
where
10258         -
    T: ResolveEndpoint,
10259         -
{
10260         -
    fn resolve_endpoint<'a>(
10261         -
        &'a self,
10262         -
        params: &'a ::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams,
10263         -
    ) -> ::aws_smithy_runtime_api::client::endpoint::EndpointFuture<'a> {
10264         -
        let ep = match params.get::<crate::config::endpoint::Params>() {
10265         -
            Some(params) => self.0.resolve_endpoint(params),
10266         -
            None => ::aws_smithy_runtime_api::client::endpoint::EndpointFuture::ready(Err("params of expected type was not present".into())),
10267         -
        };
10268         -
        ep
       10230  +
                    .into()]
       10231  +
                )
       10232  +
                .property("backend", "S3Express".to_string())
       10233  +
                .build()
       10234  +
        );
10269  10235   
    }
10270         -
}
10271  10236   
10272         -
/// The default endpoint resolver
10273         -
#[derive(Debug, Default)]
10274         -
pub struct DefaultResolver {
10275         -
    partition_resolver: crate::endpoint_lib::partition::PartitionResolver,
10276         -
}
       10237  +
    /// Control plane without bucket, fips and dualstack
       10238  +
    #[test]
       10239  +
    fn test_347() {
       10240  +
        let params = crate::config::endpoint::Params::builder()
       10241  +
            .region("us-east-1".to_string())
       10242  +
            .use_fips(true)
       10243  +
            .use_dual_stack(true)
       10244  +
            .accelerate(false)
       10245  +
            .use_s3_express_control_endpoint(true)
       10246  +
            .disable_s3_express_session_auth(false)
       10247  +
            .build()
       10248  +
            .expect("invalid params");
       10249  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10250  +
        let endpoint = resolver.resolve_endpoint(&params);
       10251  +
        let endpoint = endpoint.expect("Expected valid endpoint: https://s3express-control-fips.dualstack.us-east-1.amazonaws.com");
       10252  +
        assert_eq!(
       10253  +
            endpoint,
       10254  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10255  +
                .url("https://s3express-control-fips.dualstack.us-east-1.amazonaws.com")
       10256  +
                .property(
       10257  +
                    "authSchemes",
       10258  +
                    vec![{
       10259  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10260  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       10261  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10262  +
                        out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
       10263  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10264  +
                        out
       10265  +
                    }
       10266  +
                    .into()]
       10267  +
                )
       10268  +
                .property("backend", "S3Express".to_string())
       10269  +
                .build()
       10270  +
        );
       10271  +
    }
10277  10272   
10278         -
impl DefaultResolver {
10279         -
    /// Create a new endpoint resolver with default settings
10280         -
    pub fn new() -> Self {
10281         -
        Self {
10282         -
            partition_resolver: crate::endpoint_lib::DEFAULT_PARTITION_RESOLVER.clone(),
       10273  +
    /// Data Plane with short AZ and dualstack
       10274  +
    #[test]
       10275  +
    fn test_348() {
       10276  +
        let params = crate::config::endpoint::Params::builder()
       10277  +
            .region("us-west-2".to_string())
       10278  +
            .bucket("mybucket--usw2-az1--x-s3".to_string())
       10279  +
            .use_fips(false)
       10280  +
            .use_dual_stack(true)
       10281  +
            .accelerate(false)
       10282  +
            .use_s3_express_control_endpoint(false)
       10283  +
            .build()
       10284  +
            .expect("invalid params");
       10285  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10286  +
        let endpoint = resolver.resolve_endpoint(&params);
       10287  +
        let endpoint =
       10288  +
            endpoint.expect("Expected valid endpoint: https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com");
       10289  +
        assert_eq!(
       10290  +
            endpoint,
       10291  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10292  +
                .url("https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com")
       10293  +
                .property(
       10294  +
                    "authSchemes",
       10295  +
                    vec![{
       10296  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10297  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       10298  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10299  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10300  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10301  +
                        out
10283  10302   
                    }
       10303  +
                    .into()]
       10304  +
                )
       10305  +
                .property("backend", "S3Express".to_string())
       10306  +
                .build()
       10307  +
        );
10284  10308   
    }
10285  10309   
10286         -
    fn resolve_endpoint(
10287         -
        &self,
10288         -
        params: &crate::config::endpoint::Params,
10289         -
    ) -> ::std::result::Result<::aws_smithy_types::endpoint::Endpoint, ::aws_smithy_runtime_api::box_error::BoxError> {
10290         -
        let mut diagnostic_collector = crate::endpoint_lib::diagnostic::DiagnosticCollector::new();
10291         -
        Ok(
10292         -
            crate::config::endpoint::internals::resolve_endpoint(params, &mut diagnostic_collector, &self.partition_resolver)
10293         -
                .map_err(|err| err.with_source(diagnostic_collector.take_last_error()))?,
       10310  +
    /// Data Plane with short AZ and FIPS with dualstack
       10311  +
    #[test]
       10312  +
    fn test_349() {
       10313  +
        let params = crate::config::endpoint::Params::builder()
       10314  +
            .region("us-west-2".to_string())
       10315  +
            .bucket("mybucket--usw2-az1--x-s3".to_string())
       10316  +
            .use_fips(true)
       10317  +
            .use_dual_stack(true)
       10318  +
            .accelerate(false)
       10319  +
            .use_s3_express_control_endpoint(false)
       10320  +
            .build()
       10321  +
            .expect("invalid params");
       10322  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10323  +
        let endpoint = resolver.resolve_endpoint(&params);
       10324  +
        let endpoint =
       10325  +
            endpoint.expect("Expected valid endpoint: https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com");
       10326  +
        assert_eq!(
       10327  +
            endpoint,
       10328  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10329  +
                .url("https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com")
       10330  +
                .property(
       10331  +
                    "authSchemes",
       10332  +
                    vec![{
       10333  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10334  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       10335  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10336  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10337  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10338  +
                        out
       10339  +
                    }
       10340  +
                    .into()]
10294  10341   
                )
       10342  +
                .property("backend", "S3Express".to_string())
       10343  +
                .build()
       10344  +
        );
10295  10345   
    }
10296         -
}
10297  10346   
10298         -
impl crate::config::endpoint::ResolveEndpoint for DefaultResolver {
10299         -
    fn resolve_endpoint(&self, params: &crate::config::endpoint::Params) -> ::aws_smithy_runtime_api::client::endpoint::EndpointFuture<'_> {
10300         -
        ::aws_smithy_runtime_api::client::endpoint::EndpointFuture::ready(self.resolve_endpoint(params))
       10347  +
    /// Data Plane sigv4 auth with short AZ and dualstack
       10348  +
    #[test]
       10349  +
    fn test_350() {
       10350  +
        let params = crate::config::endpoint::Params::builder()
       10351  +
            .region("us-west-2".to_string())
       10352  +
            .bucket("mybucket--usw2-az1--x-s3".to_string())
       10353  +
            .use_fips(false)
       10354  +
            .use_dual_stack(true)
       10355  +
            .accelerate(false)
       10356  +
            .disable_s3_express_session_auth(true)
       10357  +
            .build()
       10358  +
            .expect("invalid params");
       10359  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10360  +
        let endpoint = resolver.resolve_endpoint(&params);
       10361  +
        let endpoint =
       10362  +
            endpoint.expect("Expected valid endpoint: https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com");
       10363  +
        assert_eq!(
       10364  +
            endpoint,
       10365  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10366  +
                .url("https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com")
       10367  +
                .property(
       10368  +
                    "authSchemes",
       10369  +
                    vec![{
       10370  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10371  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       10372  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10373  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10374  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10375  +
                        out
       10376  +
                    }
       10377  +
                    .into()]
       10378  +
                )
       10379  +
                .property("backend", "S3Express".to_string())
       10380  +
                .build()
       10381  +
        );
10301  10382   
    }
       10383  +
       10384  +
    /// Data Plane sigv4 auth with short AZ and FIPS with dualstack
       10385  +
    #[test]
       10386  +
    fn test_351() {
       10387  +
        let params = crate::config::endpoint::Params::builder()
       10388  +
            .region("us-west-2".to_string())
       10389  +
            .bucket("mybucket--usw2-az1--x-s3".to_string())
       10390  +
            .use_fips(true)
       10391  +
            .use_dual_stack(true)
       10392  +
            .accelerate(false)
       10393  +
            .disable_s3_express_session_auth(true)
       10394  +
            .build()
       10395  +
            .expect("invalid params");
       10396  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10397  +
        let endpoint = resolver.resolve_endpoint(&params);
       10398  +
        let endpoint =
       10399  +
            endpoint.expect("Expected valid endpoint: https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com");
       10400  +
        assert_eq!(
       10401  +
            endpoint,
       10402  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10403  +
                .url("https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com")
       10404  +
                .property(
       10405  +
                    "authSchemes",
       10406  +
                    vec![{
       10407  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10408  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       10409  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10410  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10411  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10412  +
                        out
       10413  +
                    }
       10414  +
                    .into()]
       10415  +
                )
       10416  +
                .property("backend", "S3Express".to_string())
       10417  +
                .build()
       10418  +
        );
       10419  +
    }
       10420  +
       10421  +
    /// Data Plane with zone and dualstack
       10422  +
    #[test]
       10423  +
    fn test_352() {
       10424  +
        let params = crate::config::endpoint::Params::builder()
       10425  +
            .region("us-west-2".to_string())
       10426  +
            .bucket("mybucket--usw2-az12--x-s3".to_string())
       10427  +
            .use_fips(false)
       10428  +
            .use_dual_stack(true)
       10429  +
            .accelerate(false)
       10430  +
            .use_s3_express_control_endpoint(false)
       10431  +
            .build()
       10432  +
            .expect("invalid params");
       10433  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10434  +
        let endpoint = resolver.resolve_endpoint(&params);
       10435  +
        let endpoint =
       10436  +
            endpoint.expect("Expected valid endpoint: https://mybucket--usw2-az12--x-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com");
       10437  +
        assert_eq!(
       10438  +
            endpoint,
       10439  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10440  +
                .url("https://mybucket--usw2-az12--x-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com")
       10441  +
                .property(
       10442  +
                    "authSchemes",
       10443  +
                    vec![{
       10444  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10445  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       10446  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10447  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10448  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10449  +
                        out
       10450  +
                    }
       10451  +
                    .into()]
       10452  +
                )
       10453  +
                .property("backend", "S3Express".to_string())
       10454  +
                .build()
       10455  +
        );
       10456  +
    }
       10457  +
       10458  +
    /// Data Plane with zone and FIPS with dualstack
       10459  +
    #[test]
       10460  +
    fn test_353() {
       10461  +
        let params = crate::config::endpoint::Params::builder()
       10462  +
            .region("us-west-2".to_string())
       10463  +
            .bucket("mybucket--usw2-az12--x-s3".to_string())
       10464  +
            .use_fips(true)
       10465  +
            .use_dual_stack(true)
       10466  +
            .accelerate(false)
       10467  +
            .use_s3_express_control_endpoint(false)
       10468  +
            .build()
       10469  +
            .expect("invalid params");
       10470  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10471  +
        let endpoint = resolver.resolve_endpoint(&params);
       10472  +
        let endpoint =
       10473  +
            endpoint.expect("Expected valid endpoint: https://mybucket--usw2-az12--x-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com");
       10474  +
        assert_eq!(
       10475  +
            endpoint,
       10476  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10477  +
                .url("https://mybucket--usw2-az12--x-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com")
       10478  +
                .property(
       10479  +
                    "authSchemes",
       10480  +
                    vec![{
       10481  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10482  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       10483  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10484  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10485  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10486  +
                        out
       10487  +
                    }
       10488  +
                    .into()]
       10489  +
                )
       10490  +
                .property("backend", "S3Express".to_string())
       10491  +
                .build()
       10492  +
        );
       10493  +
    }
       10494  +
       10495  +
    /// Data Plane sigv4 auth with zone and dualstack
       10496  +
    #[test]
       10497  +
    fn test_354() {
       10498  +
        let params = crate::config::endpoint::Params::builder()
       10499  +
            .region("us-west-2".to_string())
       10500  +
            .bucket("mybucket--usw2-az12--x-s3".to_string())
       10501  +
            .use_fips(false)
       10502  +
            .use_dual_stack(true)
       10503  +
            .accelerate(false)
       10504  +
            .disable_s3_express_session_auth(true)
       10505  +
            .build()
       10506  +
            .expect("invalid params");
       10507  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10508  +
        let endpoint = resolver.resolve_endpoint(&params);
       10509  +
        let endpoint =
       10510  +
            endpoint.expect("Expected valid endpoint: https://mybucket--usw2-az12--x-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com");
       10511  +
        assert_eq!(
       10512  +
            endpoint,
       10513  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10514  +
                .url("https://mybucket--usw2-az12--x-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com")
       10515  +
                .property(
       10516  +
                    "authSchemes",
       10517  +
                    vec![{
       10518  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10519  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       10520  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10521  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10522  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10523  +
                        out
       10524  +
                    }
       10525  +
                    .into()]
       10526  +
                )
       10527  +
                .property("backend", "S3Express".to_string())
       10528  +
                .build()
       10529  +
        );
       10530  +
    }
       10531  +
       10532  +
    /// Data Plane sigv4 auth with 9-char zone and FIPS with dualstack
       10533  +
    #[test]
       10534  +
    fn test_355() {
       10535  +
        let params = crate::config::endpoint::Params::builder()
       10536  +
            .region("us-west-2".to_string())
       10537  +
            .bucket("mybucket--usw2-az12--x-s3".to_string())
       10538  +
            .use_fips(true)
       10539  +
            .use_dual_stack(true)
       10540  +
            .accelerate(false)
       10541  +
            .disable_s3_express_session_auth(true)
       10542  +
            .build()
       10543  +
            .expect("invalid params");
       10544  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10545  +
        let endpoint = resolver.resolve_endpoint(&params);
       10546  +
        let endpoint =
       10547  +
            endpoint.expect("Expected valid endpoint: https://mybucket--usw2-az12--x-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com");
       10548  +
        assert_eq!(
       10549  +
            endpoint,
       10550  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10551  +
                .url("https://mybucket--usw2-az12--x-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com")
       10552  +
                .property(
       10553  +
                    "authSchemes",
       10554  +
                    vec![{
       10555  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10556  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       10557  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10558  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10559  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10560  +
                        out
       10561  +
                    }
       10562  +
                    .into()]
       10563  +
                )
       10564  +
                .property("backend", "S3Express".to_string())
       10565  +
                .build()
       10566  +
        );
       10567  +
    }
       10568  +
       10569  +
    /// Data Plane with 13-char zone and dualstack
       10570  +
    #[test]
       10571  +
    fn test_356() {
       10572  +
        let params = crate::config::endpoint::Params::builder()
       10573  +
            .region("us-west-2".to_string())
       10574  +
            .bucket("mybucket--test-zone-ab1--x-s3".to_string())
       10575  +
            .use_fips(false)
       10576  +
            .use_dual_stack(true)
       10577  +
            .accelerate(false)
       10578  +
            .use_s3_express_control_endpoint(false)
       10579  +
            .build()
       10580  +
            .expect("invalid params");
       10581  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10582  +
        let endpoint = resolver.resolve_endpoint(&params);
       10583  +
        let endpoint = endpoint
       10584  +
            .expect("Expected valid endpoint: https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com");
       10585  +
        assert_eq!(
       10586  +
            endpoint,
       10587  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10588  +
                .url("https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10589  +
                .property(
       10590  +
                    "authSchemes",
       10591  +
                    vec![{
       10592  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10593  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       10594  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10595  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10596  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10597  +
                        out
       10598  +
                    }
       10599  +
                    .into()]
       10600  +
                )
       10601  +
                .property("backend", "S3Express".to_string())
       10602  +
                .build()
       10603  +
        );
       10604  +
    }
       10605  +
       10606  +
    /// Data Plane with 13-char zone and FIPS with dualstack
       10607  +
    #[test]
       10608  +
    fn test_357() {
       10609  +
        let params = crate::config::endpoint::Params::builder()
       10610  +
            .region("us-west-2".to_string())
       10611  +
            .bucket("mybucket--test-zone-ab1--x-s3".to_string())
       10612  +
            .use_fips(true)
       10613  +
            .use_dual_stack(true)
       10614  +
            .accelerate(false)
       10615  +
            .use_s3_express_control_endpoint(false)
       10616  +
            .build()
       10617  +
            .expect("invalid params");
       10618  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10619  +
        let endpoint = resolver.resolve_endpoint(&params);
       10620  +
        let endpoint = endpoint
       10621  +
            .expect("Expected valid endpoint: https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com");
       10622  +
        assert_eq!(
       10623  +
            endpoint,
       10624  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10625  +
                .url("https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10626  +
                .property(
       10627  +
                    "authSchemes",
       10628  +
                    vec![{
       10629  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10630  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       10631  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10632  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10633  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10634  +
                        out
       10635  +
                    }
       10636  +
                    .into()]
       10637  +
                )
       10638  +
                .property("backend", "S3Express".to_string())
       10639  +
                .build()
       10640  +
        );
       10641  +
    }
       10642  +
       10643  +
    /// Data Plane sigv4 auth with 13-char zone and dualstack
       10644  +
    #[test]
       10645  +
    fn test_358() {
       10646  +
        let params = crate::config::endpoint::Params::builder()
       10647  +
            .region("us-west-2".to_string())
       10648  +
            .bucket("mybucket--test-zone-ab1--x-s3".to_string())
       10649  +
            .use_fips(false)
       10650  +
            .use_dual_stack(true)
       10651  +
            .accelerate(false)
       10652  +
            .disable_s3_express_session_auth(true)
       10653  +
            .build()
       10654  +
            .expect("invalid params");
       10655  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10656  +
        let endpoint = resolver.resolve_endpoint(&params);
       10657  +
        let endpoint = endpoint
       10658  +
            .expect("Expected valid endpoint: https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com");
       10659  +
        assert_eq!(
       10660  +
            endpoint,
       10661  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10662  +
                .url("https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10663  +
                .property(
       10664  +
                    "authSchemes",
       10665  +
                    vec![{
       10666  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10667  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       10668  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10669  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10670  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10671  +
                        out
       10672  +
                    }
       10673  +
                    .into()]
       10674  +
                )
       10675  +
                .property("backend", "S3Express".to_string())
       10676  +
                .build()
       10677  +
        );
       10678  +
    }
       10679  +
       10680  +
    /// Data Plane sigv4 auth with 13-char zone and FIPS with dualstack
       10681  +
    #[test]
       10682  +
    fn test_359() {
       10683  +
        let params = crate::config::endpoint::Params::builder()
       10684  +
            .region("us-west-2".to_string())
       10685  +
            .bucket("mybucket--test-zone-ab1--x-s3".to_string())
       10686  +
            .use_fips(true)
       10687  +
            .use_dual_stack(true)
       10688  +
            .accelerate(false)
       10689  +
            .disable_s3_express_session_auth(true)
       10690  +
            .build()
       10691  +
            .expect("invalid params");
       10692  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10693  +
        let endpoint = resolver.resolve_endpoint(&params);
       10694  +
        let endpoint = endpoint
       10695  +
            .expect("Expected valid endpoint: https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com");
       10696  +
        assert_eq!(
       10697  +
            endpoint,
       10698  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10699  +
                .url("https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10700  +
                .property(
       10701  +
                    "authSchemes",
       10702  +
                    vec![{
       10703  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10704  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       10705  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10706  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10707  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10708  +
                        out
       10709  +
                    }
       10710  +
                    .into()]
       10711  +
                )
       10712  +
                .property("backend", "S3Express".to_string())
       10713  +
                .build()
       10714  +
        );
       10715  +
    }
       10716  +
       10717  +
    /// Data Plane with 14-char zone and dualstack
       10718  +
    #[test]
       10719  +
    fn test_360() {
       10720  +
        let params = crate::config::endpoint::Params::builder()
       10721  +
            .region("us-west-2".to_string())
       10722  +
            .bucket("mybucket--test1-zone-ab1--x-s3".to_string())
       10723  +
            .use_fips(false)
       10724  +
            .use_dual_stack(true)
       10725  +
            .accelerate(false)
       10726  +
            .use_s3_express_control_endpoint(false)
       10727  +
            .build()
       10728  +
            .expect("invalid params");
       10729  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10730  +
        let endpoint = resolver.resolve_endpoint(&params);
       10731  +
        let endpoint = endpoint
       10732  +
            .expect("Expected valid endpoint: https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com");
       10733  +
        assert_eq!(
       10734  +
            endpoint,
       10735  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10736  +
                .url("https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10737  +
                .property(
       10738  +
                    "authSchemes",
       10739  +
                    vec![{
       10740  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10741  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       10742  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10743  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10744  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10745  +
                        out
       10746  +
                    }
       10747  +
                    .into()]
       10748  +
                )
       10749  +
                .property("backend", "S3Express".to_string())
       10750  +
                .build()
       10751  +
        );
       10752  +
    }
       10753  +
       10754  +
    /// Data Plane with 14-char zone and FIPS with dualstack
       10755  +
    #[test]
       10756  +
    fn test_361() {
       10757  +
        let params = crate::config::endpoint::Params::builder()
       10758  +
            .region("us-west-2".to_string())
       10759  +
            .bucket("mybucket--test1-zone-ab1--x-s3".to_string())
       10760  +
            .use_fips(true)
       10761  +
            .use_dual_stack(true)
       10762  +
            .accelerate(false)
       10763  +
            .use_s3_express_control_endpoint(false)
       10764  +
            .build()
       10765  +
            .expect("invalid params");
       10766  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10767  +
        let endpoint = resolver.resolve_endpoint(&params);
       10768  +
        let endpoint = endpoint.expect(
       10769  +
            "Expected valid endpoint: https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com",
       10770  +
        );
       10771  +
        assert_eq!(
       10772  +
            endpoint,
       10773  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10774  +
                .url("https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10775  +
                .property(
       10776  +
                    "authSchemes",
       10777  +
                    vec![{
       10778  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10779  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       10780  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10781  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10782  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10783  +
                        out
       10784  +
                    }
       10785  +
                    .into()]
       10786  +
                )
       10787  +
                .property("backend", "S3Express".to_string())
       10788  +
                .build()
       10789  +
        );
       10790  +
    }
       10791  +
       10792  +
    /// Data Plane sigv4 auth with 14-char zone and dualstack
       10793  +
    #[test]
       10794  +
    fn test_362() {
       10795  +
        let params = crate::config::endpoint::Params::builder()
       10796  +
            .region("us-west-2".to_string())
       10797  +
            .bucket("mybucket--test1-zone-ab1--x-s3".to_string())
       10798  +
            .use_fips(false)
       10799  +
            .use_dual_stack(true)
       10800  +
            .accelerate(false)
       10801  +
            .disable_s3_express_session_auth(true)
       10802  +
            .build()
       10803  +
            .expect("invalid params");
       10804  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10805  +
        let endpoint = resolver.resolve_endpoint(&params);
       10806  +
        let endpoint = endpoint
       10807  +
            .expect("Expected valid endpoint: https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com");
       10808  +
        assert_eq!(
       10809  +
            endpoint,
       10810  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10811  +
                .url("https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10812  +
                .property(
       10813  +
                    "authSchemes",
       10814  +
                    vec![{
       10815  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10816  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       10817  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10818  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10819  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10820  +
                        out
       10821  +
                    }
       10822  +
                    .into()]
       10823  +
                )
       10824  +
                .property("backend", "S3Express".to_string())
       10825  +
                .build()
       10826  +
        );
       10827  +
    }
       10828  +
       10829  +
    /// Data Plane sigv4 auth with 14-char zone and FIPS with dualstack
       10830  +
    #[test]
       10831  +
    fn test_363() {
       10832  +
        let params = crate::config::endpoint::Params::builder()
       10833  +
            .region("us-west-2".to_string())
       10834  +
            .bucket("mybucket--test1-zone-ab1--x-s3".to_string())
       10835  +
            .use_fips(true)
       10836  +
            .use_dual_stack(true)
       10837  +
            .accelerate(false)
       10838  +
            .disable_s3_express_session_auth(true)
       10839  +
            .build()
       10840  +
            .expect("invalid params");
       10841  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10842  +
        let endpoint = resolver.resolve_endpoint(&params);
       10843  +
        let endpoint = endpoint.expect(
       10844  +
            "Expected valid endpoint: https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com",
       10845  +
        );
       10846  +
        assert_eq!(
       10847  +
            endpoint,
       10848  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10849  +
                .url("https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10850  +
                .property(
       10851  +
                    "authSchemes",
       10852  +
                    vec![{
       10853  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10854  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       10855  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10856  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10857  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10858  +
                        out
       10859  +
                    }
       10860  +
                    .into()]
       10861  +
                )
       10862  +
                .property("backend", "S3Express".to_string())
       10863  +
                .build()
       10864  +
        );
       10865  +
    }
       10866  +
       10867  +
    /// Data Plane with long zone (20 cha) and dualstack
       10868  +
    #[test]
       10869  +
    fn test_364() {
       10870  +
        let params = crate::config::endpoint::Params::builder()
       10871  +
            .region("us-west-2".to_string())
       10872  +
            .bucket("mybucket--test1-long1-zone-ab1--x-s3".to_string())
       10873  +
            .use_fips(false)
       10874  +
            .use_dual_stack(true)
       10875  +
            .accelerate(false)
       10876  +
            .use_s3_express_control_endpoint(false)
       10877  +
            .build()
       10878  +
            .expect("invalid params");
       10879  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10880  +
        let endpoint = resolver.resolve_endpoint(&params);
       10881  +
        let endpoint = endpoint.expect(
       10882  +
            "Expected valid endpoint: https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com",
       10883  +
        );
       10884  +
        assert_eq!(
       10885  +
            endpoint,
       10886  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10887  +
                .url("https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10888  +
                .property(
       10889  +
                    "authSchemes",
       10890  +
                    vec![{
       10891  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10892  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       10893  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10894  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10895  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10896  +
                        out
       10897  +
                    }
       10898  +
                    .into()]
       10899  +
                )
       10900  +
                .property("backend", "S3Express".to_string())
       10901  +
                .build()
       10902  +
        );
       10903  +
    }
       10904  +
       10905  +
    /// Data Plane with long zone (20 char) and FIPS with dualstack
       10906  +
    #[test]
       10907  +
    fn test_365() {
       10908  +
        let params = crate::config::endpoint::Params::builder()
       10909  +
            .region("us-west-2".to_string())
       10910  +
            .bucket("mybucket--test1-long1-zone-ab1--x-s3".to_string())
       10911  +
            .use_fips(true)
       10912  +
            .use_dual_stack(true)
       10913  +
            .accelerate(false)
       10914  +
            .use_s3_express_control_endpoint(false)
       10915  +
            .build()
       10916  +
            .expect("invalid params");
       10917  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10918  +
        let endpoint = resolver.resolve_endpoint(&params);
       10919  +
        let endpoint = endpoint.expect("Expected valid endpoint: https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com");
       10920  +
        assert_eq!(
       10921  +
            endpoint,
       10922  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10923  +
                .url("https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10924  +
                .property(
       10925  +
                    "authSchemes",
       10926  +
                    vec![{
       10927  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10928  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       10929  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10930  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10931  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10932  +
                        out
       10933  +
                    }
       10934  +
                    .into()]
       10935  +
                )
       10936  +
                .property("backend", "S3Express".to_string())
       10937  +
                .build()
       10938  +
        );
       10939  +
    }
       10940  +
       10941  +
    /// Data Plane sigv4 auth with long zone (20 char) and dualstack
       10942  +
    #[test]
       10943  +
    fn test_366() {
       10944  +
        let params = crate::config::endpoint::Params::builder()
       10945  +
            .region("us-west-2".to_string())
       10946  +
            .bucket("mybucket--test1-long1-zone-ab1--x-s3".to_string())
       10947  +
            .use_fips(false)
       10948  +
            .use_dual_stack(true)
       10949  +
            .accelerate(false)
       10950  +
            .disable_s3_express_session_auth(true)
       10951  +
            .build()
       10952  +
            .expect("invalid params");
       10953  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10954  +
        let endpoint = resolver.resolve_endpoint(&params);
       10955  +
        let endpoint = endpoint.expect(
       10956  +
            "Expected valid endpoint: https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com",
       10957  +
        );
       10958  +
        assert_eq!(
       10959  +
            endpoint,
       10960  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10961  +
                .url("https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10962  +
                .property(
       10963  +
                    "authSchemes",
       10964  +
                    vec![{
       10965  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       10966  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       10967  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       10968  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       10969  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       10970  +
                        out
       10971  +
                    }
       10972  +
                    .into()]
       10973  +
                )
       10974  +
                .property("backend", "S3Express".to_string())
       10975  +
                .build()
       10976  +
        );
       10977  +
    }
       10978  +
       10979  +
    /// Data Plane sigv4 auth with long zone (20 char) and FIPS with dualstack
       10980  +
    #[test]
       10981  +
    fn test_367() {
       10982  +
        let params = crate::config::endpoint::Params::builder()
       10983  +
            .region("us-west-2".to_string())
       10984  +
            .bucket("mybucket--test1-long1-zone-ab1--x-s3".to_string())
       10985  +
            .use_fips(true)
       10986  +
            .use_dual_stack(true)
       10987  +
            .accelerate(false)
       10988  +
            .disable_s3_express_session_auth(true)
       10989  +
            .build()
       10990  +
            .expect("invalid params");
       10991  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       10992  +
        let endpoint = resolver.resolve_endpoint(&params);
       10993  +
        let endpoint = endpoint.expect("Expected valid endpoint: https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com");
       10994  +
        assert_eq!(
       10995  +
            endpoint,
       10996  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       10997  +
                .url("https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       10998  +
                .property(
       10999  +
                    "authSchemes",
       11000  +
                    vec![{
       11001  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11002  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11003  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11004  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11005  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11006  +
                        out
       11007  +
                    }
       11008  +
                    .into()]
       11009  +
                )
       11010  +
                .property("backend", "S3Express".to_string())
       11011  +
                .build()
       11012  +
        );
       11013  +
    }
       11014  +
       11015  +
    /// Control plane and FIPS with dualstack
       11016  +
    #[test]
       11017  +
    fn test_368() {
       11018  +
        let params = crate::config::endpoint::Params::builder()
       11019  +
            .region("us-east-1".to_string())
       11020  +
            .bucket("mybucket--test-ab1--x-s3".to_string())
       11021  +
            .use_fips(true)
       11022  +
            .use_dual_stack(true)
       11023  +
            .accelerate(false)
       11024  +
            .use_s3_express_control_endpoint(true)
       11025  +
            .build()
       11026  +
            .expect("invalid params");
       11027  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11028  +
        let endpoint = resolver.resolve_endpoint(&params);
       11029  +
        let endpoint =
       11030  +
            endpoint.expect("Expected valid endpoint: https://s3express-control-fips.dualstack.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3");
       11031  +
        assert_eq!(
       11032  +
            endpoint,
       11033  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11034  +
                .url("https://s3express-control-fips.dualstack.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3")
       11035  +
                .property(
       11036  +
                    "authSchemes",
       11037  +
                    vec![{
       11038  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11039  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11040  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11041  +
                        out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
       11042  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11043  +
                        out
       11044  +
                    }
       11045  +
                    .into()]
       11046  +
                )
       11047  +
                .property("backend", "S3Express".to_string())
       11048  +
                .build()
       11049  +
        );
       11050  +
    }
       11051  +
       11052  +
    /// Data plane with zone and dualstack and AP
       11053  +
    #[test]
       11054  +
    fn test_369() {
       11055  +
        let params = crate::config::endpoint::Params::builder()
       11056  +
            .region("us-west-2".to_string())
       11057  +
            .bucket("myaccesspoint--usw2-az1--xa-s3".to_string())
       11058  +
            .use_fips(false)
       11059  +
            .use_dual_stack(true)
       11060  +
            .accelerate(false)
       11061  +
            .use_s3_express_control_endpoint(false)
       11062  +
            .build()
       11063  +
            .expect("invalid params");
       11064  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11065  +
        let endpoint = resolver.resolve_endpoint(&params);
       11066  +
        let endpoint =
       11067  +
            endpoint.expect("Expected valid endpoint: https://myaccesspoint--usw2-az1--xa-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com");
       11068  +
        assert_eq!(
       11069  +
            endpoint,
       11070  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11071  +
                .url("https://myaccesspoint--usw2-az1--xa-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com")
       11072  +
                .property(
       11073  +
                    "authSchemes",
       11074  +
                    vec![{
       11075  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11076  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       11077  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11078  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11079  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11080  +
                        out
       11081  +
                    }
       11082  +
                    .into()]
       11083  +
                )
       11084  +
                .property("backend", "S3Express".to_string())
       11085  +
                .build()
       11086  +
        );
       11087  +
    }
       11088  +
       11089  +
    /// Data plane with zone and FIPS with dualstack and AP
       11090  +
    #[test]
       11091  +
    fn test_370() {
       11092  +
        let params = crate::config::endpoint::Params::builder()
       11093  +
            .region("us-west-2".to_string())
       11094  +
            .bucket("myaccesspoint--usw2-az1--xa-s3".to_string())
       11095  +
            .use_fips(true)
       11096  +
            .use_dual_stack(true)
       11097  +
            .accelerate(false)
       11098  +
            .use_s3_express_control_endpoint(false)
       11099  +
            .build()
       11100  +
            .expect("invalid params");
       11101  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11102  +
        let endpoint = resolver.resolve_endpoint(&params);
       11103  +
        let endpoint = endpoint
       11104  +
            .expect("Expected valid endpoint: https://myaccesspoint--usw2-az1--xa-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com");
       11105  +
        assert_eq!(
       11106  +
            endpoint,
       11107  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11108  +
                .url("https://myaccesspoint--usw2-az1--xa-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com")
       11109  +
                .property(
       11110  +
                    "authSchemes",
       11111  +
                    vec![{
       11112  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11113  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       11114  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11115  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11116  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11117  +
                        out
       11118  +
                    }
       11119  +
                    .into()]
       11120  +
                )
       11121  +
                .property("backend", "S3Express".to_string())
       11122  +
                .build()
       11123  +
        );
       11124  +
    }
       11125  +
       11126  +
    /// Data Plane sigv4 auth with zone and dualstack and AP
       11127  +
    #[test]
       11128  +
    fn test_371() {
       11129  +
        let params = crate::config::endpoint::Params::builder()
       11130  +
            .region("us-west-2".to_string())
       11131  +
            .bucket("myaccesspoint--usw2-az1--xa-s3".to_string())
       11132  +
            .use_fips(false)
       11133  +
            .use_dual_stack(true)
       11134  +
            .accelerate(false)
       11135  +
            .disable_s3_express_session_auth(true)
       11136  +
            .build()
       11137  +
            .expect("invalid params");
       11138  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11139  +
        let endpoint = resolver.resolve_endpoint(&params);
       11140  +
        let endpoint =
       11141  +
            endpoint.expect("Expected valid endpoint: https://myaccesspoint--usw2-az1--xa-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com");
       11142  +
        assert_eq!(
       11143  +
            endpoint,
       11144  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11145  +
                .url("https://myaccesspoint--usw2-az1--xa-s3.s3express-usw2-az1.dualstack.us-west-2.amazonaws.com")
       11146  +
                .property(
       11147  +
                    "authSchemes",
       11148  +
                    vec![{
       11149  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11150  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11151  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11152  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11153  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11154  +
                        out
       11155  +
                    }
       11156  +
                    .into()]
       11157  +
                )
       11158  +
                .property("backend", "S3Express".to_string())
       11159  +
                .build()
       11160  +
        );
       11161  +
    }
       11162  +
       11163  +
    /// Data Plane AP sigv4 auth with zone and FIPS with dualstack
       11164  +
    #[test]
       11165  +
    fn test_372() {
       11166  +
        let params = crate::config::endpoint::Params::builder()
       11167  +
            .region("us-west-2".to_string())
       11168  +
            .bucket("myaccesspoint--usw2-az1--xa-s3".to_string())
       11169  +
            .use_fips(true)
       11170  +
            .use_dual_stack(true)
       11171  +
            .accelerate(false)
       11172  +
            .disable_s3_express_session_auth(true)
       11173  +
            .build()
       11174  +
            .expect("invalid params");
       11175  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11176  +
        let endpoint = resolver.resolve_endpoint(&params);
       11177  +
        let endpoint = endpoint
       11178  +
            .expect("Expected valid endpoint: https://myaccesspoint--usw2-az1--xa-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com");
       11179  +
        assert_eq!(
       11180  +
            endpoint,
       11181  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11182  +
                .url("https://myaccesspoint--usw2-az1--xa-s3.s3express-fips-usw2-az1.dualstack.us-west-2.amazonaws.com")
       11183  +
                .property(
       11184  +
                    "authSchemes",
       11185  +
                    vec![{
       11186  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11187  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11188  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11189  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11190  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11191  +
                        out
       11192  +
                    }
       11193  +
                    .into()]
       11194  +
                )
       11195  +
                .property("backend", "S3Express".to_string())
       11196  +
                .build()
       11197  +
        );
       11198  +
    }
       11199  +
       11200  +
    /// Data Plane with zone (9 char) and AP with dualstack
       11201  +
    #[test]
       11202  +
    fn test_373() {
       11203  +
        let params = crate::config::endpoint::Params::builder()
       11204  +
            .region("us-west-2".to_string())
       11205  +
            .bucket("myaccesspoint--usw2-az12--xa-s3".to_string())
       11206  +
            .use_fips(false)
       11207  +
            .use_dual_stack(true)
       11208  +
            .accelerate(false)
       11209  +
            .use_s3_express_control_endpoint(false)
       11210  +
            .build()
       11211  +
            .expect("invalid params");
       11212  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11213  +
        let endpoint = resolver.resolve_endpoint(&params);
       11214  +
        let endpoint =
       11215  +
            endpoint.expect("Expected valid endpoint: https://myaccesspoint--usw2-az12--xa-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com");
       11216  +
        assert_eq!(
       11217  +
            endpoint,
       11218  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11219  +
                .url("https://myaccesspoint--usw2-az12--xa-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com")
       11220  +
                .property(
       11221  +
                    "authSchemes",
       11222  +
                    vec![{
       11223  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11224  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       11225  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11226  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11227  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11228  +
                        out
       11229  +
                    }
       11230  +
                    .into()]
       11231  +
                )
       11232  +
                .property("backend", "S3Express".to_string())
       11233  +
                .build()
       11234  +
        );
       11235  +
    }
       11236  +
       11237  +
    /// Data Plane with zone (9 char) and FIPS with AP and dualstack
       11238  +
    #[test]
       11239  +
    fn test_374() {
       11240  +
        let params = crate::config::endpoint::Params::builder()
       11241  +
            .region("us-west-2".to_string())
       11242  +
            .bucket("myaccesspoint--usw2-az12--xa-s3".to_string())
       11243  +
            .use_fips(true)
       11244  +
            .use_dual_stack(true)
       11245  +
            .accelerate(false)
       11246  +
            .use_s3_express_control_endpoint(false)
       11247  +
            .build()
       11248  +
            .expect("invalid params");
       11249  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11250  +
        let endpoint = resolver.resolve_endpoint(&params);
       11251  +
        let endpoint = endpoint
       11252  +
            .expect("Expected valid endpoint: https://myaccesspoint--usw2-az12--xa-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com");
       11253  +
        assert_eq!(
       11254  +
            endpoint,
       11255  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11256  +
                .url("https://myaccesspoint--usw2-az12--xa-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com")
       11257  +
                .property(
       11258  +
                    "authSchemes",
       11259  +
                    vec![{
       11260  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11261  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       11262  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11263  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11264  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11265  +
                        out
       11266  +
                    }
       11267  +
                    .into()]
       11268  +
                )
       11269  +
                .property("backend", "S3Express".to_string())
       11270  +
                .build()
       11271  +
        );
       11272  +
    }
       11273  +
       11274  +
    /// Data Plane sigv4 auth with (9 char) zone and dualstack with AP
       11275  +
    #[test]
       11276  +
    fn test_375() {
       11277  +
        let params = crate::config::endpoint::Params::builder()
       11278  +
            .region("us-west-2".to_string())
       11279  +
            .bucket("myaccesspoint--usw2-az12--xa-s3".to_string())
       11280  +
            .use_fips(false)
       11281  +
            .use_dual_stack(true)
       11282  +
            .accelerate(false)
       11283  +
            .disable_s3_express_session_auth(true)
       11284  +
            .build()
       11285  +
            .expect("invalid params");
       11286  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11287  +
        let endpoint = resolver.resolve_endpoint(&params);
       11288  +
        let endpoint =
       11289  +
            endpoint.expect("Expected valid endpoint: https://myaccesspoint--usw2-az12--xa-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com");
       11290  +
        assert_eq!(
       11291  +
            endpoint,
       11292  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11293  +
                .url("https://myaccesspoint--usw2-az12--xa-s3.s3express-usw2-az12.dualstack.us-west-2.amazonaws.com")
       11294  +
                .property(
       11295  +
                    "authSchemes",
       11296  +
                    vec![{
       11297  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11298  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11299  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11300  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11301  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11302  +
                        out
       11303  +
                    }
       11304  +
                    .into()]
       11305  +
                )
       11306  +
                .property("backend", "S3Express".to_string())
       11307  +
                .build()
       11308  +
        );
       11309  +
    }
       11310  +
       11311  +
    /// Access Point sigv4 auth with (9 char) zone and FIPS with dualstack
       11312  +
    #[test]
       11313  +
    fn test_376() {
       11314  +
        let params = crate::config::endpoint::Params::builder()
       11315  +
            .region("us-west-2".to_string())
       11316  +
            .bucket("myaccesspoint--usw2-az12--xa-s3".to_string())
       11317  +
            .use_fips(true)
       11318  +
            .use_dual_stack(true)
       11319  +
            .accelerate(false)
       11320  +
            .disable_s3_express_session_auth(true)
       11321  +
            .build()
       11322  +
            .expect("invalid params");
       11323  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11324  +
        let endpoint = resolver.resolve_endpoint(&params);
       11325  +
        let endpoint = endpoint
       11326  +
            .expect("Expected valid endpoint: https://myaccesspoint--usw2-az12--xa-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com");
       11327  +
        assert_eq!(
       11328  +
            endpoint,
       11329  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11330  +
                .url("https://myaccesspoint--usw2-az12--xa-s3.s3express-fips-usw2-az12.dualstack.us-west-2.amazonaws.com")
       11331  +
                .property(
       11332  +
                    "authSchemes",
       11333  +
                    vec![{
       11334  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11335  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11336  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11337  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11338  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11339  +
                        out
       11340  +
                    }
       11341  +
                    .into()]
       11342  +
                )
       11343  +
                .property("backend", "S3Express".to_string())
       11344  +
                .build()
       11345  +
        );
       11346  +
    }
       11347  +
       11348  +
    /// Data Plane with zone (13 char) and AP with dualstack
       11349  +
    #[test]
       11350  +
    fn test_377() {
       11351  +
        let params = crate::config::endpoint::Params::builder()
       11352  +
            .region("us-west-2".to_string())
       11353  +
            .bucket("myaccesspoint--test-zone-ab1--xa-s3".to_string())
       11354  +
            .use_fips(false)
       11355  +
            .use_dual_stack(true)
       11356  +
            .accelerate(false)
       11357  +
            .use_s3_express_control_endpoint(false)
       11358  +
            .build()
       11359  +
            .expect("invalid params");
       11360  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11361  +
        let endpoint = resolver.resolve_endpoint(&params);
       11362  +
        let endpoint = endpoint
       11363  +
            .expect("Expected valid endpoint: https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com");
       11364  +
        assert_eq!(
       11365  +
            endpoint,
       11366  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11367  +
                .url("https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11368  +
                .property(
       11369  +
                    "authSchemes",
       11370  +
                    vec![{
       11371  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11372  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       11373  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11374  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11375  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11376  +
                        out
       11377  +
                    }
       11378  +
                    .into()]
       11379  +
                )
       11380  +
                .property("backend", "S3Express".to_string())
       11381  +
                .build()
       11382  +
        );
       11383  +
    }
       11384  +
       11385  +
    /// Data Plane with zone (13 char) and AP with FIPS and dualstack
       11386  +
    #[test]
       11387  +
    fn test_378() {
       11388  +
        let params = crate::config::endpoint::Params::builder()
       11389  +
            .region("us-west-2".to_string())
       11390  +
            .bucket("myaccesspoint--test-zone-ab1--xa-s3".to_string())
       11391  +
            .use_fips(true)
       11392  +
            .use_dual_stack(true)
       11393  +
            .accelerate(false)
       11394  +
            .use_s3_express_control_endpoint(false)
       11395  +
            .build()
       11396  +
            .expect("invalid params");
       11397  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11398  +
        let endpoint = resolver.resolve_endpoint(&params);
       11399  +
        let endpoint = endpoint.expect(
       11400  +
            "Expected valid endpoint: https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com",
       11401  +
        );
       11402  +
        assert_eq!(
       11403  +
            endpoint,
       11404  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11405  +
                .url("https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11406  +
                .property(
       11407  +
                    "authSchemes",
       11408  +
                    vec![{
       11409  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11410  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       11411  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11412  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11413  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11414  +
                        out
       11415  +
                    }
       11416  +
                    .into()]
       11417  +
                )
       11418  +
                .property("backend", "S3Express".to_string())
       11419  +
                .build()
       11420  +
        );
       11421  +
    }
       11422  +
       11423  +
    /// Data Plane sigv4 auth with (13 char) zone with AP and dualstack
       11424  +
    #[test]
       11425  +
    fn test_379() {
       11426  +
        let params = crate::config::endpoint::Params::builder()
       11427  +
            .region("us-west-2".to_string())
       11428  +
            .bucket("myaccesspoint--test-zone-ab1--xa-s3".to_string())
       11429  +
            .use_fips(false)
       11430  +
            .use_dual_stack(true)
       11431  +
            .accelerate(false)
       11432  +
            .disable_s3_express_session_auth(true)
       11433  +
            .build()
       11434  +
            .expect("invalid params");
       11435  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11436  +
        let endpoint = resolver.resolve_endpoint(&params);
       11437  +
        let endpoint = endpoint
       11438  +
            .expect("Expected valid endpoint: https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com");
       11439  +
        assert_eq!(
       11440  +
            endpoint,
       11441  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11442  +
                .url("https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11443  +
                .property(
       11444  +
                    "authSchemes",
       11445  +
                    vec![{
       11446  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11447  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11448  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11449  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11450  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11451  +
                        out
       11452  +
                    }
       11453  +
                    .into()]
       11454  +
                )
       11455  +
                .property("backend", "S3Express".to_string())
       11456  +
                .build()
       11457  +
        );
       11458  +
    }
       11459  +
       11460  +
    /// Data Plane sigv4 auth with (13 char) zone with AP and FIPS and dualstack
       11461  +
    #[test]
       11462  +
    fn test_380() {
       11463  +
        let params = crate::config::endpoint::Params::builder()
       11464  +
            .region("us-west-2".to_string())
       11465  +
            .bucket("myaccesspoint--test-zone-ab1--xa-s3".to_string())
       11466  +
            .use_fips(true)
       11467  +
            .use_dual_stack(true)
       11468  +
            .accelerate(false)
       11469  +
            .disable_s3_express_session_auth(true)
       11470  +
            .build()
       11471  +
            .expect("invalid params");
       11472  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11473  +
        let endpoint = resolver.resolve_endpoint(&params);
       11474  +
        let endpoint = endpoint.expect(
       11475  +
            "Expected valid endpoint: https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com",
       11476  +
        );
       11477  +
        assert_eq!(
       11478  +
            endpoint,
       11479  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11480  +
                .url("https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11481  +
                .property(
       11482  +
                    "authSchemes",
       11483  +
                    vec![{
       11484  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11485  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11486  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11487  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11488  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11489  +
                        out
       11490  +
                    }
       11491  +
                    .into()]
       11492  +
                )
       11493  +
                .property("backend", "S3Express".to_string())
       11494  +
                .build()
       11495  +
        );
       11496  +
    }
       11497  +
       11498  +
    /// Data Plane with (14 char) zone and AP with dualstack
       11499  +
    #[test]
       11500  +
    fn test_381() {
       11501  +
        let params = crate::config::endpoint::Params::builder()
       11502  +
            .region("us-west-2".to_string())
       11503  +
            .bucket("myaccesspoint--test1-zone-ab1--xa-s3".to_string())
       11504  +
            .use_fips(false)
       11505  +
            .use_dual_stack(true)
       11506  +
            .accelerate(false)
       11507  +
            .use_s3_express_control_endpoint(false)
       11508  +
            .build()
       11509  +
            .expect("invalid params");
       11510  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11511  +
        let endpoint = resolver.resolve_endpoint(&params);
       11512  +
        let endpoint = endpoint.expect(
       11513  +
            "Expected valid endpoint: https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com",
       11514  +
        );
       11515  +
        assert_eq!(
       11516  +
            endpoint,
       11517  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11518  +
                .url("https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11519  +
                .property(
       11520  +
                    "authSchemes",
       11521  +
                    vec![{
       11522  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11523  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       11524  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11525  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11526  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11527  +
                        out
       11528  +
                    }
       11529  +
                    .into()]
       11530  +
                )
       11531  +
                .property("backend", "S3Express".to_string())
       11532  +
                .build()
       11533  +
        );
       11534  +
    }
       11535  +
       11536  +
    /// Data Plane with (14 char) zone and AP with FIPS and dualstack
       11537  +
    #[test]
       11538  +
    fn test_382() {
       11539  +
        let params = crate::config::endpoint::Params::builder()
       11540  +
            .region("us-west-2".to_string())
       11541  +
            .bucket("myaccesspoint--test1-zone-ab1--xa-s3".to_string())
       11542  +
            .use_fips(true)
       11543  +
            .use_dual_stack(true)
       11544  +
            .accelerate(false)
       11545  +
            .use_s3_express_control_endpoint(false)
       11546  +
            .build()
       11547  +
            .expect("invalid params");
       11548  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11549  +
        let endpoint = resolver.resolve_endpoint(&params);
       11550  +
        let endpoint = endpoint.expect(
       11551  +
            "Expected valid endpoint: https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com",
       11552  +
        );
       11553  +
        assert_eq!(
       11554  +
            endpoint,
       11555  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11556  +
                .url("https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11557  +
                .property(
       11558  +
                    "authSchemes",
       11559  +
                    vec![{
       11560  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11561  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       11562  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11563  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11564  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11565  +
                        out
       11566  +
                    }
       11567  +
                    .into()]
       11568  +
                )
       11569  +
                .property("backend", "S3Express".to_string())
       11570  +
                .build()
       11571  +
        );
       11572  +
    }
       11573  +
       11574  +
    /// Data Plane sigv4 auth with (14 char) zone and AP with dualstack
       11575  +
    #[test]
       11576  +
    fn test_383() {
       11577  +
        let params = crate::config::endpoint::Params::builder()
       11578  +
            .region("us-west-2".to_string())
       11579  +
            .bucket("myaccesspoint--test1-zone-ab1--xa-s3".to_string())
       11580  +
            .use_fips(false)
       11581  +
            .use_dual_stack(true)
       11582  +
            .accelerate(false)
       11583  +
            .disable_s3_express_session_auth(true)
       11584  +
            .build()
       11585  +
            .expect("invalid params");
       11586  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11587  +
        let endpoint = resolver.resolve_endpoint(&params);
       11588  +
        let endpoint = endpoint.expect(
       11589  +
            "Expected valid endpoint: https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com",
       11590  +
        );
       11591  +
        assert_eq!(
       11592  +
            endpoint,
       11593  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11594  +
                .url("https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11595  +
                .property(
       11596  +
                    "authSchemes",
       11597  +
                    vec![{
       11598  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11599  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11600  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11601  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11602  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11603  +
                        out
       11604  +
                    }
       11605  +
                    .into()]
       11606  +
                )
       11607  +
                .property("backend", "S3Express".to_string())
       11608  +
                .build()
       11609  +
        );
       11610  +
    }
       11611  +
       11612  +
    /// Data Plane with (14 char) zone and AP with FIPS and dualstack
       11613  +
    #[test]
       11614  +
    fn test_384() {
       11615  +
        let params = crate::config::endpoint::Params::builder()
       11616  +
            .region("us-west-2".to_string())
       11617  +
            .bucket("myaccesspoint--test1-zone-ab1--xa-s3".to_string())
       11618  +
            .use_fips(true)
       11619  +
            .use_dual_stack(true)
       11620  +
            .accelerate(false)
       11621  +
            .disable_s3_express_session_auth(true)
       11622  +
            .build()
       11623  +
            .expect("invalid params");
       11624  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11625  +
        let endpoint = resolver.resolve_endpoint(&params);
       11626  +
        let endpoint = endpoint.expect(
       11627  +
            "Expected valid endpoint: https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com",
       11628  +
        );
       11629  +
        assert_eq!(
       11630  +
            endpoint,
       11631  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11632  +
                .url("https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11633  +
                .property(
       11634  +
                    "authSchemes",
       11635  +
                    vec![{
       11636  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11637  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11638  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11639  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11640  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11641  +
                        out
       11642  +
                    }
       11643  +
                    .into()]
       11644  +
                )
       11645  +
                .property("backend", "S3Express".to_string())
       11646  +
                .build()
       11647  +
        );
       11648  +
    }
       11649  +
       11650  +
    /// Data Plane with (20 char) zone and AP with dualstack
       11651  +
    #[test]
       11652  +
    fn test_385() {
       11653  +
        let params = crate::config::endpoint::Params::builder()
       11654  +
            .region("us-west-2".to_string())
       11655  +
            .bucket("myaccesspoint--test1-long1-zone-ab1--xa-s3".to_string())
       11656  +
            .use_fips(false)
       11657  +
            .use_dual_stack(true)
       11658  +
            .accelerate(false)
       11659  +
            .use_s3_express_control_endpoint(false)
       11660  +
            .build()
       11661  +
            .expect("invalid params");
       11662  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11663  +
        let endpoint = resolver.resolve_endpoint(&params);
       11664  +
        let endpoint = endpoint.expect("Expected valid endpoint: https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com");
       11665  +
        assert_eq!(
       11666  +
            endpoint,
       11667  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11668  +
                .url("https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11669  +
                .property(
       11670  +
                    "authSchemes",
       11671  +
                    vec![{
       11672  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11673  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       11674  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11675  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11676  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11677  +
                        out
       11678  +
                    }
       11679  +
                    .into()]
       11680  +
                )
       11681  +
                .property("backend", "S3Express".to_string())
       11682  +
                .build()
       11683  +
        );
       11684  +
    }
       11685  +
       11686  +
    /// Data Plane with (20 char) zone and AP with FIPS and dualstack
       11687  +
    #[test]
       11688  +
    fn test_386() {
       11689  +
        let params = crate::config::endpoint::Params::builder()
       11690  +
            .region("us-west-2".to_string())
       11691  +
            .bucket("myaccesspoint--test1-long1-zone-ab1--xa-s3".to_string())
       11692  +
            .use_fips(true)
       11693  +
            .use_dual_stack(true)
       11694  +
            .accelerate(false)
       11695  +
            .use_s3_express_control_endpoint(false)
       11696  +
            .build()
       11697  +
            .expect("invalid params");
       11698  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11699  +
        let endpoint = resolver.resolve_endpoint(&params);
       11700  +
        let endpoint = endpoint.expect("Expected valid endpoint: https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com");
       11701  +
        assert_eq!(
       11702  +
            endpoint,
       11703  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11704  +
                .url("https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11705  +
                .property(
       11706  +
                    "authSchemes",
       11707  +
                    vec![{
       11708  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11709  +
                        out.insert("name".to_string(), "sigv4-s3express".to_string().into());
       11710  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11711  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11712  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11713  +
                        out
       11714  +
                    }
       11715  +
                    .into()]
       11716  +
                )
       11717  +
                .property("backend", "S3Express".to_string())
       11718  +
                .build()
       11719  +
        );
       11720  +
    }
       11721  +
       11722  +
    /// Data plane AP with sigv4 and dualstack
       11723  +
    #[test]
       11724  +
    fn test_387() {
       11725  +
        let params = crate::config::endpoint::Params::builder()
       11726  +
            .region("us-west-2".to_string())
       11727  +
            .bucket("myaccesspoint--test1-long1-zone-ab1--xa-s3".to_string())
       11728  +
            .use_fips(false)
       11729  +
            .use_dual_stack(true)
       11730  +
            .accelerate(false)
       11731  +
            .disable_s3_express_session_auth(true)
       11732  +
            .build()
       11733  +
            .expect("invalid params");
       11734  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11735  +
        let endpoint = resolver.resolve_endpoint(&params);
       11736  +
        let endpoint = endpoint.expect("Expected valid endpoint: https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com");
       11737  +
        assert_eq!(
       11738  +
            endpoint,
       11739  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11740  +
                .url("https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11741  +
                .property(
       11742  +
                    "authSchemes",
       11743  +
                    vec![{
       11744  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11745  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11746  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11747  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11748  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11749  +
                        out
       11750  +
                    }
       11751  +
                    .into()]
       11752  +
                )
       11753  +
                .property("backend", "S3Express".to_string())
       11754  +
                .build()
       11755  +
        );
       11756  +
    }
       11757  +
       11758  +
    /// Data plane AP sigv4 with fips and dualstack
       11759  +
    #[test]
       11760  +
    fn test_388() {
       11761  +
        let params = crate::config::endpoint::Params::builder()
       11762  +
            .region("us-west-2".to_string())
       11763  +
            .bucket("myaccesspoint--test1-long1-zone-ab1--xa-s3".to_string())
       11764  +
            .use_fips(true)
       11765  +
            .use_dual_stack(true)
       11766  +
            .accelerate(false)
       11767  +
            .disable_s3_express_session_auth(true)
       11768  +
            .build()
       11769  +
            .expect("invalid params");
       11770  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11771  +
        let endpoint = resolver.resolve_endpoint(&params);
       11772  +
        let endpoint = endpoint.expect("Expected valid endpoint: https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com");
       11773  +
        assert_eq!(
       11774  +
            endpoint,
       11775  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11776  +
                .url("https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.dualstack.us-west-2.amazonaws.com")
       11777  +
                .property(
       11778  +
                    "authSchemes",
       11779  +
                    vec![{
       11780  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11781  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11782  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11783  +
                        out.insert("signingRegion".to_string(), "us-west-2".to_string().into());
       11784  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11785  +
                        out
       11786  +
                    }
       11787  +
                    .into()]
       11788  +
                )
       11789  +
                .property("backend", "S3Express".to_string())
       11790  +
                .build()
       11791  +
        );
       11792  +
    }
       11793  +
       11794  +
    /// Control plane with dualstack and bucket
       11795  +
    #[test]
       11796  +
    fn test_389() {
       11797  +
        let params = crate::config::endpoint::Params::builder()
       11798  +
            .region("us-east-1".to_string())
       11799  +
            .bucket("mybucket--test-ab1--x-s3".to_string())
       11800  +
            .use_fips(false)
       11801  +
            .use_dual_stack(true)
       11802  +
            .accelerate(false)
       11803  +
            .use_s3_express_control_endpoint(true)
       11804  +
            .build()
       11805  +
            .expect("invalid params");
       11806  +
        let resolver = crate::config::endpoint::DefaultResolver::new();
       11807  +
        let endpoint = resolver.resolve_endpoint(&params);
       11808  +
        let endpoint =
       11809  +
            endpoint.expect("Expected valid endpoint: https://s3express-control.dualstack.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3");
       11810  +
        assert_eq!(
       11811  +
            endpoint,
       11812  +
            ::aws_smithy_types::endpoint::Endpoint::builder()
       11813  +
                .url("https://s3express-control.dualstack.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3")
       11814  +
                .property(
       11815  +
                    "authSchemes",
       11816  +
                    vec![{
       11817  +
                        let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       11818  +
                        out.insert("name".to_string(), "sigv4".to_string().into());
       11819  +
                        out.insert("signingName".to_string(), "s3express".to_string().into());
       11820  +
                        out.insert("signingRegion".to_string(), "us-east-1".to_string().into());
       11821  +
                        out.insert("disableDoubleEncoding".to_string(), true.into());
       11822  +
                        out
       11823  +
                    }
       11824  +
                    .into()]
       11825  +
                )
       11826  +
                .property("backend", "S3Express".to_string())
       11827  +
                .build()
       11828  +
        );
       11829  +
    }
       11830  +
}
       11831  +
       11832  +
/// Endpoint resolver trait specific to Amazon Simple Storage Service
       11833  +
pub trait ResolveEndpoint: ::std::marker::Send + ::std::marker::Sync + ::std::fmt::Debug {
       11834  +
    /// Resolve an endpoint with the given parameters
       11835  +
    fn resolve_endpoint<'a>(&'a self, params: &'a crate::config::endpoint::Params) -> ::aws_smithy_runtime_api::client::endpoint::EndpointFuture<'a>;
       11836  +
       11837  +
    /// Convert this service-specific resolver into a `SharedEndpointResolver`
       11838  +
    ///
       11839  +
    /// The resulting resolver will downcast `EndpointResolverParams` into `crate::config::endpoint::Params`.
       11840  +
    fn into_shared_resolver(self) -> ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver
       11841  +
    where
       11842  +
        Self: Sized + 'static,
       11843  +
    {
       11844  +
        ::aws_smithy_runtime_api::client::endpoint::SharedEndpointResolver::new(DowncastParams(self))
       11845  +
    }
       11846  +
}
       11847  +
       11848  +
#[derive(Debug)]
       11849  +
struct DowncastParams<T>(T);
       11850  +
impl<T> ::aws_smithy_runtime_api::client::endpoint::ResolveEndpoint for DowncastParams<T>
       11851  +
where
       11852  +
    T: ResolveEndpoint,
       11853  +
{
       11854  +
    fn resolve_endpoint<'a>(
       11855  +
        &'a self,
       11856  +
        params: &'a ::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams,
       11857  +
    ) -> ::aws_smithy_runtime_api::client::endpoint::EndpointFuture<'a> {
       11858  +
        let ep = match params.get::<crate::config::endpoint::Params>() {
       11859  +
            Some(params) => self.0.resolve_endpoint(params),
       11860  +
            None => ::aws_smithy_runtime_api::client::endpoint::EndpointFuture::ready(Err("params of expected type was not present".into())),
       11861  +
        };
       11862  +
        ep
       11863  +
    }
       11864  +
}
       11865  +
       11866  +
#[derive(Debug)]
       11867  +
/// The default endpoint resolver.
       11868  +
pub struct DefaultResolver {
       11869  +
    partition_resolver: &'static crate::endpoint_lib::partition::PartitionResolver,
       11870  +
}
       11871  +
       11872  +
impl Default for DefaultResolver {
       11873  +
    fn default() -> Self {
       11874  +
        Self::new()
       11875  +
    }
       11876  +
}
       11877  +
       11878  +
impl DefaultResolver {
       11879  +
    /// Create a new DefaultResolver
       11880  +
    pub fn new() -> Self {
       11881  +
        Self {
       11882  +
            partition_resolver: &crate::endpoint_lib::DEFAULT_PARTITION_RESOLVER,
       11883  +
        }
       11884  +
    }
       11885  +
       11886  +
    #[allow(clippy::needless_borrow)]
       11887  +
    pub(crate) fn evaluate_fn(
       11888  +
        &self,
       11889  +
    ) -> impl for<'a> FnMut(&ConditionFn, &'a Params, &mut ConditionContext<'a>, &mut crate::endpoint_lib::diagnostic::DiagnosticCollector) -> bool + '_
       11890  +
    {
       11891  +
        move |cond, params, context, _diagnostic_collector| cond.evaluate(params, context, &self.partition_resolver, _diagnostic_collector)
       11892  +
    }
       11893  +
       11894  +
    fn resolve_endpoint<'a>(
       11895  +
        &'a self,
       11896  +
        params: &'a crate::config::endpoint::Params,
       11897  +
    ) -> ::std::result::Result<::aws_smithy_types::endpoint::Endpoint, ::aws_smithy_runtime_api::box_error::BoxError> {
       11898  +
        let mut diagnostic_collector = crate::endpoint_lib::diagnostic::DiagnosticCollector::new();
       11899  +
        let mut condition_context = ConditionContext::default();
       11900  +
        let result = crate::endpoint_lib::bdd_interpreter::evaluate_bdd(
       11901  +
            &NODES,
       11902  +
            &CONDITIONS,
       11903  +
            &RESULTS,
       11904  +
            521,
       11905  +
            params,
       11906  +
            &mut condition_context,
       11907  +
            &mut diagnostic_collector,
       11908  +
            self.evaluate_fn(),
       11909  +
        );
       11910  +
       11911  +
        match result {
       11912  +
            ::std::option::Option::Some(endpoint) => match endpoint.to_endpoint(params, &condition_context) {
       11913  +
                Ok(ep) => Ok(ep),
       11914  +
                Err(err) => Err(Box::new(err)),
       11915  +
            },
       11916  +
            ::std::option::Option::None => ::std::result::Result::Err(Box::new(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       11917  +
                "No endpoint rule matched",
       11918  +
            ))),
       11919  +
        }
       11920  +
    }
       11921  +
}
       11922  +
       11923  +
impl crate::config::endpoint::ResolveEndpoint for DefaultResolver {
       11924  +
    fn resolve_endpoint<'a>(&'a self, params: &'a crate::config::endpoint::Params) -> ::aws_smithy_runtime_api::client::endpoint::EndpointFuture<'a> {
       11925  +
        let result = self.resolve_endpoint(params);
       11926  +
       11927  +
        ::aws_smithy_runtime_api::client::endpoint::EndpointFuture::ready(result)
       11928  +
    }
       11929  +
}
       11930  +
#[derive(Debug)]
       11931  +
pub(crate) enum ConditionFn {
       11932  +
    Cond0,
       11933  +
    Cond1,
       11934  +
    Cond2,
       11935  +
    Cond3,
       11936  +
    Cond4,
       11937  +
    Cond5,
       11938  +
    Cond6,
       11939  +
    Cond7,
       11940  +
    Cond8,
       11941  +
    Cond9,
       11942  +
    Cond10,
       11943  +
    Cond11,
       11944  +
    Cond12,
       11945  +
    Cond13,
       11946  +
    Cond14,
       11947  +
    Cond15,
       11948  +
    Cond16,
       11949  +
    Cond17,
       11950  +
    Cond18,
       11951  +
    Cond19,
       11952  +
    Cond20,
       11953  +
    Cond21,
       11954  +
    Cond22,
       11955  +
    Cond23,
       11956  +
    Cond24,
       11957  +
    Cond25,
       11958  +
    Cond26,
       11959  +
    Cond27,
       11960  +
    Cond28,
       11961  +
    Cond29,
       11962  +
    Cond30,
       11963  +
    Cond31,
       11964  +
    Cond32,
       11965  +
    Cond33,
       11966  +
    Cond34,
       11967  +
    Cond35,
       11968  +
    Cond36,
       11969  +
    Cond37,
       11970  +
    Cond38,
       11971  +
    Cond39,
       11972  +
    Cond40,
       11973  +
    Cond41,
       11974  +
    Cond42,
       11975  +
    Cond43,
       11976  +
    Cond44,
       11977  +
    Cond45,
       11978  +
    Cond46,
       11979  +
    Cond47,
       11980  +
    Cond48,
       11981  +
    Cond49,
       11982  +
    Cond50,
       11983  +
    Cond51,
       11984  +
    Cond52,
       11985  +
    Cond53,
       11986  +
    Cond54,
       11987  +
    Cond55,
       11988  +
    Cond56,
       11989  +
    Cond57,
       11990  +
    Cond58,
       11991  +
    Cond59,
       11992  +
    Cond60,
       11993  +
    Cond61,
       11994  +
    Cond62,
       11995  +
    Cond63,
       11996  +
    Cond64,
       11997  +
    Cond65,
       11998  +
    Cond66,
       11999  +
    Cond67,
       12000  +
    Cond68,
       12001  +
    Cond69,
       12002  +
    Cond70,
       12003  +
    Cond71,
       12004  +
    Cond72,
       12005  +
    Cond73,
       12006  +
    Cond74,
       12007  +
    Cond75,
       12008  +
}
       12009  +
       12010  +
impl ConditionFn {
       12011  +
    #[allow(
       12012  +
        unused_variables,
       12013  +
        unused_parens,
       12014  +
        clippy::double_parens,
       12015  +
        clippy::useless_conversion,
       12016  +
        clippy::bool_comparison,
       12017  +
        clippy::comparison_to_empty,
       12018  +
        clippy::needless_borrow,
       12019  +
        clippy::useless_asref
       12020  +
    )]
       12021  +
    fn evaluate<'a>(
       12022  +
        &self,
       12023  +
        params: &'a Params,
       12024  +
        context: &mut ConditionContext<'a>,
       12025  +
        partition_resolver: &'a crate::endpoint_lib::partition::PartitionResolver,
       12026  +
        _diagnostic_collector: &mut crate::endpoint_lib::diagnostic::DiagnosticCollector,
       12027  +
    ) -> bool {
       12028  +
        // Param bindings
       12029  +
        let bucket = &params.bucket;
       12030  +
        let region = &params.region;
       12031  +
        let use_fips = &params.use_fips;
       12032  +
        let use_dual_stack = &params.use_dual_stack;
       12033  +
        let endpoint = &params.endpoint;
       12034  +
        let force_path_style = &params.force_path_style;
       12035  +
        let accelerate = &params.accelerate;
       12036  +
        let use_global_endpoint = &params.use_global_endpoint;
       12037  +
        let use_object_lambda_endpoint = &params.use_object_lambda_endpoint;
       12038  +
        let key = &params.key;
       12039  +
        let prefix = &params.prefix;
       12040  +
        let copy_source = &params.copy_source;
       12041  +
        let disable_access_points = &params.disable_access_points;
       12042  +
        let disable_multi_region_access_points = &params.disable_multi_region_access_points;
       12043  +
        let use_arn_region = &params.use_arn_region;
       12044  +
        let use_s3_express_control_endpoint = &params.use_s3_express_control_endpoint;
       12045  +
        let disable_s3_express_session_auth = &params.disable_s3_express_session_auth;
       12046  +
       12047  +
        // Non-Param references
       12048  +
        let effective_std_region = &mut context.effective_std_region;
       12049  +
        let partition_result = &mut context.partition_result;
       12050  +
        let url = &mut context.url;
       12051  +
        let access_point_suffix = &mut context.access_point_suffix;
       12052  +
        let region_prefix = &mut context.region_prefix;
       12053  +
        let hardware_type = &mut context.hardware_type;
       12054  +
        let outpost_id_ssa_2 = &mut context.outpost_id_ssa_2;
       12055  +
        let s3_e_ds = &mut context.s3_e_ds;
       12056  +
        let s3_e_fips = &mut context.s3_e_fips;
       12057  +
        let s3_e_auth = &mut context.s3_e_auth;
       12058  +
        let s3express_availability_zone_id = &mut context.s3express_availability_zone_id;
       12059  +
        let bucket_arn = &mut context.bucket_arn;
       12060  +
        let effective_arn_region = &mut context.effective_arn_region;
       12061  +
        let uri_encoded_bucket = &mut context.uri_encoded_bucket;
       12062  +
        let arn_type = &mut context.arn_type;
       12063  +
        let access_point_name_ssa_1 = &mut context.access_point_name_ssa_1;
       12064  +
        let bucket_partition = &mut context.bucket_partition;
       12065  +
        let outpost_id_ssa_1 = &mut context.outpost_id_ssa_1;
       12066  +
        let outpost_type = &mut context.outpost_type;
       12067  +
        let access_point_name_ssa_2 = &mut context.access_point_name_ssa_2;
       12068  +
        match self {
       12069  +
            Self::Cond0 => region.is_some(),
       12070  +
            Self::Cond1 => {
       12071  +
                *effective_std_region = Some(
       12072  +
                    crate::endpoint_lib::ite::ite!(
       12073  +
                        (region) == &mut Some(("aws-global".into())),
       12074  +
                        "us-east-1".to_string(),
       12075  +
                        region.clone().expect("Reference already confirmed Some")
       12076  +
                    )
       12077  +
                    .into(),
       12078  +
                );
       12079  +
                true
       12080  +
            }
       12081  +
            Self::Cond2 => (accelerate) == (&true),
       12082  +
            Self::Cond3 => (use_fips) == (&true),
       12083  +
            Self::Cond4 => endpoint.is_some(),
       12084  +
            Self::Cond5 => (use_dual_stack) == (&true),
       12085  +
            Self::Cond6 => bucket.is_some(),
       12086  +
            Self::Cond7 => {
       12087  +
                (crate::endpoint_lib::coalesce::coalesce!(
       12088  +
                    if let Some(inner) = crate::endpoint_lib::substring::substring(
       12089  +
                        if let Some(param) = bucket { param } else { return false },
       12090  +
                        0,
       12091  +
                        6,
       12092  +
                        true,
       12093  +
                        _diagnostic_collector
       12094  +
                    ) {
       12095  +
                        inner
       12096  +
                    } else {
       12097  +
                        return false;
       12098  +
                    },
       12099  +
                    ""
       12100  +
                )) == ("--x-s3")
       12101  +
            }
       12102  +
            Self::Cond8 => {
       12103  +
                (crate::endpoint_lib::coalesce::coalesce!(
       12104  +
                    if let Some(inner) = crate::endpoint_lib::substring::substring(
       12105  +
                        if let Some(param) = bucket { param } else { return false },
       12106  +
                        0,
       12107  +
                        7,
       12108  +
                        true,
       12109  +
                        _diagnostic_collector
       12110  +
                    ) {
       12111  +
                        inner
       12112  +
                    } else {
       12113  +
                        return false;
       12114  +
                    },
       12115  +
                    ""
       12116  +
                )) == ("--xa-s3")
       12117  +
            }
       12118  +
            Self::Cond9 => {
       12119  +
                *partition_result = partition_resolver
       12120  +
                    .resolve_partition(if let Some(param) = region { param } else { return false }, _diagnostic_collector)
       12121  +
                    .map(|inner| inner.into());
       12122  +
                partition_result.is_some()
       12123  +
            }
       12124  +
            Self::Cond10 => {
       12125  +
                *url =
       12126  +
                    crate::endpoint_lib::parse_url::parse_url(if let Some(param) = endpoint { param } else { return false }, _diagnostic_collector)
       12127  +
                        .map(|inner| inner.into());
       12128  +
                url.is_some()
       12129  +
            }
       12130  +
            Self::Cond11 => {
       12131  +
                *access_point_suffix = crate::endpoint_lib::substring::substring(
       12132  +
                    if let Some(param) = bucket { param } else { return false },
       12133  +
                    0,
       12134  +
                    7,
       12135  +
                    true,
       12136  +
                    _diagnostic_collector,
       12137  +
                )
       12138  +
                .map(|inner| inner.into());
       12139  +
                access_point_suffix.is_some()
       12140  +
            }
       12141  +
            Self::Cond12 => (access_point_suffix) == &mut Some(("--op-s3".into())),
       12142  +
            Self::Cond13 => {
       12143  +
                *region_prefix = crate::endpoint_lib::substring::substring(
       12144  +
                    if let Some(param) = bucket { param } else { return false },
       12145  +
                    8,
       12146  +
                    12,
       12147  +
                    true,
       12148  +
                    _diagnostic_collector,
       12149  +
                )
       12150  +
                .map(|inner| inner.into());
       12151  +
                region_prefix.is_some()
       12152  +
            }
       12153  +
            Self::Cond14 => {
       12154  +
                *hardware_type = crate::endpoint_lib::substring::substring(
       12155  +
                    if let Some(param) = bucket { param } else { return false },
       12156  +
                    49,
       12157  +
                    50,
       12158  +
                    true,
       12159  +
                    _diagnostic_collector,
       12160  +
                )
       12161  +
                .map(|inner| inner.into());
       12162  +
                hardware_type.is_some()
       12163  +
            }
       12164  +
            Self::Cond15 => {
       12165  +
                *outpost_id_ssa_2 = crate::endpoint_lib::substring::substring(
       12166  +
                    if let Some(param) = bucket { param } else { return false },
       12167  +
                    32,
       12168  +
                    49,
       12169  +
                    true,
       12170  +
                    _diagnostic_collector,
       12171  +
                )
       12172  +
                .map(|inner| inner.into());
       12173  +
                outpost_id_ssa_2.is_some()
       12174  +
            }
       12175  +
            Self::Cond16 => {
       12176  +
                (if let Some(inner) = partition_result {
       12177  +
                    inner.name()
       12178  +
                } else {
       12179  +
                    return false;
       12180  +
                }) == ("aws-cn")
       12181  +
            }
       12182  +
            Self::Cond17 => {
       12183  +
                *s3_e_ds = Some(crate::endpoint_lib::ite::ite!(use_dual_stack, ".dualstack".to_string(), "".to_string()).into());
       12184  +
                true
       12185  +
            }
       12186  +
            Self::Cond18 => {
       12187  +
                *s3_e_fips = Some(crate::endpoint_lib::ite::ite!(use_fips, "-fips".to_string(), "".to_string()).into());
       12188  +
                true
       12189  +
            }
       12190  +
            Self::Cond19 => (force_path_style) == (&true),
       12191  +
            Self::Cond20 => {
       12192  +
                *s3_e_auth = Some(
       12193  +
                    crate::endpoint_lib::ite::ite!(
       12194  +
                        crate::endpoint_lib::coalesce::coalesce!(*disable_s3_express_session_auth, false),
       12195  +
                        "sigv4".to_string(),
       12196  +
                        "sigv4-s3express".to_string()
       12197  +
                    )
       12198  +
                    .into(),
       12199  +
                );
       12200  +
                true
       12201  +
            }
       12202  +
            Self::Cond21 => crate::endpoint_lib::s3::is_virtual_hostable_s3_bucket(
       12203  +
                if let Some(param) = bucket { param } else { return false },
       12204  +
                false,
       12205  +
                _diagnostic_collector,
       12206  +
            ),
       12207  +
            Self::Cond22 => {
       12208  +
                *s3express_availability_zone_id = crate::endpoint_lib::split::split(
       12209  +
                    if let Some(param) = bucket { param } else { return false },
       12210  +
                    "--",
       12211  +
                    0,
       12212  +
                    _diagnostic_collector,
       12213  +
                )
       12214  +
                .get(1)
       12215  +
                .cloned()
       12216  +
                .map(|inner| inner.into());
       12217  +
                s3express_availability_zone_id.is_some()
       12218  +
            }
       12219  +
            Self::Cond23 => crate::endpoint_lib::host::is_valid_host_label(
       12220  +
                if let Some(param) = outpost_id_ssa_2 { param } else { return false },
       12221  +
                false,
       12222  +
                _diagnostic_collector,
       12223  +
            ),
       12224  +
            Self::Cond24 => (crate::endpoint_lib::coalesce::coalesce!(*use_s3_express_control_endpoint, false)) == (true),
       12225  +
            Self::Cond25 => (region_prefix) == &mut Some(("beta".into())),
       12226  +
            Self::Cond26 => crate::endpoint_lib::s3::is_virtual_hostable_s3_bucket(
       12227  +
                if let Some(param) = bucket { param } else { return false },
       12228  +
                true,
       12229  +
                _diagnostic_collector,
       12230  +
            ),
       12231  +
            Self::Cond27 => {
       12232  +
                (crate::endpoint_lib::coalesce::coalesce!(
       12233  +
                    if let Some(inner) = crate::endpoint_lib::substring::substring(
       12234  +
                        if let Some(param) = bucket { param } else { return false },
       12235  +
                        16,
       12236  +
                        18,
       12237  +
                        true,
       12238  +
                        _diagnostic_collector
       12239  +
                    ) {
       12240  +
                        inner
       12241  +
                    } else {
       12242  +
                        return false;
       12243  +
                    },
       12244  +
                    ""
       12245  +
                )) == ("--")
       12246  +
            }
       12247  +
            Self::Cond28 => {
       12248  +
                (crate::endpoint_lib::coalesce::coalesce!(
       12249  +
                    if let Some(inner) = crate::endpoint_lib::substring::substring(
       12250  +
                        if let Some(param) = bucket { param } else { return false },
       12251  +
                        21,
       12252  +
                        23,
       12253  +
                        true,
       12254  +
                        _diagnostic_collector
       12255  +
                    ) {
       12256  +
                        inner
       12257  +
                    } else {
       12258  +
                        return false;
       12259  +
                    },
       12260  +
                    ""
       12261  +
                )) == ("--")
       12262  +
            }
       12263  +
            Self::Cond29 => (if let Some(inner) = url { inner.scheme() } else { return false }) == ("http"),
       12264  +
            Self::Cond30 => crate::endpoint_lib::host::is_valid_host_label(
       12265  +
                if let Some(param) = region { param } else { return false },
       12266  +
                false,
       12267  +
                _diagnostic_collector,
       12268  +
            ),
       12269  +
            Self::Cond31 => {
       12270  +
                *bucket_arn = crate::endpoint_lib::arn::parse_arn(if let Some(param) = bucket { param } else { return false }, _diagnostic_collector)
       12271  +
                    .map(|inner| inner.into());
       12272  +
                bucket_arn.is_some()
       12273  +
            }
       12274  +
            Self::Cond32 => {
       12275  +
                (crate::endpoint_lib::coalesce::coalesce!(
       12276  +
                    if let Some(inner) = crate::endpoint_lib::substring::substring(
       12277  +
                        if let Some(param) = bucket { param } else { return false },
       12278  +
                        27,
       12279  +
                        29,
       12280  +
                        true,
       12281  +
                        _diagnostic_collector
       12282  +
                    ) {
       12283  +
                        inner
       12284  +
                    } else {
       12285  +
                        return false;
       12286  +
                    },
       12287  +
                    ""
       12288  +
                )) == ("--")
       12289  +
            }
       12290  +
            Self::Cond33 => {
       12291  +
                *effective_arn_region = Some(
       12292  +
                    crate::endpoint_lib::ite::ite!(
       12293  +
                        crate::endpoint_lib::coalesce::coalesce!(*use_arn_region, true),
       12294  +
                        if let Some(inner) = bucket_arn { inner.region() } else { return false }.to_string(),
       12295  +
                        region.clone().expect("Reference already confirmed Some")
       12296  +
                    )
       12297  +
                    .into(),
       12298  +
                );
       12299  +
                true
       12300  +
            }
       12301  +
            Self::Cond34 => (if let Some(inner) = url { inner.is_ip() } else { return false }) == (true),
       12302  +
            Self::Cond35 => {
       12303  +
                (crate::endpoint_lib::coalesce::coalesce!(
       12304  +
                    if let Some(inner) = crate::endpoint_lib::substring::substring(
       12305  +
                        if let Some(param) = bucket { param } else { return false },
       12306  +
                        0,
       12307  +
                        4,
       12308  +
                        false,
       12309  +
                        _diagnostic_collector
       12310  +
                    ) {
       12311  +
                        inner
       12312  +
                    } else {
       12313  +
                        return false;
       12314  +
                    },
       12315  +
                    ""
       12316  +
                )) == ("arn:")
       12317  +
            }
       12318  +
            Self::Cond36 => {
       12319  +
                *uri_encoded_bucket = Some(
       12320  +
                    crate::endpoint_lib::uri_encode::uri_encode(if let Some(param) = bucket { param } else { return false }, _diagnostic_collector)
       12321  +
                        .into(),
       12322  +
                );
       12323  +
                true
       12324  +
            }
       12325  +
            Self::Cond37 => (crate::endpoint_lib::coalesce::coalesce!(*use_object_lambda_endpoint, false)) == (true),
       12326  +
            Self::Cond38 => {
       12327  +
                *arn_type = if let Some(inner) = bucket_arn {
       12328  +
                    inner.resource_id().first().cloned()
       12329  +
                } else {
       12330  +
                    return false;
       12331  +
                }
       12332  +
                .map(|inner| inner.into());
       12333  +
                arn_type.is_some()
       12334  +
            }
       12335  +
            Self::Cond39 => (arn_type) == &mut Some(("".into())),
       12336  +
            Self::Cond40 => (arn_type) == &mut Some(("accesspoint".into())),
       12337  +
            Self::Cond41 => {
       12338  +
                *access_point_name_ssa_1 = if let Some(inner) = bucket_arn {
       12339  +
                    inner.resource_id().get(1).cloned()
       12340  +
                } else {
       12341  +
                    return false;
       12342  +
                }
       12343  +
                .map(|inner| inner.into());
       12344  +
                access_point_name_ssa_1.is_some()
       12345  +
            }
       12346  +
            Self::Cond42 => (access_point_name_ssa_1) == &mut Some(("".into())),
       12347  +
            Self::Cond43 => (if let Some(inner) = bucket_arn { inner.service() } else { return false }) == ("s3-object-lambda"),
       12348  +
            Self::Cond44 => crate::endpoint_lib::host::is_valid_host_label(
       12349  +
                if let Some(param) = region { param } else { return false },
       12350  +
                true,
       12351  +
                _diagnostic_collector,
       12352  +
            ),
       12353  +
            Self::Cond45 => (if let Some(inner) = bucket_arn { inner.region() } else { return false }) == (""),
       12354  +
            Self::Cond46 => (hardware_type) == &mut Some(("e".into())),
       12355  +
            Self::Cond47 => {
       12356  +
                (crate::endpoint_lib::coalesce::coalesce!(
       12357  +
                    if let Some(inner) = crate::endpoint_lib::substring::substring(
       12358  +
                        if let Some(param) = bucket { param } else { return false },
       12359  +
                        26,
       12360  +
                        28,
       12361  +
                        true,
       12362  +
                        _diagnostic_collector
       12363  +
                    ) {
       12364  +
                        inner
       12365  +
                    } else {
       12366  +
                        return false;
       12367  +
                    },
       12368  +
                    ""
       12369  +
                )) == ("--")
       12370  +
            }
       12371  +
            Self::Cond48 => {
       12372  +
                (crate::endpoint_lib::coalesce::coalesce!(
       12373  +
                    if let Some(inner) = crate::endpoint_lib::substring::substring(
       12374  +
                        if let Some(param) = bucket { param } else { return false },
       12375  +
                        19,
       12376  +
                        21,
       12377  +
                        true,
       12378  +
                        _diagnostic_collector
       12379  +
                    ) {
       12380  +
                        inner
       12381  +
                    } else {
       12382  +
                        return false;
       12383  +
                    },
       12384  +
                    ""
       12385  +
                )) == ("--")
       12386  +
            }
       12387  +
            Self::Cond49 => {
       12388  +
                (crate::endpoint_lib::coalesce::coalesce!(
       12389  +
                    if let Some(inner) = crate::endpoint_lib::substring::substring(
       12390  +
                        if let Some(param) = bucket { param } else { return false },
       12391  +
                        14,
       12392  +
                        16,
       12393  +
                        true,
       12394  +
                        _diagnostic_collector
       12395  +
                    ) {
       12396  +
                        inner
       12397  +
                    } else {
       12398  +
                        return false;
       12399  +
                    },
       12400  +
                    ""
       12401  +
                )) == ("--")
       12402  +
            }
       12403  +
            Self::Cond50 => {
       12404  +
                (crate::endpoint_lib::coalesce::coalesce!(
       12405  +
                    if let Some(inner) = crate::endpoint_lib::substring::substring(
       12406  +
                        if let Some(param) = bucket { param } else { return false },
       12407  +
                        20,
       12408  +
                        22,
       12409  +
                        true,
       12410  +
                        _diagnostic_collector
       12411  +
                    ) {
       12412  +
                        inner
       12413  +
                    } else {
       12414  +
                        return false;
       12415  +
                    },
       12416  +
                    ""
       12417  +
                )) == ("--")
       12418  +
            }
       12419  +
            Self::Cond51 => {
       12420  +
                (crate::endpoint_lib::coalesce::coalesce!(
       12421  +
                    if let Some(inner) = crate::endpoint_lib::substring::substring(
       12422  +
                        if let Some(param) = bucket { param } else { return false },
       12423  +
                        15,
       12424  +
                        17,
       12425  +
                        true,
       12426  +
                        _diagnostic_collector
       12427  +
                    ) {
       12428  +
                        inner
       12429  +
                    } else {
       12430  +
                        return false;
       12431  +
                    },
       12432  +
                    ""
       12433  +
                )) == ("--")
       12434  +
            }
       12435  +
            Self::Cond52 => (if let Some(inner) = bucket_arn { inner.service() } else { return false }) == ("s3-outposts"),
       12436  +
            Self::Cond53 => (crate::endpoint_lib::coalesce::coalesce!(*disable_access_points, false)) == (true),
       12437  +
            Self::Cond54 => {
       12438  +
                *bucket_partition = partition_resolver
       12439  +
                    .resolve_partition(
       12440  +
                        if let Some(param) = effective_arn_region { param } else { return false },
       12441  +
                        _diagnostic_collector,
       12442  +
                    )
       12443  +
                    .map(|inner| inner.into());
       12444  +
                bucket_partition.is_some()
       12445  +
            }
       12446  +
            Self::Cond55 => (hardware_type) == &mut Some(("o".into())),
       12447  +
            Self::Cond56 => if let Some(inner) = bucket_arn {
       12448  +
                inner.resource_id().get(4).cloned()
       12449  +
            } else {
       12450  +
                return false;
       12451  +
            }
       12452  +
            .is_some(),
       12453  +
            Self::Cond57 => {
       12454  +
                *outpost_id_ssa_1 = if let Some(inner) = bucket_arn {
       12455  +
                    inner.resource_id().get(1).cloned()
       12456  +
                } else {
       12457  +
                    return false;
       12458  +
                }
       12459  +
                .map(|inner| inner.into());
       12460  +
                outpost_id_ssa_1.is_some()
       12461  +
            }
       12462  +
            Self::Cond58 => (crate::endpoint_lib::coalesce::coalesce!(*use_arn_region, true)) == (true),
       12463  +
            Self::Cond59 => (effective_arn_region) == &mut Some((if let Some(inner) = bucket_arn { inner.region() } else { return false }.into())),
       12464  +
            Self::Cond60 => (region) == &mut Some(("aws-global".into())),
       12465  +
            Self::Cond61 => (use_global_endpoint) == (&true),
       12466  +
            Self::Cond62 => (disable_multi_region_access_points) == (&true),
       12467  +
            Self::Cond63 => (region) == &mut Some(("us-east-1".into())),
       12468  +
            Self::Cond64 => crate::endpoint_lib::host::is_valid_host_label(
       12469  +
                if let Some(param) = outpost_id_ssa_1 { param } else { return false },
       12470  +
                false,
       12471  +
                _diagnostic_collector,
       12472  +
            ),
       12473  +
            Self::Cond65 => {
       12474  +
                *outpost_type = if let Some(inner) = bucket_arn {
       12475  +
                    inner.resource_id().get(2).cloned()
       12476  +
                } else {
       12477  +
                    return false;
       12478  +
                }
       12479  +
                .map(|inner| inner.into());
       12480  +
                outpost_type.is_some()
       12481  +
            }
       12482  +
            Self::Cond66 => {
       12483  +
                (if let Some(inner) = bucket_partition {
       12484  +
                    inner.name()
       12485  +
                } else {
       12486  +
                    return false;
       12487  +
                }) == (if let Some(inner) = partition_result {
       12488  +
                    inner.name()
       12489  +
                } else {
       12490  +
                    return false;
       12491  +
                })
       12492  +
            }
       12493  +
            Self::Cond67 => crate::endpoint_lib::host::is_valid_host_label(
       12494  +
                if let Some(param) = effective_arn_region { param } else { return false },
       12495  +
                true,
       12496  +
                _diagnostic_collector,
       12497  +
            ),
       12498  +
            Self::Cond68 => (if let Some(inner) = bucket_arn { inner.service() } else { return false }) == ("s3"),
       12499  +
            Self::Cond69 => {
       12500  +
                (if let Some(inner) = bucket_arn {
       12501  +
                    inner.account_id()
       12502  +
                } else {
       12503  +
                    return false;
       12504  +
                }) == ("")
       12505  +
            }
       12506  +
            Self::Cond70 => crate::endpoint_lib::host::is_valid_host_label(
       12507  +
                if let Some(inner) = bucket_arn {
       12508  +
                    inner.account_id()
       12509  +
                } else {
       12510  +
                    return false;
       12511  +
                },
       12512  +
                false,
       12513  +
                _diagnostic_collector,
       12514  +
            ),
       12515  +
            Self::Cond71 => crate::endpoint_lib::host::is_valid_host_label(
       12516  +
                if let Some(param) = access_point_name_ssa_1 {
       12517  +
                    param
       12518  +
                } else {
       12519  +
                    return false;
       12520  +
                },
       12521  +
                false,
       12522  +
                _diagnostic_collector,
       12523  +
            ),
       12524  +
            Self::Cond72 => {
       12525  +
                *access_point_name_ssa_2 = if let Some(inner) = bucket_arn {
       12526  +
                    inner.resource_id().get(3).cloned()
       12527  +
                } else {
       12528  +
                    return false;
       12529  +
                }
       12530  +
                .map(|inner| inner.into());
       12531  +
                access_point_name_ssa_2.is_some()
       12532  +
            }
       12533  +
            Self::Cond73 => crate::endpoint_lib::host::is_valid_host_label(
       12534  +
                if let Some(param) = access_point_name_ssa_1 {
       12535  +
                    param
       12536  +
                } else {
       12537  +
                    return false;
       12538  +
                },
       12539  +
                true,
       12540  +
                _diagnostic_collector,
       12541  +
            ),
       12542  +
            Self::Cond74 => {
       12543  +
                (if let Some(inner) = bucket_arn { inner.partition() } else { return false })
       12544  +
                    == (if let Some(inner) = partition_result {
       12545  +
                        inner.name()
       12546  +
                    } else {
       12547  +
                        return false;
       12548  +
                    })
       12549  +
            }
       12550  +
            Self::Cond75 => (outpost_type) == &mut Some(("accesspoint".into())),
       12551  +
        }
       12552  +
    }
       12553  +
}
       12554  +
       12555  +
const CONDITIONS: [ConditionFn; 76] = [
       12556  +
    ConditionFn::Cond0,
       12557  +
    ConditionFn::Cond1,
       12558  +
    ConditionFn::Cond2,
       12559  +
    ConditionFn::Cond3,
       12560  +
    ConditionFn::Cond4,
       12561  +
    ConditionFn::Cond5,
       12562  +
    ConditionFn::Cond6,
       12563  +
    ConditionFn::Cond7,
       12564  +
    ConditionFn::Cond8,
       12565  +
    ConditionFn::Cond9,
       12566  +
    ConditionFn::Cond10,
       12567  +
    ConditionFn::Cond11,
       12568  +
    ConditionFn::Cond12,
       12569  +
    ConditionFn::Cond13,
       12570  +
    ConditionFn::Cond14,
       12571  +
    ConditionFn::Cond15,
       12572  +
    ConditionFn::Cond16,
       12573  +
    ConditionFn::Cond17,
       12574  +
    ConditionFn::Cond18,
       12575  +
    ConditionFn::Cond19,
       12576  +
    ConditionFn::Cond20,
       12577  +
    ConditionFn::Cond21,
       12578  +
    ConditionFn::Cond22,
       12579  +
    ConditionFn::Cond23,
       12580  +
    ConditionFn::Cond24,
       12581  +
    ConditionFn::Cond25,
       12582  +
    ConditionFn::Cond26,
       12583  +
    ConditionFn::Cond27,
       12584  +
    ConditionFn::Cond28,
       12585  +
    ConditionFn::Cond29,
       12586  +
    ConditionFn::Cond30,
       12587  +
    ConditionFn::Cond31,
       12588  +
    ConditionFn::Cond32,
       12589  +
    ConditionFn::Cond33,
       12590  +
    ConditionFn::Cond34,
       12591  +
    ConditionFn::Cond35,
       12592  +
    ConditionFn::Cond36,
       12593  +
    ConditionFn::Cond37,
       12594  +
    ConditionFn::Cond38,
       12595  +
    ConditionFn::Cond39,
       12596  +
    ConditionFn::Cond40,
       12597  +
    ConditionFn::Cond41,
       12598  +
    ConditionFn::Cond42,
       12599  +
    ConditionFn::Cond43,
       12600  +
    ConditionFn::Cond44,
       12601  +
    ConditionFn::Cond45,
       12602  +
    ConditionFn::Cond46,
       12603  +
    ConditionFn::Cond47,
       12604  +
    ConditionFn::Cond48,
       12605  +
    ConditionFn::Cond49,
       12606  +
    ConditionFn::Cond50,
       12607  +
    ConditionFn::Cond51,
       12608  +
    ConditionFn::Cond52,
       12609  +
    ConditionFn::Cond53,
       12610  +
    ConditionFn::Cond54,
       12611  +
    ConditionFn::Cond55,
       12612  +
    ConditionFn::Cond56,
       12613  +
    ConditionFn::Cond57,
       12614  +
    ConditionFn::Cond58,
       12615  +
    ConditionFn::Cond59,
       12616  +
    ConditionFn::Cond60,
       12617  +
    ConditionFn::Cond61,
       12618  +
    ConditionFn::Cond62,
       12619  +
    ConditionFn::Cond63,
       12620  +
    ConditionFn::Cond64,
       12621  +
    ConditionFn::Cond65,
       12622  +
    ConditionFn::Cond66,
       12623  +
    ConditionFn::Cond67,
       12624  +
    ConditionFn::Cond68,
       12625  +
    ConditionFn::Cond69,
       12626  +
    ConditionFn::Cond70,
       12627  +
    ConditionFn::Cond71,
       12628  +
    ConditionFn::Cond72,
       12629  +
    ConditionFn::Cond73,
       12630  +
    ConditionFn::Cond74,
       12631  +
    ConditionFn::Cond75,
       12632  +
];
       12633  +
#[derive(Debug, Clone)]
       12634  +
enum ResultEndpoint {
       12635  +
    Result0,
       12636  +
    Result1,
       12637  +
    Result2,
       12638  +
    Result3,
       12639  +
    Result4,
       12640  +
    Result5,
       12641  +
    Result6,
       12642  +
    Result7,
       12643  +
    Result8,
       12644  +
    Result9,
       12645  +
    Result10,
       12646  +
    Result11,
       12647  +
    Result12,
       12648  +
    Result13,
       12649  +
    Result14,
       12650  +
    Result15,
       12651  +
    Result16,
       12652  +
    Result17,
       12653  +
    Result18,
       12654  +
    Result19,
       12655  +
    Result20,
       12656  +
    Result21,
       12657  +
    Result22,
       12658  +
    Result23,
       12659  +
    Result24,
       12660  +
    Result25,
       12661  +
    Result26,
       12662  +
    Result27,
       12663  +
    Result28,
       12664  +
    Result29,
       12665  +
    Result30,
       12666  +
    Result31,
       12667  +
    Result32,
       12668  +
    Result33,
       12669  +
    Result34,
       12670  +
    Result35,
       12671  +
    Result36,
       12672  +
    Result37,
       12673  +
    Result38,
       12674  +
    Result39,
       12675  +
    Result40,
       12676  +
    Result41,
       12677  +
    Result42,
       12678  +
    Result43,
       12679  +
    Result44,
       12680  +
    Result45,
       12681  +
    Result46,
       12682  +
    Result47,
       12683  +
    Result48,
       12684  +
    Result49,
       12685  +
    Result50,
       12686  +
    Result51,
       12687  +
    Result52,
       12688  +
    Result53,
       12689  +
    Result54,
       12690  +
    Result55,
       12691  +
    Result56,
       12692  +
    Result57,
       12693  +
    Result58,
       12694  +
    Result59,
       12695  +
    Result60,
       12696  +
    Result61,
       12697  +
    Result62,
       12698  +
    Result63,
       12699  +
    Result64,
       12700  +
    Result65,
       12701  +
    Result66,
       12702  +
    Result67,
       12703  +
    Result68,
       12704  +
    Result69,
       12705  +
    Result70,
       12706  +
    Result71,
       12707  +
    Result72,
       12708  +
    Result73,
       12709  +
    Result74,
       12710  +
    Result75,
       12711  +
    Result76,
       12712  +
    Result77,
       12713  +
    Result78,
       12714  +
    Result79,
       12715  +
    Result80,
       12716  +
    Result81,
       12717  +
    Result82,
       12718  +
    Result83,
       12719  +
    Result84,
       12720  +
    Result85,
       12721  +
    Result86,
       12722  +
    Result87,
       12723  +
    Result88,
       12724  +
    Result89,
       12725  +
    Result90,
       12726  +
    Result91,
       12727  +
    Result92,
       12728  +
    Result93,
       12729  +
    Result94,
       12730  +
    Result95,
       12731  +
    Result96,
       12732  +
}
       12733  +
       12734  +
impl<'a> ResultEndpoint {
       12735  +
    #[allow(unused_variables, clippy::useless_asref)]
       12736  +
    fn to_endpoint(
       12737  +
        &self,
       12738  +
        params: &'a Params,
       12739  +
        context: &ConditionContext<'a>,
       12740  +
    ) -> ::std::result::Result<::aws_smithy_types::endpoint::Endpoint, ::aws_smithy_http::endpoint::ResolveEndpointError> {
       12741  +
        // Param bindings
       12742  +
        let bucket = params.bucket.as_ref().map(|s| s.clone()).unwrap_or_default();
       12743  +
        let region = params.region.as_ref().map(|s| s.clone()).unwrap_or_default();
       12744  +
        let use_fips = params.use_fips;
       12745  +
        let use_dual_stack = params.use_dual_stack;
       12746  +
        let endpoint = params.endpoint.as_ref().map(|s| s.clone()).unwrap_or_default();
       12747  +
        let force_path_style = params.force_path_style;
       12748  +
        let accelerate = params.accelerate;
       12749  +
        let use_global_endpoint = params.use_global_endpoint;
       12750  +
        let use_object_lambda_endpoint = params.use_object_lambda_endpoint.unwrap_or_default();
       12751  +
        let key = params.key.as_ref().map(|s| s.clone()).unwrap_or_default();
       12752  +
        let prefix = params.prefix.as_ref().map(|s| s.clone()).unwrap_or_default();
       12753  +
        let copy_source = params.copy_source.as_ref().map(|s| s.clone()).unwrap_or_default();
       12754  +
        let disable_access_points = params.disable_access_points.unwrap_or_default();
       12755  +
        let disable_multi_region_access_points = params.disable_multi_region_access_points;
       12756  +
        let use_arn_region = params.use_arn_region.unwrap_or_default();
       12757  +
        let use_s3_express_control_endpoint = params.use_s3_express_control_endpoint.unwrap_or_default();
       12758  +
        let disable_s3_express_session_auth = params.disable_s3_express_session_auth.unwrap_or_default();
       12759  +
       12760  +
        // Non-Param references
       12761  +
        let effective_std_region = context.effective_std_region.as_ref().map(|s| s.clone()).unwrap_or_default();
       12762  +
        let partition_result = context.partition_result.as_ref().map(|s| s.clone()).unwrap_or_default();
       12763  +
        let url = context.url.as_ref().map(|s| s.clone()).unwrap_or_default();
       12764  +
        let access_point_suffix = context.access_point_suffix.as_ref().map(|s| s.clone()).unwrap_or_default();
       12765  +
        let region_prefix = context.region_prefix.as_ref().map(|s| s.clone()).unwrap_or_default();
       12766  +
        let hardware_type = context.hardware_type.as_ref().map(|s| s.clone()).unwrap_or_default();
       12767  +
        let outpost_id_ssa_2 = context.outpost_id_ssa_2.as_ref().map(|s| s.clone()).unwrap_or_default();
       12768  +
        let s3_e_ds = context.s3_e_ds.as_ref().map(|s| s.clone()).unwrap_or_default();
       12769  +
        let s3_e_fips = context.s3_e_fips.as_ref().map(|s| s.clone()).unwrap_or_default();
       12770  +
        let s3_e_auth = context.s3_e_auth.as_ref().map(|s| s.clone()).unwrap_or_default();
       12771  +
        let s3express_availability_zone_id = context.s3express_availability_zone_id.as_ref().map(|s| s.clone()).unwrap_or_default();
       12772  +
        let bucket_arn = context.bucket_arn.as_ref().map(|s| s.clone()).unwrap_or_default();
       12773  +
        let effective_arn_region = context.effective_arn_region.as_ref().map(|s| s.clone()).unwrap_or_default();
       12774  +
        let uri_encoded_bucket = context.uri_encoded_bucket.as_ref().map(|s| s.clone()).unwrap_or_default();
       12775  +
        let arn_type = context.arn_type.as_ref().map(|s| s.clone()).unwrap_or_default();
       12776  +
        let access_point_name_ssa_1 = context.access_point_name_ssa_1.as_ref().map(|s| s.clone()).unwrap_or_default();
       12777  +
        let bucket_partition = context.bucket_partition.as_ref().map(|s| s.clone()).unwrap_or_default();
       12778  +
        let outpost_id_ssa_1 = context.outpost_id_ssa_1.as_ref().map(|s| s.clone()).unwrap_or_default();
       12779  +
        let outpost_type = context.outpost_type.as_ref().map(|s| s.clone()).unwrap_or_default();
       12780  +
        let access_point_name_ssa_2 = context.access_point_name_ssa_2.as_ref().map(|s| s.clone()).unwrap_or_default();
       12781  +
       12782  +
        match self {
       12783  +
            Self::Result0 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message("No endpoint rule matched")),
       12784  +
            Self::Result1 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       12785  +
                "Accelerate cannot be used with FIPS".to_string(),
       12786  +
            )),
       12787  +
            Self::Result2 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       12788  +
                "Cannot set dual-stack in combination with a custom endpoint.".to_string(),
       12789  +
            )),
       12790  +
            Self::Result3 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       12791  +
                "A custom endpoint cannot be combined with FIPS".to_string(),
       12792  +
            )),
       12793  +
            Self::Result4 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       12794  +
                "A custom endpoint cannot be combined with S3 Accelerate".to_string(),
       12795  +
            )),
       12796  +
            Self::Result5 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       12797  +
                "Partition does not support FIPS".to_string(),
       12798  +
            )),
       12799  +
            Self::Result6 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       12800  +
                "S3Express does not support S3 Accelerate.".to_string(),
       12801  +
            )),
       12802  +
            Self::Result7 => ::std::result::Result::Ok(
       12803  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       12804  +
                    .url({
       12805  +
                        let mut out = String::new();
       12806  +
                        #[allow(clippy::needless_borrow)]
       12807  +
                        out.push_str(&url.scheme());
       12808  +
                        out.push_str("://");
       12809  +
                        #[allow(clippy::needless_borrow)]
       12810  +
                        out.push_str(&url.authority());
       12811  +
                        out.push('/');
       12812  +
                        #[allow(clippy::needless_borrow)]
       12813  +
                        out.push_str(&uri_encoded_bucket.as_ref() as &str);
       12814  +
                        #[allow(clippy::needless_borrow)]
       12815  +
                        out.push_str(&url.path());
       12816  +
                        out
       12817  +
                    })
       12818  +
                    .property("backend", "S3Express".to_string())
       12819  +
                    .property(
       12820  +
                        "authSchemes",
       12821  +
                        vec![::aws_smithy_types::Document::from({
       12822  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       12823  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       12824  +
                            out.insert("name".to_string(), s3_e_auth.to_owned().into());
       12825  +
                            out.insert("signingName".to_string(), "s3express".to_string().into());
       12826  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       12827  +
                            out
       12828  +
                        })],
       12829  +
                    )
       12830  +
                    .build(),
       12831  +
            ),
       12832  +
            Self::Result8 => ::std::result::Result::Ok(
       12833  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       12834  +
                    .url({
       12835  +
                        let mut out = String::new();
       12836  +
                        #[allow(clippy::needless_borrow)]
       12837  +
                        out.push_str(&url.scheme());
       12838  +
                        out.push_str("://");
       12839  +
                        #[allow(clippy::needless_borrow)]
       12840  +
                        out.push_str(&bucket.as_ref() as &str);
       12841  +
                        out.push('.');
       12842  +
                        #[allow(clippy::needless_borrow)]
       12843  +
                        out.push_str(&url.authority());
       12844  +
                        #[allow(clippy::needless_borrow)]
       12845  +
                        out.push_str(&url.path());
       12846  +
                        out
       12847  +
                    })
       12848  +
                    .property("backend", "S3Express".to_string())
       12849  +
                    .property(
       12850  +
                        "authSchemes",
       12851  +
                        vec![::aws_smithy_types::Document::from({
       12852  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       12853  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       12854  +
                            out.insert("name".to_string(), s3_e_auth.to_owned().into());
       12855  +
                            out.insert("signingName".to_string(), "s3express".to_string().into());
       12856  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       12857  +
                            out
       12858  +
                        })],
       12859  +
                    )
       12860  +
                    .build(),
       12861  +
            ),
       12862  +
            Self::Result9 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       12863  +
                "S3Express bucket name is not a valid virtual hostable name.".to_string(),
       12864  +
            )),
       12865  +
            Self::Result10 => ::std::result::Result::Ok(
       12866  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       12867  +
                    .url({
       12868  +
                        let mut out = String::new();
       12869  +
                        out.push_str("https://s3express-control");
       12870  +
                        #[allow(clippy::needless_borrow)]
       12871  +
                        out.push_str(&s3_e_fips.as_ref() as &str);
       12872  +
                        #[allow(clippy::needless_borrow)]
       12873  +
                        out.push_str(&s3_e_ds.as_ref() as &str);
       12874  +
                        out.push('.');
       12875  +
                        #[allow(clippy::needless_borrow)]
       12876  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       12877  +
                        out.push('.');
       12878  +
                        #[allow(clippy::needless_borrow)]
       12879  +
                        out.push_str(&partition_result.dns_suffix());
       12880  +
                        out.push('/');
       12881  +
                        #[allow(clippy::needless_borrow)]
       12882  +
                        out.push_str(&uri_encoded_bucket.as_ref() as &str);
       12883  +
                        out
       12884  +
                    })
       12885  +
                    .property("backend", "S3Express".to_string())
       12886  +
                    .property(
       12887  +
                        "authSchemes",
       12888  +
                        vec![::aws_smithy_types::Document::from({
       12889  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       12890  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       12891  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       12892  +
                            out.insert("signingName".to_string(), "s3express".to_string().into());
       12893  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       12894  +
                            out
       12895  +
                        })],
       12896  +
                    )
       12897  +
                    .build(),
       12898  +
            ),
       12899  +
            Self::Result11 => ::std::result::Result::Ok(
       12900  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       12901  +
                    .url({
       12902  +
                        let mut out = String::new();
       12903  +
                        out.push_str("https://");
       12904  +
                        #[allow(clippy::needless_borrow)]
       12905  +
                        out.push_str(&bucket.as_ref() as &str);
       12906  +
                        out.push_str(".s3express");
       12907  +
                        #[allow(clippy::needless_borrow)]
       12908  +
                        out.push_str(&s3_e_fips.as_ref() as &str);
       12909  +
                        out.push('-');
       12910  +
                        #[allow(clippy::needless_borrow)]
       12911  +
                        out.push_str(&s3express_availability_zone_id.as_ref() as &str);
       12912  +
                        #[allow(clippy::needless_borrow)]
       12913  +
                        out.push_str(&s3_e_ds.as_ref() as &str);
       12914  +
                        out.push('.');
       12915  +
                        #[allow(clippy::needless_borrow)]
       12916  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       12917  +
                        out.push('.');
       12918  +
                        #[allow(clippy::needless_borrow)]
       12919  +
                        out.push_str(&partition_result.dns_suffix());
       12920  +
                        out
       12921  +
                    })
       12922  +
                    .property("backend", "S3Express".to_string())
       12923  +
                    .property(
       12924  +
                        "authSchemes",
       12925  +
                        vec![::aws_smithy_types::Document::from({
       12926  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       12927  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       12928  +
                            out.insert("name".to_string(), s3_e_auth.to_owned().into());
       12929  +
                            out.insert("signingName".to_string(), "s3express".to_string().into());
       12930  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       12931  +
                            out
       12932  +
                        })],
       12933  +
                    )
       12934  +
                    .build(),
       12935  +
            ),
       12936  +
            Self::Result12 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       12937  +
                "Unrecognized S3Express bucket name format.".to_string(),
       12938  +
            )),
       12939  +
            Self::Result13 => ::std::result::Result::Ok(
       12940  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       12941  +
                    .url({
       12942  +
                        let mut out = String::new();
       12943  +
                        #[allow(clippy::needless_borrow)]
       12944  +
                        out.push_str(&url.scheme());
       12945  +
                        out.push_str("://");
       12946  +
                        #[allow(clippy::needless_borrow)]
       12947  +
                        out.push_str(&url.authority());
       12948  +
                        #[allow(clippy::needless_borrow)]
       12949  +
                        out.push_str(&url.path());
       12950  +
                        out
       12951  +
                    })
       12952  +
                    .property("backend", "S3Express".to_string())
       12953  +
                    .property(
       12954  +
                        "authSchemes",
       12955  +
                        vec![::aws_smithy_types::Document::from({
       12956  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       12957  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       12958  +
                            out.insert("name".to_string(), s3_e_auth.to_owned().into());
       12959  +
                            out.insert("signingName".to_string(), "s3express".to_string().into());
       12960  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       12961  +
                            out
       12962  +
                        })],
       12963  +
                    )
       12964  +
                    .build(),
       12965  +
            ),
       12966  +
            Self::Result14 => ::std::result::Result::Ok(
       12967  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       12968  +
                    .url({
       12969  +
                        let mut out = String::new();
       12970  +
                        out.push_str("https://s3express-control");
       12971  +
                        #[allow(clippy::needless_borrow)]
       12972  +
                        out.push_str(&s3_e_fips.as_ref() as &str);
       12973  +
                        #[allow(clippy::needless_borrow)]
       12974  +
                        out.push_str(&s3_e_ds.as_ref() as &str);
       12975  +
                        out.push('.');
       12976  +
                        #[allow(clippy::needless_borrow)]
       12977  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       12978  +
                        out.push('.');
       12979  +
                        #[allow(clippy::needless_borrow)]
       12980  +
                        out.push_str(&partition_result.dns_suffix());
       12981  +
                        out
       12982  +
                    })
       12983  +
                    .property("backend", "S3Express".to_string())
       12984  +
                    .property(
       12985  +
                        "authSchemes",
       12986  +
                        vec![::aws_smithy_types::Document::from({
       12987  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       12988  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       12989  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       12990  +
                            out.insert("signingName".to_string(), "s3express".to_string().into());
       12991  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       12992  +
                            out
       12993  +
                        })],
       12994  +
                    )
       12995  +
                    .build(),
       12996  +
            ),
       12997  +
            Self::Result15 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       12998  +
                "Expected a endpoint to be specified but no endpoint was found".to_string(),
       12999  +
            )),
       13000  +
            Self::Result16 => ::std::result::Result::Ok(
       13001  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13002  +
                    .url({
       13003  +
                        let mut out = String::new();
       13004  +
                        out.push_str("https://");
       13005  +
                        #[allow(clippy::needless_borrow)]
       13006  +
                        out.push_str(&bucket.as_ref() as &str);
       13007  +
                        out.push_str(".ec2.");
       13008  +
                        #[allow(clippy::needless_borrow)]
       13009  +
                        out.push_str(&url.authority());
       13010  +
                        out
       13011  +
                    })
       13012  +
                    .property(
       13013  +
                        "authSchemes",
       13014  +
                        vec![
       13015  +
                            ::aws_smithy_types::Document::from({
       13016  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13017  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13018  +
                                out.insert("name".to_string(), "sigv4a".to_string().into());
       13019  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13020  +
                                out.insert(
       13021  +
                                    "signingRegionSet".to_string(),
       13022  +
                                    vec![::aws_smithy_types::Document::from("*".to_string())].into(),
       13023  +
                                );
       13024  +
                                out
       13025  +
                            }),
       13026  +
                            ::aws_smithy_types::Document::from({
       13027  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13028  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13029  +
                                out.insert("name".to_string(), "sigv4".to_string().into());
       13030  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13031  +
                                out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13032  +
                                out
       13033  +
                            }),
       13034  +
                        ],
       13035  +
                    )
       13036  +
                    .build(),
       13037  +
            ),
       13038  +
            Self::Result17 => ::std::result::Result::Ok(
       13039  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13040  +
                    .url({
       13041  +
                        let mut out = String::new();
       13042  +
                        out.push_str("https://");
       13043  +
                        #[allow(clippy::needless_borrow)]
       13044  +
                        out.push_str(&bucket.as_ref() as &str);
       13045  +
                        out.push_str(".ec2.s3-outposts.");
       13046  +
                        #[allow(clippy::needless_borrow)]
       13047  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       13048  +
                        out.push('.');
       13049  +
                        #[allow(clippy::needless_borrow)]
       13050  +
                        out.push_str(&partition_result.dns_suffix());
       13051  +
                        out
       13052  +
                    })
       13053  +
                    .property(
       13054  +
                        "authSchemes",
       13055  +
                        vec![
       13056  +
                            ::aws_smithy_types::Document::from({
       13057  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13058  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13059  +
                                out.insert("name".to_string(), "sigv4a".to_string().into());
       13060  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13061  +
                                out.insert(
       13062  +
                                    "signingRegionSet".to_string(),
       13063  +
                                    vec![::aws_smithy_types::Document::from("*".to_string())].into(),
       13064  +
                                );
       13065  +
                                out
       13066  +
                            }),
       13067  +
                            ::aws_smithy_types::Document::from({
       13068  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13069  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13070  +
                                out.insert("name".to_string(), "sigv4".to_string().into());
       13071  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13072  +
                                out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13073  +
                                out
       13074  +
                            }),
       13075  +
                        ],
       13076  +
                    )
       13077  +
                    .build(),
       13078  +
            ),
       13079  +
            Self::Result18 => ::std::result::Result::Ok(
       13080  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13081  +
                    .url({
       13082  +
                        let mut out = String::new();
       13083  +
                        out.push_str("https://");
       13084  +
                        #[allow(clippy::needless_borrow)]
       13085  +
                        out.push_str(&bucket.as_ref() as &str);
       13086  +
                        out.push_str(".op-");
       13087  +
                        #[allow(clippy::needless_borrow)]
       13088  +
                        out.push_str(&outpost_id_ssa_2.as_ref() as &str);
       13089  +
                        out.push('.');
       13090  +
                        #[allow(clippy::needless_borrow)]
       13091  +
                        out.push_str(&url.authority());
       13092  +
                        out
       13093  +
                    })
       13094  +
                    .property(
       13095  +
                        "authSchemes",
       13096  +
                        vec![
       13097  +
                            ::aws_smithy_types::Document::from({
       13098  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13099  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13100  +
                                out.insert("name".to_string(), "sigv4a".to_string().into());
       13101  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13102  +
                                out.insert(
       13103  +
                                    "signingRegionSet".to_string(),
       13104  +
                                    vec![::aws_smithy_types::Document::from("*".to_string())].into(),
       13105  +
                                );
       13106  +
                                out
       13107  +
                            }),
       13108  +
                            ::aws_smithy_types::Document::from({
       13109  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13110  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13111  +
                                out.insert("name".to_string(), "sigv4".to_string().into());
       13112  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13113  +
                                out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13114  +
                                out
       13115  +
                            }),
       13116  +
                        ],
       13117  +
                    )
       13118  +
                    .build(),
       13119  +
            ),
       13120  +
            Self::Result19 => ::std::result::Result::Ok(
       13121  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13122  +
                    .url({
       13123  +
                        let mut out = String::new();
       13124  +
                        out.push_str("https://");
       13125  +
                        #[allow(clippy::needless_borrow)]
       13126  +
                        out.push_str(&bucket.as_ref() as &str);
       13127  +
                        out.push_str(".op-");
       13128  +
                        #[allow(clippy::needless_borrow)]
       13129  +
                        out.push_str(&outpost_id_ssa_2.as_ref() as &str);
       13130  +
                        out.push_str(".s3-outposts.");
       13131  +
                        #[allow(clippy::needless_borrow)]
       13132  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       13133  +
                        out.push('.');
       13134  +
                        #[allow(clippy::needless_borrow)]
       13135  +
                        out.push_str(&partition_result.dns_suffix());
       13136  +
                        out
       13137  +
                    })
       13138  +
                    .property(
       13139  +
                        "authSchemes",
       13140  +
                        vec![
       13141  +
                            ::aws_smithy_types::Document::from({
       13142  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13143  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13144  +
                                out.insert("name".to_string(), "sigv4a".to_string().into());
       13145  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13146  +
                                out.insert(
       13147  +
                                    "signingRegionSet".to_string(),
       13148  +
                                    vec![::aws_smithy_types::Document::from("*".to_string())].into(),
       13149  +
                                );
       13150  +
                                out
       13151  +
                            }),
       13152  +
                            ::aws_smithy_types::Document::from({
       13153  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13154  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13155  +
                                out.insert("name".to_string(), "sigv4".to_string().into());
       13156  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13157  +
                                out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13158  +
                                out
       13159  +
                            }),
       13160  +
                        ],
       13161  +
                    )
       13162  +
                    .build(),
       13163  +
            ),
       13164  +
            Self::Result20 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13165  +
                let mut out = String::new();
       13166  +
                out.push_str("Unrecognized hardware type: \"Expected hardware type o or e but got ");
       13167  +
                #[allow(clippy::needless_borrow)]
       13168  +
                out.push_str(&hardware_type.as_ref() as &str);
       13169  +
                out.push('"');
       13170  +
                out
       13171  +
            })),
       13172  +
            Self::Result21 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13173  +
                "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`.".to_string(),
       13174  +
            )),
       13175  +
            Self::Result22 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13176  +
                let mut out = String::new();
       13177  +
                out.push_str("Custom endpoint `");
       13178  +
                #[allow(clippy::needless_borrow)]
       13179  +
                out.push_str(&endpoint.as_ref() as &str);
       13180  +
                out.push_str("` was not a valid URI");
       13181  +
                out
       13182  +
            })),
       13183  +
            Self::Result23 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13184  +
                "S3 Accelerate cannot be used in this region".to_string(),
       13185  +
            )),
       13186  +
            Self::Result24 => ::std::result::Result::Ok(
       13187  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13188  +
                    .url({
       13189  +
                        let mut out = String::new();
       13190  +
                        out.push_str("https://");
       13191  +
                        #[allow(clippy::needless_borrow)]
       13192  +
                        out.push_str(&bucket.as_ref() as &str);
       13193  +
                        out.push_str(".s3-fips.dualstack.");
       13194  +
                        #[allow(clippy::needless_borrow)]
       13195  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       13196  +
                        out.push('.');
       13197  +
                        #[allow(clippy::needless_borrow)]
       13198  +
                        out.push_str(&partition_result.dns_suffix());
       13199  +
                        out
       13200  +
                    })
       13201  +
                    .property(
       13202  +
                        "authSchemes",
       13203  +
                        vec![::aws_smithy_types::Document::from({
       13204  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13205  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13206  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13207  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13208  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13209  +
                            out
       13210  +
                        })],
       13211  +
                    )
       13212  +
                    .build(),
       13213  +
            ),
       13214  +
            Self::Result25 => ::std::result::Result::Ok(
       13215  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13216  +
                    .url({
       13217  +
                        let mut out = String::new();
       13218  +
                        out.push_str("https://");
       13219  +
                        #[allow(clippy::needless_borrow)]
       13220  +
                        out.push_str(&bucket.as_ref() as &str);
       13221  +
                        out.push_str(".s3-fips.");
       13222  +
                        #[allow(clippy::needless_borrow)]
       13223  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       13224  +
                        out.push('.');
       13225  +
                        #[allow(clippy::needless_borrow)]
       13226  +
                        out.push_str(&partition_result.dns_suffix());
       13227  +
                        out
       13228  +
                    })
       13229  +
                    .property(
       13230  +
                        "authSchemes",
       13231  +
                        vec![::aws_smithy_types::Document::from({
       13232  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13233  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13234  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13235  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13236  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13237  +
                            out
       13238  +
                        })],
       13239  +
                    )
       13240  +
                    .build(),
       13241  +
            ),
       13242  +
            Self::Result26 => ::std::result::Result::Ok(
       13243  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13244  +
                    .url({
       13245  +
                        let mut out = String::new();
       13246  +
                        out.push_str("https://");
       13247  +
                        #[allow(clippy::needless_borrow)]
       13248  +
                        out.push_str(&bucket.as_ref() as &str);
       13249  +
                        out.push_str(".s3-accelerate.dualstack.");
       13250  +
                        #[allow(clippy::needless_borrow)]
       13251  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       13252  +
                        out.push('.');
       13253  +
                        #[allow(clippy::needless_borrow)]
       13254  +
                        out.push_str(&partition_result.dns_suffix());
       13255  +
                        out
       13256  +
                    })
       13257  +
                    .property(
       13258  +
                        "authSchemes",
       13259  +
                        vec![::aws_smithy_types::Document::from({
       13260  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13261  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13262  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13263  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13264  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13265  +
                            out
       13266  +
                        })],
       13267  +
                    )
       13268  +
                    .build(),
       13269  +
            ),
       13270  +
            Self::Result27 => ::std::result::Result::Ok(
       13271  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13272  +
                    .url({
       13273  +
                        let mut out = String::new();
       13274  +
                        out.push_str("https://");
       13275  +
                        #[allow(clippy::needless_borrow)]
       13276  +
                        out.push_str(&bucket.as_ref() as &str);
       13277  +
                        out.push_str(".s3-accelerate.dualstack.");
       13278  +
                        #[allow(clippy::needless_borrow)]
       13279  +
                        out.push_str(&partition_result.dns_suffix());
       13280  +
                        out
       13281  +
                    })
       13282  +
                    .property(
       13283  +
                        "authSchemes",
       13284  +
                        vec![::aws_smithy_types::Document::from({
       13285  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13286  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13287  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13288  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13289  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13290  +
                            out
       13291  +
                        })],
       13292  +
                    )
       13293  +
                    .build(),
       13294  +
            ),
       13295  +
            Self::Result28 => ::std::result::Result::Ok(
       13296  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13297  +
                    .url({
       13298  +
                        let mut out = String::new();
       13299  +
                        out.push_str("https://");
       13300  +
                        #[allow(clippy::needless_borrow)]
       13301  +
                        out.push_str(&bucket.as_ref() as &str);
       13302  +
                        out.push_str(".s3.dualstack.");
       13303  +
                        #[allow(clippy::needless_borrow)]
       13304  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       13305  +
                        out.push('.');
       13306  +
                        #[allow(clippy::needless_borrow)]
       13307  +
                        out.push_str(&partition_result.dns_suffix());
       13308  +
                        out
       13309  +
                    })
       13310  +
                    .property(
       13311  +
                        "authSchemes",
       13312  +
                        vec![::aws_smithy_types::Document::from({
       13313  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13314  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13315  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13316  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13317  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13318  +
                            out
       13319  +
                        })],
       13320  +
                    )
       13321  +
                    .build(),
       13322  +
            ),
       13323  +
            Self::Result29 => ::std::result::Result::Ok(
       13324  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13325  +
                    .url({
       13326  +
                        let mut out = String::new();
       13327  +
                        #[allow(clippy::needless_borrow)]
       13328  +
                        out.push_str(&url.scheme());
       13329  +
                        out.push_str("://");
       13330  +
                        #[allow(clippy::needless_borrow)]
       13331  +
                        out.push_str(&url.authority());
       13332  +
                        #[allow(clippy::needless_borrow)]
       13333  +
                        out.push_str(&url.normalized_path());
       13334  +
                        #[allow(clippy::needless_borrow)]
       13335  +
                        out.push_str(&bucket.as_ref() as &str);
       13336  +
                        out
       13337  +
                    })
       13338  +
                    .property(
       13339  +
                        "authSchemes",
       13340  +
                        vec![::aws_smithy_types::Document::from({
       13341  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13342  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13343  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13344  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13345  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13346  +
                            out
       13347  +
                        })],
       13348  +
                    )
       13349  +
                    .build(),
       13350  +
            ),
       13351  +
            Self::Result30 => ::std::result::Result::Ok(
       13352  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13353  +
                    .url({
       13354  +
                        let mut out = String::new();
       13355  +
                        #[allow(clippy::needless_borrow)]
       13356  +
                        out.push_str(&url.scheme());
       13357  +
                        out.push_str("://");
       13358  +
                        #[allow(clippy::needless_borrow)]
       13359  +
                        out.push_str(&bucket.as_ref() as &str);
       13360  +
                        out.push('.');
       13361  +
                        #[allow(clippy::needless_borrow)]
       13362  +
                        out.push_str(&url.authority());
       13363  +
                        #[allow(clippy::needless_borrow)]
       13364  +
                        out.push_str(&url.path());
       13365  +
                        out
       13366  +
                    })
       13367  +
                    .property(
       13368  +
                        "authSchemes",
       13369  +
                        vec![::aws_smithy_types::Document::from({
       13370  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13371  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13372  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13373  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13374  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13375  +
                            out
       13376  +
                        })],
       13377  +
                    )
       13378  +
                    .build(),
       13379  +
            ),
       13380  +
            Self::Result31 => ::std::result::Result::Ok(
       13381  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13382  +
                    .url({
       13383  +
                        let mut out = String::new();
       13384  +
                        out.push_str("https://");
       13385  +
                        #[allow(clippy::needless_borrow)]
       13386  +
                        out.push_str(&bucket.as_ref() as &str);
       13387  +
                        out.push_str(".s3-accelerate.");
       13388  +
                        #[allow(clippy::needless_borrow)]
       13389  +
                        out.push_str(&partition_result.dns_suffix());
       13390  +
                        out
       13391  +
                    })
       13392  +
                    .property(
       13393  +
                        "authSchemes",
       13394  +
                        vec![::aws_smithy_types::Document::from({
       13395  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13396  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13397  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13398  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13399  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13400  +
                            out
       13401  +
                        })],
       13402  +
                    )
       13403  +
                    .build(),
       13404  +
            ),
       13405  +
            Self::Result32 => ::std::result::Result::Ok(
       13406  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13407  +
                    .url({
       13408  +
                        let mut out = String::new();
       13409  +
                        out.push_str("https://");
       13410  +
                        #[allow(clippy::needless_borrow)]
       13411  +
                        out.push_str(&bucket.as_ref() as &str);
       13412  +
                        out.push_str(".s3.");
       13413  +
                        #[allow(clippy::needless_borrow)]
       13414  +
                        out.push_str(&partition_result.dns_suffix());
       13415  +
                        out
       13416  +
                    })
       13417  +
                    .property(
       13418  +
                        "authSchemes",
       13419  +
                        vec![::aws_smithy_types::Document::from({
       13420  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13421  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13422  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13423  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13424  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13425  +
                            out
       13426  +
                        })],
       13427  +
                    )
       13428  +
                    .build(),
       13429  +
            ),
       13430  +
            Self::Result33 => ::std::result::Result::Ok(
       13431  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13432  +
                    .url({
       13433  +
                        let mut out = String::new();
       13434  +
                        out.push_str("https://");
       13435  +
                        #[allow(clippy::needless_borrow)]
       13436  +
                        out.push_str(&bucket.as_ref() as &str);
       13437  +
                        out.push_str(".s3.");
       13438  +
                        #[allow(clippy::needless_borrow)]
       13439  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       13440  +
                        out.push('.');
       13441  +
                        #[allow(clippy::needless_borrow)]
       13442  +
                        out.push_str(&partition_result.dns_suffix());
       13443  +
                        out
       13444  +
                    })
       13445  +
                    .property(
       13446  +
                        "authSchemes",
       13447  +
                        vec![::aws_smithy_types::Document::from({
       13448  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13449  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13450  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13451  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13452  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       13453  +
                            out
       13454  +
                        })],
       13455  +
                    )
       13456  +
                    .build(),
       13457  +
            ),
       13458  +
            Self::Result34 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13459  +
                "Invalid region: region was not a valid DNS name.".to_string(),
       13460  +
            )),
       13461  +
            Self::Result35 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13462  +
                "S3 Object Lambda does not support Dual-stack".to_string(),
       13463  +
            )),
       13464  +
            Self::Result36 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13465  +
                "S3 Object Lambda does not support S3 Accelerate".to_string(),
       13466  +
            )),
       13467  +
            Self::Result37 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13468  +
                "Access points are not supported for this operation".to_string(),
       13469  +
            )),
       13470  +
            Self::Result38 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13471  +
                let mut out = String::new();
       13472  +
                out.push_str("Invalid configuration: region from ARN `");
       13473  +
                #[allow(clippy::needless_borrow)]
       13474  +
                out.push_str(&bucket_arn.region());
       13475  +
                out.push_str("` does not match client region `");
       13476  +
                #[allow(clippy::needless_borrow)]
       13477  +
                out.push_str(&region.as_ref() as &str);
       13478  +
                out.push_str("` and UseArnRegion is `false`");
       13479  +
                out
       13480  +
            })),
       13481  +
            Self::Result39 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13482  +
                "Invalid ARN: Missing account id".to_string(),
       13483  +
            )),
       13484  +
            Self::Result40 => ::std::result::Result::Ok(
       13485  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13486  +
                    .url({
       13487  +
                        let mut out = String::new();
       13488  +
                        #[allow(clippy::needless_borrow)]
       13489  +
                        out.push_str(&url.scheme());
       13490  +
                        out.push_str("://");
       13491  +
                        #[allow(clippy::needless_borrow)]
       13492  +
                        out.push_str(&access_point_name_ssa_1.as_ref() as &str);
       13493  +
                        out.push('-');
       13494  +
                        #[allow(clippy::needless_borrow)]
       13495  +
                        out.push_str(&bucket_arn.account_id());
       13496  +
                        out.push('.');
       13497  +
                        #[allow(clippy::needless_borrow)]
       13498  +
                        out.push_str(&url.authority());
       13499  +
                        #[allow(clippy::needless_borrow)]
       13500  +
                        out.push_str(&url.path());
       13501  +
                        out
       13502  +
                    })
       13503  +
                    .property(
       13504  +
                        "authSchemes",
       13505  +
                        vec![::aws_smithy_types::Document::from({
       13506  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13507  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13508  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13509  +
                            out.insert("signingName".to_string(), "s3-object-lambda".to_string().into());
       13510  +
                            out.insert("signingRegion".to_string(), effective_arn_region.to_owned().into());
       13511  +
                            out
       13512  +
                        })],
       13513  +
                    )
       13514  +
                    .build(),
       13515  +
            ),
       13516  +
            Self::Result41 => ::std::result::Result::Ok(
       13517  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13518  +
                    .url({
       13519  +
                        let mut out = String::new();
       13520  +
                        out.push_str("https://");
       13521  +
                        #[allow(clippy::needless_borrow)]
       13522  +
                        out.push_str(&access_point_name_ssa_1.as_ref() as &str);
       13523  +
                        out.push('-');
       13524  +
                        #[allow(clippy::needless_borrow)]
       13525  +
                        out.push_str(&bucket_arn.account_id());
       13526  +
                        out.push_str(".s3-object-lambda-fips.");
       13527  +
                        #[allow(clippy::needless_borrow)]
       13528  +
                        out.push_str(&effective_arn_region.as_ref() as &str);
       13529  +
                        out.push('.');
       13530  +
                        #[allow(clippy::needless_borrow)]
       13531  +
                        out.push_str(&bucket_partition.dns_suffix());
       13532  +
                        out
       13533  +
                    })
       13534  +
                    .property(
       13535  +
                        "authSchemes",
       13536  +
                        vec![::aws_smithy_types::Document::from({
       13537  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13538  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13539  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13540  +
                            out.insert("signingName".to_string(), "s3-object-lambda".to_string().into());
       13541  +
                            out.insert("signingRegion".to_string(), effective_arn_region.to_owned().into());
       13542  +
                            out
       13543  +
                        })],
       13544  +
                    )
       13545  +
                    .build(),
       13546  +
            ),
       13547  +
            Self::Result42 => ::std::result::Result::Ok(
       13548  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13549  +
                    .url({
       13550  +
                        let mut out = String::new();
       13551  +
                        out.push_str("https://");
       13552  +
                        #[allow(clippy::needless_borrow)]
       13553  +
                        out.push_str(&access_point_name_ssa_1.as_ref() as &str);
       13554  +
                        out.push('-');
       13555  +
                        #[allow(clippy::needless_borrow)]
       13556  +
                        out.push_str(&bucket_arn.account_id());
       13557  +
                        out.push_str(".s3-object-lambda.");
       13558  +
                        #[allow(clippy::needless_borrow)]
       13559  +
                        out.push_str(&effective_arn_region.as_ref() as &str);
       13560  +
                        out.push('.');
       13561  +
                        #[allow(clippy::needless_borrow)]
       13562  +
                        out.push_str(&bucket_partition.dns_suffix());
       13563  +
                        out
       13564  +
                    })
       13565  +
                    .property(
       13566  +
                        "authSchemes",
       13567  +
                        vec![::aws_smithy_types::Document::from({
       13568  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13569  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13570  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13571  +
                            out.insert("signingName".to_string(), "s3-object-lambda".to_string().into());
       13572  +
                            out.insert("signingRegion".to_string(), effective_arn_region.to_owned().into());
       13573  +
                            out
       13574  +
                        })],
       13575  +
                    )
       13576  +
                    .build(),
       13577  +
            ),
       13578  +
            Self::Result43 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13579  +
                let mut out = String::new();
       13580  +
                out.push_str("Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `");
       13581  +
                #[allow(clippy::needless_borrow)]
       13582  +
                out.push_str(&access_point_name_ssa_1.as_ref() as &str);
       13583  +
                out.push('`');
       13584  +
                out
       13585  +
            })),
       13586  +
            Self::Result44 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13587  +
                let mut out = String::new();
       13588  +
                out.push_str("Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `");
       13589  +
                #[allow(clippy::needless_borrow)]
       13590  +
                out.push_str(&bucket_arn.account_id());
       13591  +
                out.push('`');
       13592  +
                out
       13593  +
            })),
       13594  +
            Self::Result45 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13595  +
                let mut out = String::new();
       13596  +
                out.push_str("Invalid region in ARN: `");
       13597  +
                #[allow(clippy::needless_borrow)]
       13598  +
                out.push_str(&bucket_arn.region());
       13599  +
                out.push_str("` (invalid DNS name)");
       13600  +
                out
       13601  +
            })),
       13602  +
            Self::Result46 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13603  +
                let mut out = String::new();
       13604  +
                out.push_str("Client was configured for partition `");
       13605  +
                #[allow(clippy::needless_borrow)]
       13606  +
                out.push_str(&partition_result.name());
       13607  +
                out.push_str("` but ARN (`");
       13608  +
                #[allow(clippy::needless_borrow)]
       13609  +
                out.push_str(&bucket.as_ref() as &str);
       13610  +
                out.push_str("`) has `");
       13611  +
                #[allow(clippy::needless_borrow)]
       13612  +
                out.push_str(&bucket_partition.name());
       13613  +
                out.push('`');
       13614  +
                out
       13615  +
            })),
       13616  +
            Self::Result47 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13617  +
                "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`.".to_string(),
       13618  +
            )),
       13619  +
            Self::Result48 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13620  +
                "Invalid ARN: bucket ARN is missing a region".to_string(),
       13621  +
            )),
       13622  +
            Self::Result49 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13623  +
                "Invalid ARN: Expected a resource of the format `accesspoint:<accesspoint name>` but no name was provided".to_string(),
       13624  +
            )),
       13625  +
            Self::Result50 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13626  +
                let mut out = String::new();
       13627  +
                out.push_str("Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `");
       13628  +
                #[allow(clippy::needless_borrow)]
       13629  +
                out.push_str(&arn_type.as_ref() as &str);
       13630  +
                out.push('`');
       13631  +
                out
       13632  +
            })),
       13633  +
            Self::Result51 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13634  +
                "Access Points do not support S3 Accelerate".to_string(),
       13635  +
            )),
       13636  +
            Self::Result52 => ::std::result::Result::Ok(
       13637  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13638  +
                    .url({
       13639  +
                        let mut out = String::new();
       13640  +
                        out.push_str("https://");
       13641  +
                        #[allow(clippy::needless_borrow)]
       13642  +
                        out.push_str(&access_point_name_ssa_1.as_ref() as &str);
       13643  +
                        out.push('-');
       13644  +
                        #[allow(clippy::needless_borrow)]
       13645  +
                        out.push_str(&bucket_arn.account_id());
       13646  +
                        out.push_str(".s3-accesspoint-fips.dualstack.");
       13647  +
                        #[allow(clippy::needless_borrow)]
       13648  +
                        out.push_str(&effective_arn_region.as_ref() as &str);
       13649  +
                        out.push('.');
       13650  +
                        #[allow(clippy::needless_borrow)]
       13651  +
                        out.push_str(&bucket_partition.dns_suffix());
       13652  +
                        out
       13653  +
                    })
       13654  +
                    .property(
       13655  +
                        "authSchemes",
       13656  +
                        vec![::aws_smithy_types::Document::from({
       13657  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13658  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13659  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13660  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13661  +
                            out.insert("signingRegion".to_string(), effective_arn_region.to_owned().into());
       13662  +
                            out
       13663  +
                        })],
       13664  +
                    )
       13665  +
                    .build(),
       13666  +
            ),
       13667  +
            Self::Result53 => ::std::result::Result::Ok(
       13668  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13669  +
                    .url({
       13670  +
                        let mut out = String::new();
       13671  +
                        out.push_str("https://");
       13672  +
                        #[allow(clippy::needless_borrow)]
       13673  +
                        out.push_str(&access_point_name_ssa_1.as_ref() as &str);
       13674  +
                        out.push('-');
       13675  +
                        #[allow(clippy::needless_borrow)]
       13676  +
                        out.push_str(&bucket_arn.account_id());
       13677  +
                        out.push_str(".s3-accesspoint-fips.");
       13678  +
                        #[allow(clippy::needless_borrow)]
       13679  +
                        out.push_str(&effective_arn_region.as_ref() as &str);
       13680  +
                        out.push('.');
       13681  +
                        #[allow(clippy::needless_borrow)]
       13682  +
                        out.push_str(&bucket_partition.dns_suffix());
       13683  +
                        out
       13684  +
                    })
       13685  +
                    .property(
       13686  +
                        "authSchemes",
       13687  +
                        vec![::aws_smithy_types::Document::from({
       13688  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13689  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13690  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13691  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13692  +
                            out.insert("signingRegion".to_string(), effective_arn_region.to_owned().into());
       13693  +
                            out
       13694  +
                        })],
       13695  +
                    )
       13696  +
                    .build(),
       13697  +
            ),
       13698  +
            Self::Result54 => ::std::result::Result::Ok(
       13699  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13700  +
                    .url({
       13701  +
                        let mut out = String::new();
       13702  +
                        out.push_str("https://");
       13703  +
                        #[allow(clippy::needless_borrow)]
       13704  +
                        out.push_str(&access_point_name_ssa_1.as_ref() as &str);
       13705  +
                        out.push('-');
       13706  +
                        #[allow(clippy::needless_borrow)]
       13707  +
                        out.push_str(&bucket_arn.account_id());
       13708  +
                        out.push_str(".s3-accesspoint.dualstack.");
       13709  +
                        #[allow(clippy::needless_borrow)]
       13710  +
                        out.push_str(&effective_arn_region.as_ref() as &str);
       13711  +
                        out.push('.');
       13712  +
                        #[allow(clippy::needless_borrow)]
       13713  +
                        out.push_str(&bucket_partition.dns_suffix());
       13714  +
                        out
       13715  +
                    })
       13716  +
                    .property(
       13717  +
                        "authSchemes",
       13718  +
                        vec![::aws_smithy_types::Document::from({
       13719  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13720  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13721  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13722  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13723  +
                            out.insert("signingRegion".to_string(), effective_arn_region.to_owned().into());
       13724  +
                            out
       13725  +
                        })],
       13726  +
                    )
       13727  +
                    .build(),
       13728  +
            ),
       13729  +
            Self::Result55 => ::std::result::Result::Ok(
       13730  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13731  +
                    .url({
       13732  +
                        let mut out = String::new();
       13733  +
                        #[allow(clippy::needless_borrow)]
       13734  +
                        out.push_str(&url.scheme());
       13735  +
                        out.push_str("://");
       13736  +
                        #[allow(clippy::needless_borrow)]
       13737  +
                        out.push_str(&access_point_name_ssa_1.as_ref() as &str);
       13738  +
                        out.push('-');
       13739  +
                        #[allow(clippy::needless_borrow)]
       13740  +
                        out.push_str(&bucket_arn.account_id());
       13741  +
                        out.push('.');
       13742  +
                        #[allow(clippy::needless_borrow)]
       13743  +
                        out.push_str(&url.authority());
       13744  +
                        #[allow(clippy::needless_borrow)]
       13745  +
                        out.push_str(&url.path());
       13746  +
                        out
       13747  +
                    })
       13748  +
                    .property(
       13749  +
                        "authSchemes",
       13750  +
                        vec![::aws_smithy_types::Document::from({
       13751  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13752  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13753  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13754  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13755  +
                            out.insert("signingRegion".to_string(), effective_arn_region.to_owned().into());
       13756  +
                            out
       13757  +
                        })],
       13758  +
                    )
       13759  +
                    .build(),
       13760  +
            ),
       13761  +
            Self::Result56 => ::std::result::Result::Ok(
       13762  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13763  +
                    .url({
       13764  +
                        let mut out = String::new();
       13765  +
                        out.push_str("https://");
       13766  +
                        #[allow(clippy::needless_borrow)]
       13767  +
                        out.push_str(&access_point_name_ssa_1.as_ref() as &str);
       13768  +
                        out.push('-');
       13769  +
                        #[allow(clippy::needless_borrow)]
       13770  +
                        out.push_str(&bucket_arn.account_id());
       13771  +
                        out.push_str(".s3-accesspoint.");
       13772  +
                        #[allow(clippy::needless_borrow)]
       13773  +
                        out.push_str(&effective_arn_region.as_ref() as &str);
       13774  +
                        out.push('.');
       13775  +
                        #[allow(clippy::needless_borrow)]
       13776  +
                        out.push_str(&bucket_partition.dns_suffix());
       13777  +
                        out
       13778  +
                    })
       13779  +
                    .property(
       13780  +
                        "authSchemes",
       13781  +
                        vec![::aws_smithy_types::Document::from({
       13782  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13783  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13784  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       13785  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13786  +
                            out.insert("signingRegion".to_string(), effective_arn_region.to_owned().into());
       13787  +
                            out
       13788  +
                        })],
       13789  +
                    )
       13790  +
                    .build(),
       13791  +
            ),
       13792  +
            Self::Result57 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13793  +
                let mut out = String::new();
       13794  +
                out.push_str("Invalid ARN: The ARN was not for the S3 service, found: ");
       13795  +
                #[allow(clippy::needless_borrow)]
       13796  +
                out.push_str(&bucket_arn.service());
       13797  +
                out
       13798  +
            })),
       13799  +
            Self::Result58 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13800  +
                "S3 MRAP does not support dual-stack".to_string(),
       13801  +
            )),
       13802  +
            Self::Result59 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13803  +
                "S3 MRAP does not support FIPS".to_string(),
       13804  +
            )),
       13805  +
            Self::Result60 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13806  +
                "S3 MRAP does not support S3 Accelerate".to_string(),
       13807  +
            )),
       13808  +
            Self::Result61 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13809  +
                "Invalid configuration: Multi-Region Access Point ARNs are disabled.".to_string(),
       13810  +
            )),
       13811  +
            Self::Result62 => ::std::result::Result::Ok(
       13812  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13813  +
                    .url({
       13814  +
                        let mut out = String::new();
       13815  +
                        out.push_str("https://");
       13816  +
                        #[allow(clippy::needless_borrow)]
       13817  +
                        out.push_str(&access_point_name_ssa_1.as_ref() as &str);
       13818  +
                        out.push_str(".accesspoint.s3-global.");
       13819  +
                        #[allow(clippy::needless_borrow)]
       13820  +
                        out.push_str(&partition_result.dns_suffix());
       13821  +
                        out
       13822  +
                    })
       13823  +
                    .property(
       13824  +
                        "authSchemes",
       13825  +
                        vec![::aws_smithy_types::Document::from({
       13826  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13827  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       13828  +
                            out.insert("name".to_string(), "sigv4a".to_string().into());
       13829  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       13830  +
                            out.insert(
       13831  +
                                "signingRegionSet".to_string(),
       13832  +
                                vec![::aws_smithy_types::Document::from("*".to_string())].into(),
       13833  +
                            );
       13834  +
                            out
       13835  +
                        })],
       13836  +
                    )
       13837  +
                    .build(),
       13838  +
            ),
       13839  +
            Self::Result63 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13840  +
                let mut out = String::new();
       13841  +
                out.push_str("Client was configured for partition `");
       13842  +
                #[allow(clippy::needless_borrow)]
       13843  +
                out.push_str(&partition_result.name());
       13844  +
                out.push_str("` but bucket referred to partition `");
       13845  +
                #[allow(clippy::needless_borrow)]
       13846  +
                out.push_str(&bucket_arn.partition());
       13847  +
                out.push('`');
       13848  +
                out
       13849  +
            })),
       13850  +
            Self::Result64 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13851  +
                "Invalid Access Point Name".to_string(),
       13852  +
            )),
       13853  +
            Self::Result65 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13854  +
                "S3 Outposts does not support Dual-stack".to_string(),
       13855  +
            )),
       13856  +
            Self::Result66 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13857  +
                "S3 Outposts does not support FIPS".to_string(),
       13858  +
            )),
       13859  +
            Self::Result67 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13860  +
                "S3 Outposts does not support S3 Accelerate".to_string(),
       13861  +
            )),
       13862  +
            Self::Result68 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13863  +
                "Invalid Arn: Outpost Access Point ARN contains sub resources".to_string(),
       13864  +
            )),
       13865  +
            Self::Result69 => ::std::result::Result::Ok(
       13866  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13867  +
                    .url({
       13868  +
                        let mut out = String::new();
       13869  +
                        out.push_str("https://");
       13870  +
                        #[allow(clippy::needless_borrow)]
       13871  +
                        out.push_str(&access_point_name_ssa_2.as_ref() as &str);
       13872  +
                        out.push('-');
       13873  +
                        #[allow(clippy::needless_borrow)]
       13874  +
                        out.push_str(&bucket_arn.account_id());
       13875  +
                        out.push('.');
       13876  +
                        #[allow(clippy::needless_borrow)]
       13877  +
                        out.push_str(&outpost_id_ssa_1.as_ref() as &str);
       13878  +
                        out.push('.');
       13879  +
                        #[allow(clippy::needless_borrow)]
       13880  +
                        out.push_str(&url.authority());
       13881  +
                        out
       13882  +
                    })
       13883  +
                    .property(
       13884  +
                        "authSchemes",
       13885  +
                        vec![
       13886  +
                            ::aws_smithy_types::Document::from({
       13887  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13888  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13889  +
                                out.insert("name".to_string(), "sigv4a".to_string().into());
       13890  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13891  +
                                out.insert(
       13892  +
                                    "signingRegionSet".to_string(),
       13893  +
                                    vec![::aws_smithy_types::Document::from("*".to_string())].into(),
       13894  +
                                );
       13895  +
                                out
       13896  +
                            }),
       13897  +
                            ::aws_smithy_types::Document::from({
       13898  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13899  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13900  +
                                out.insert("name".to_string(), "sigv4".to_string().into());
       13901  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13902  +
                                out.insert("signingRegion".to_string(), effective_arn_region.to_owned().into());
       13903  +
                                out
       13904  +
                            }),
       13905  +
                        ],
       13906  +
                    )
       13907  +
                    .build(),
       13908  +
            ),
       13909  +
            Self::Result70 => ::std::result::Result::Ok(
       13910  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       13911  +
                    .url({
       13912  +
                        let mut out = String::new();
       13913  +
                        out.push_str("https://");
       13914  +
                        #[allow(clippy::needless_borrow)]
       13915  +
                        out.push_str(&access_point_name_ssa_2.as_ref() as &str);
       13916  +
                        out.push('-');
       13917  +
                        #[allow(clippy::needless_borrow)]
       13918  +
                        out.push_str(&bucket_arn.account_id());
       13919  +
                        out.push('.');
       13920  +
                        #[allow(clippy::needless_borrow)]
       13921  +
                        out.push_str(&outpost_id_ssa_1.as_ref() as &str);
       13922  +
                        out.push_str(".s3-outposts.");
       13923  +
                        #[allow(clippy::needless_borrow)]
       13924  +
                        out.push_str(&effective_arn_region.as_ref() as &str);
       13925  +
                        out.push('.');
       13926  +
                        #[allow(clippy::needless_borrow)]
       13927  +
                        out.push_str(&bucket_partition.dns_suffix());
       13928  +
                        out
       13929  +
                    })
       13930  +
                    .property(
       13931  +
                        "authSchemes",
       13932  +
                        vec![
       13933  +
                            ::aws_smithy_types::Document::from({
       13934  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13935  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13936  +
                                out.insert("name".to_string(), "sigv4a".to_string().into());
       13937  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13938  +
                                out.insert(
       13939  +
                                    "signingRegionSet".to_string(),
       13940  +
                                    vec![::aws_smithy_types::Document::from("*".to_string())].into(),
       13941  +
                                );
       13942  +
                                out
       13943  +
                            }),
       13944  +
                            ::aws_smithy_types::Document::from({
       13945  +
                                let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       13946  +
                                out.insert("disableDoubleEncoding".to_string(), true.into());
       13947  +
                                out.insert("name".to_string(), "sigv4".to_string().into());
       13948  +
                                out.insert("signingName".to_string(), "s3-outposts".to_string().into());
       13949  +
                                out.insert("signingRegion".to_string(), effective_arn_region.to_owned().into());
       13950  +
                                out
       13951  +
                            }),
       13952  +
                        ],
       13953  +
                    )
       13954  +
                    .build(),
       13955  +
            ),
       13956  +
            Self::Result71 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13957  +
                let mut out = String::new();
       13958  +
                out.push_str("Expected an outpost type `accesspoint`, found ");
       13959  +
                #[allow(clippy::needless_borrow)]
       13960  +
                out.push_str(&outpost_type.as_ref() as &str);
       13961  +
                out
       13962  +
            })),
       13963  +
            Self::Result72 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13964  +
                "Invalid ARN: expected an access point name".to_string(),
       13965  +
            )),
       13966  +
            Self::Result73 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13967  +
                "Invalid ARN: Expected a 4-component resource".to_string(),
       13968  +
            )),
       13969  +
            Self::Result74 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13970  +
                let mut out = String::new();
       13971  +
                out.push_str("Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `");
       13972  +
                #[allow(clippy::needless_borrow)]
       13973  +
                out.push_str(&outpost_id_ssa_1.as_ref() as &str);
       13974  +
                out.push('`');
       13975  +
                out
       13976  +
            })),
       13977  +
            Self::Result75 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13978  +
                "Invalid ARN: The Outpost Id was not set".to_string(),
       13979  +
            )),
       13980  +
            Self::Result76 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13981  +
                let mut out = String::new();
       13982  +
                out.push_str("Invalid ARN: Unrecognized format: ");
       13983  +
                #[allow(clippy::needless_borrow)]
       13984  +
                out.push_str(&bucket.as_ref() as &str);
       13985  +
                out.push_str(" (type: ");
       13986  +
                #[allow(clippy::needless_borrow)]
       13987  +
                out.push_str(&arn_type.as_ref() as &str);
       13988  +
                out.push(')');
       13989  +
                out
       13990  +
            })),
       13991  +
            Self::Result77 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       13992  +
                "Invalid ARN: No ARN type specified".to_string(),
       13993  +
            )),
       13994  +
            Self::Result78 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message({
       13995  +
                let mut out = String::new();
       13996  +
                out.push_str("Invalid ARN: `");
       13997  +
                #[allow(clippy::needless_borrow)]
       13998  +
                out.push_str(&bucket.as_ref() as &str);
       13999  +
                out.push_str("` was not a valid ARN");
       14000  +
                out
       14001  +
            })),
       14002  +
            Self::Result79 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       14003  +
                "Path-style addressing cannot be used with ARN buckets".to_string(),
       14004  +
            )),
       14005  +
            Self::Result80 => ::std::result::Result::Ok(
       14006  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14007  +
                    .url({
       14008  +
                        let mut out = String::new();
       14009  +
                        out.push_str("https://s3-fips.dualstack.");
       14010  +
                        #[allow(clippy::needless_borrow)]
       14011  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       14012  +
                        out.push('.');
       14013  +
                        #[allow(clippy::needless_borrow)]
       14014  +
                        out.push_str(&partition_result.dns_suffix());
       14015  +
                        out.push('/');
       14016  +
                        #[allow(clippy::needless_borrow)]
       14017  +
                        out.push_str(&uri_encoded_bucket.as_ref() as &str);
       14018  +
                        out
       14019  +
                    })
       14020  +
                    .property(
       14021  +
                        "authSchemes",
       14022  +
                        vec![::aws_smithy_types::Document::from({
       14023  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14024  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14025  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14026  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14027  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14028  +
                            out
       14029  +
                        })],
       14030  +
                    )
       14031  +
                    .build(),
       14032  +
            ),
       14033  +
            Self::Result81 => ::std::result::Result::Ok(
       14034  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14035  +
                    .url({
       14036  +
                        let mut out = String::new();
       14037  +
                        out.push_str("https://s3-fips.");
       14038  +
                        #[allow(clippy::needless_borrow)]
       14039  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       14040  +
                        out.push('.');
       14041  +
                        #[allow(clippy::needless_borrow)]
       14042  +
                        out.push_str(&partition_result.dns_suffix());
       14043  +
                        out.push('/');
       14044  +
                        #[allow(clippy::needless_borrow)]
       14045  +
                        out.push_str(&uri_encoded_bucket.as_ref() as &str);
       14046  +
                        out
       14047  +
                    })
       14048  +
                    .property(
       14049  +
                        "authSchemes",
       14050  +
                        vec![::aws_smithy_types::Document::from({
       14051  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14052  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14053  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14054  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14055  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14056  +
                            out
       14057  +
                        })],
       14058  +
                    )
       14059  +
                    .build(),
       14060  +
            ),
       14061  +
            Self::Result82 => ::std::result::Result::Ok(
       14062  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14063  +
                    .url({
       14064  +
                        let mut out = String::new();
       14065  +
                        out.push_str("https://s3.dualstack.");
       14066  +
                        #[allow(clippy::needless_borrow)]
       14067  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       14068  +
                        out.push('.');
       14069  +
                        #[allow(clippy::needless_borrow)]
       14070  +
                        out.push_str(&partition_result.dns_suffix());
       14071  +
                        out.push('/');
       14072  +
                        #[allow(clippy::needless_borrow)]
       14073  +
                        out.push_str(&uri_encoded_bucket.as_ref() as &str);
       14074  +
                        out
       14075  +
                    })
       14076  +
                    .property(
       14077  +
                        "authSchemes",
       14078  +
                        vec![::aws_smithy_types::Document::from({
       14079  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14080  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14081  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14082  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14083  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14084  +
                            out
       14085  +
                        })],
       14086  +
                    )
       14087  +
                    .build(),
       14088  +
            ),
       14089  +
            Self::Result83 => ::std::result::Result::Ok(
       14090  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14091  +
                    .url({
       14092  +
                        let mut out = String::new();
       14093  +
                        #[allow(clippy::needless_borrow)]
       14094  +
                        out.push_str(&url.scheme());
       14095  +
                        out.push_str("://");
       14096  +
                        #[allow(clippy::needless_borrow)]
       14097  +
                        out.push_str(&url.authority());
       14098  +
                        #[allow(clippy::needless_borrow)]
       14099  +
                        out.push_str(&url.normalized_path());
       14100  +
                        #[allow(clippy::needless_borrow)]
       14101  +
                        out.push_str(&uri_encoded_bucket.as_ref() as &str);
       14102  +
                        out
       14103  +
                    })
       14104  +
                    .property(
       14105  +
                        "authSchemes",
       14106  +
                        vec![::aws_smithy_types::Document::from({
       14107  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14108  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14109  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14110  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14111  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14112  +
                            out
       14113  +
                        })],
       14114  +
                    )
       14115  +
                    .build(),
       14116  +
            ),
       14117  +
            Self::Result84 => ::std::result::Result::Ok(
       14118  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14119  +
                    .url({
       14120  +
                        let mut out = String::new();
       14121  +
                        out.push_str("https://s3.");
       14122  +
                        #[allow(clippy::needless_borrow)]
       14123  +
                        out.push_str(&partition_result.dns_suffix());
       14124  +
                        out.push('/');
       14125  +
                        #[allow(clippy::needless_borrow)]
       14126  +
                        out.push_str(&uri_encoded_bucket.as_ref() as &str);
       14127  +
                        out
       14128  +
                    })
       14129  +
                    .property(
       14130  +
                        "authSchemes",
       14131  +
                        vec![::aws_smithy_types::Document::from({
       14132  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14133  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14134  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14135  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14136  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14137  +
                            out
       14138  +
                        })],
       14139  +
                    )
       14140  +
                    .build(),
       14141  +
            ),
       14142  +
            Self::Result85 => ::std::result::Result::Ok(
       14143  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14144  +
                    .url({
       14145  +
                        let mut out = String::new();
       14146  +
                        out.push_str("https://s3.");
       14147  +
                        #[allow(clippy::needless_borrow)]
       14148  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       14149  +
                        out.push('.');
       14150  +
                        #[allow(clippy::needless_borrow)]
       14151  +
                        out.push_str(&partition_result.dns_suffix());
       14152  +
                        out.push('/');
       14153  +
                        #[allow(clippy::needless_borrow)]
       14154  +
                        out.push_str(&uri_encoded_bucket.as_ref() as &str);
       14155  +
                        out
       14156  +
                    })
       14157  +
                    .property(
       14158  +
                        "authSchemes",
       14159  +
                        vec![::aws_smithy_types::Document::from({
       14160  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14161  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14162  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14163  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14164  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14165  +
                            out
       14166  +
                        })],
       14167  +
                    )
       14168  +
                    .build(),
       14169  +
            ),
       14170  +
            Self::Result86 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       14171  +
                "Path-style addressing cannot be used with S3 Accelerate".to_string(),
       14172  +
            )),
       14173  +
            Self::Result87 => ::std::result::Result::Ok(
       14174  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14175  +
                    .url({
       14176  +
                        let mut out = String::new();
       14177  +
                        #[allow(clippy::needless_borrow)]
       14178  +
                        out.push_str(&url.scheme());
       14179  +
                        out.push_str("://");
       14180  +
                        #[allow(clippy::needless_borrow)]
       14181  +
                        out.push_str(&url.authority());
       14182  +
                        #[allow(clippy::needless_borrow)]
       14183  +
                        out.push_str(&url.path());
       14184  +
                        out
       14185  +
                    })
       14186  +
                    .property(
       14187  +
                        "authSchemes",
       14188  +
                        vec![::aws_smithy_types::Document::from({
       14189  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14190  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14191  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14192  +
                            out.insert("signingName".to_string(), "s3-object-lambda".to_string().into());
       14193  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14194  +
                            out
       14195  +
                        })],
       14196  +
                    )
       14197  +
                    .build(),
       14198  +
            ),
       14199  +
            Self::Result88 => ::std::result::Result::Ok(
       14200  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14201  +
                    .url({
       14202  +
                        let mut out = String::new();
       14203  +
                        out.push_str("https://s3-object-lambda-fips.");
       14204  +
                        #[allow(clippy::needless_borrow)]
       14205  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       14206  +
                        out.push('.');
       14207  +
                        #[allow(clippy::needless_borrow)]
       14208  +
                        out.push_str(&partition_result.dns_suffix());
       14209  +
                        out
       14210  +
                    })
       14211  +
                    .property(
       14212  +
                        "authSchemes",
       14213  +
                        vec![::aws_smithy_types::Document::from({
       14214  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14215  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14216  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14217  +
                            out.insert("signingName".to_string(), "s3-object-lambda".to_string().into());
       14218  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14219  +
                            out
       14220  +
                        })],
       14221  +
                    )
       14222  +
                    .build(),
       14223  +
            ),
       14224  +
            Self::Result89 => ::std::result::Result::Ok(
       14225  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14226  +
                    .url({
       14227  +
                        let mut out = String::new();
       14228  +
                        out.push_str("https://s3-object-lambda.");
       14229  +
                        #[allow(clippy::needless_borrow)]
       14230  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       14231  +
                        out.push('.');
       14232  +
                        #[allow(clippy::needless_borrow)]
       14233  +
                        out.push_str(&partition_result.dns_suffix());
       14234  +
                        out
       14235  +
                    })
       14236  +
                    .property(
       14237  +
                        "authSchemes",
       14238  +
                        vec![::aws_smithy_types::Document::from({
       14239  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14240  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14241  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14242  +
                            out.insert("signingName".to_string(), "s3-object-lambda".to_string().into());
       14243  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14244  +
                            out
       14245  +
                        })],
       14246  +
                    )
       14247  +
                    .build(),
       14248  +
            ),
       14249  +
            Self::Result90 => ::std::result::Result::Ok(
       14250  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14251  +
                    .url({
       14252  +
                        let mut out = String::new();
       14253  +
                        out.push_str("https://s3-fips.dualstack.");
       14254  +
                        #[allow(clippy::needless_borrow)]
       14255  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       14256  +
                        out.push('.');
       14257  +
                        #[allow(clippy::needless_borrow)]
       14258  +
                        out.push_str(&partition_result.dns_suffix());
       14259  +
                        out
       14260  +
                    })
       14261  +
                    .property(
       14262  +
                        "authSchemes",
       14263  +
                        vec![::aws_smithy_types::Document::from({
       14264  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14265  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14266  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14267  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14268  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14269  +
                            out
       14270  +
                        })],
       14271  +
                    )
       14272  +
                    .build(),
       14273  +
            ),
       14274  +
            Self::Result91 => ::std::result::Result::Ok(
       14275  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14276  +
                    .url({
       14277  +
                        let mut out = String::new();
       14278  +
                        out.push_str("https://s3-fips.");
       14279  +
                        #[allow(clippy::needless_borrow)]
       14280  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       14281  +
                        out.push('.');
       14282  +
                        #[allow(clippy::needless_borrow)]
       14283  +
                        out.push_str(&partition_result.dns_suffix());
       14284  +
                        out
       14285  +
                    })
       14286  +
                    .property(
       14287  +
                        "authSchemes",
       14288  +
                        vec![::aws_smithy_types::Document::from({
       14289  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14290  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14291  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14292  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14293  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14294  +
                            out
       14295  +
                        })],
       14296  +
                    )
       14297  +
                    .build(),
       14298  +
            ),
       14299  +
            Self::Result92 => ::std::result::Result::Ok(
       14300  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14301  +
                    .url({
       14302  +
                        let mut out = String::new();
       14303  +
                        out.push_str("https://s3.dualstack.");
       14304  +
                        #[allow(clippy::needless_borrow)]
       14305  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       14306  +
                        out.push('.');
       14307  +
                        #[allow(clippy::needless_borrow)]
       14308  +
                        out.push_str(&partition_result.dns_suffix());
       14309  +
                        out
       14310  +
                    })
       14311  +
                    .property(
       14312  +
                        "authSchemes",
       14313  +
                        vec![::aws_smithy_types::Document::from({
       14314  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14315  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14316  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14317  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14318  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14319  +
                            out
       14320  +
                        })],
       14321  +
                    )
       14322  +
                    .build(),
       14323  +
            ),
       14324  +
            Self::Result93 => ::std::result::Result::Ok(
       14325  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14326  +
                    .url({
       14327  +
                        let mut out = String::new();
       14328  +
                        #[allow(clippy::needless_borrow)]
       14329  +
                        out.push_str(&url.scheme());
       14330  +
                        out.push_str("://");
       14331  +
                        #[allow(clippy::needless_borrow)]
       14332  +
                        out.push_str(&url.authority());
       14333  +
                        #[allow(clippy::needless_borrow)]
       14334  +
                        out.push_str(&url.path());
       14335  +
                        out
       14336  +
                    })
       14337  +
                    .property(
       14338  +
                        "authSchemes",
       14339  +
                        vec![::aws_smithy_types::Document::from({
       14340  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14341  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14342  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14343  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14344  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14345  +
                            out
       14346  +
                        })],
       14347  +
                    )
       14348  +
                    .build(),
       14349  +
            ),
       14350  +
            Self::Result94 => ::std::result::Result::Ok(
       14351  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14352  +
                    .url({
       14353  +
                        let mut out = String::new();
       14354  +
                        out.push_str("https://s3.");
       14355  +
                        #[allow(clippy::needless_borrow)]
       14356  +
                        out.push_str(&partition_result.dns_suffix());
       14357  +
                        out
       14358  +
                    })
       14359  +
                    .property(
       14360  +
                        "authSchemes",
       14361  +
                        vec![::aws_smithy_types::Document::from({
       14362  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14363  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14364  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14365  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14366  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14367  +
                            out
       14368  +
                        })],
       14369  +
                    )
       14370  +
                    .build(),
       14371  +
            ),
       14372  +
            Self::Result95 => ::std::result::Result::Ok(
       14373  +
                ::aws_smithy_types::endpoint::Endpoint::builder()
       14374  +
                    .url({
       14375  +
                        let mut out = String::new();
       14376  +
                        out.push_str("https://s3.");
       14377  +
                        #[allow(clippy::needless_borrow)]
       14378  +
                        out.push_str(&effective_std_region.as_ref() as &str);
       14379  +
                        out.push('.');
       14380  +
                        #[allow(clippy::needless_borrow)]
       14381  +
                        out.push_str(&partition_result.dns_suffix());
       14382  +
                        out
       14383  +
                    })
       14384  +
                    .property(
       14385  +
                        "authSchemes",
       14386  +
                        vec![::aws_smithy_types::Document::from({
       14387  +
                            let mut out = ::std::collections::HashMap::<String, ::aws_smithy_types::Document>::new();
       14388  +
                            out.insert("disableDoubleEncoding".to_string(), true.into());
       14389  +
                            out.insert("name".to_string(), "sigv4".to_string().into());
       14390  +
                            out.insert("signingName".to_string(), "s3".to_string().into());
       14391  +
                            out.insert("signingRegion".to_string(), effective_std_region.to_owned().into());
       14392  +
                            out
       14393  +
                        })],
       14394  +
                    )
       14395  +
                    .build(),
       14396  +
            ),
       14397  +
            Self::Result96 => ::std::result::Result::Err(::aws_smithy_http::endpoint::ResolveEndpointError::message(
       14398  +
                "A region must be set when sending requests to S3.".to_string(),
       14399  +
            )),
       14400  +
        }
       14401  +
    }
       14402  +
}
       14403  +
       14404  +
const RESULTS: [ResultEndpoint; 97] = [
       14405  +
    ResultEndpoint::Result0,
       14406  +
    ResultEndpoint::Result1,
       14407  +
    ResultEndpoint::Result2,
       14408  +
    ResultEndpoint::Result3,
       14409  +
    ResultEndpoint::Result4,
       14410  +
    ResultEndpoint::Result5,
       14411  +
    ResultEndpoint::Result6,
       14412  +
    ResultEndpoint::Result7,
       14413  +
    ResultEndpoint::Result8,
       14414  +
    ResultEndpoint::Result9,
       14415  +
    ResultEndpoint::Result10,
       14416  +
    ResultEndpoint::Result11,
       14417  +
    ResultEndpoint::Result12,
       14418  +
    ResultEndpoint::Result13,
       14419  +
    ResultEndpoint::Result14,
       14420  +
    ResultEndpoint::Result15,
       14421  +
    ResultEndpoint::Result16,
       14422  +
    ResultEndpoint::Result17,
       14423  +
    ResultEndpoint::Result18,
       14424  +
    ResultEndpoint::Result19,
       14425  +
    ResultEndpoint::Result20,
       14426  +
    ResultEndpoint::Result21,
       14427  +
    ResultEndpoint::Result22,
       14428  +
    ResultEndpoint::Result23,
       14429  +
    ResultEndpoint::Result24,
       14430  +
    ResultEndpoint::Result25,
       14431  +
    ResultEndpoint::Result26,
       14432  +
    ResultEndpoint::Result27,
       14433  +
    ResultEndpoint::Result28,
       14434  +
    ResultEndpoint::Result29,
       14435  +
    ResultEndpoint::Result30,
       14436  +
    ResultEndpoint::Result31,
       14437  +
    ResultEndpoint::Result32,
       14438  +
    ResultEndpoint::Result33,
       14439  +
    ResultEndpoint::Result34,
       14440  +
    ResultEndpoint::Result35,
       14441  +
    ResultEndpoint::Result36,
       14442  +
    ResultEndpoint::Result37,
       14443  +
    ResultEndpoint::Result38,
       14444  +
    ResultEndpoint::Result39,
       14445  +
    ResultEndpoint::Result40,
       14446  +
    ResultEndpoint::Result41,
       14447  +
    ResultEndpoint::Result42,
       14448  +
    ResultEndpoint::Result43,
       14449  +
    ResultEndpoint::Result44,
       14450  +
    ResultEndpoint::Result45,
       14451  +
    ResultEndpoint::Result46,
       14452  +
    ResultEndpoint::Result47,
       14453  +
    ResultEndpoint::Result48,
       14454  +
    ResultEndpoint::Result49,
       14455  +
    ResultEndpoint::Result50,
       14456  +
    ResultEndpoint::Result51,
       14457  +
    ResultEndpoint::Result52,
       14458  +
    ResultEndpoint::Result53,
       14459  +
    ResultEndpoint::Result54,
       14460  +
    ResultEndpoint::Result55,
       14461  +
    ResultEndpoint::Result56,
       14462  +
    ResultEndpoint::Result57,
       14463  +
    ResultEndpoint::Result58,
       14464  +
    ResultEndpoint::Result59,
       14465  +
    ResultEndpoint::Result60,
       14466  +
    ResultEndpoint::Result61,
       14467  +
    ResultEndpoint::Result62,
       14468  +
    ResultEndpoint::Result63,
       14469  +
    ResultEndpoint::Result64,
       14470  +
    ResultEndpoint::Result65,
       14471  +
    ResultEndpoint::Result66,
       14472  +
    ResultEndpoint::Result67,
       14473  +
    ResultEndpoint::Result68,
       14474  +
    ResultEndpoint::Result69,
       14475  +
    ResultEndpoint::Result70,
       14476  +
    ResultEndpoint::Result71,
       14477  +
    ResultEndpoint::Result72,
       14478  +
    ResultEndpoint::Result73,
       14479  +
    ResultEndpoint::Result74,
       14480  +
    ResultEndpoint::Result75,
       14481  +
    ResultEndpoint::Result76,
       14482  +
    ResultEndpoint::Result77,
       14483  +
    ResultEndpoint::Result78,
       14484  +
    ResultEndpoint::Result79,
       14485  +
    ResultEndpoint::Result80,
       14486  +
    ResultEndpoint::Result81,
       14487  +
    ResultEndpoint::Result82,
       14488  +
    ResultEndpoint::Result83,
       14489  +
    ResultEndpoint::Result84,
       14490  +
    ResultEndpoint::Result85,
       14491  +
    ResultEndpoint::Result86,
       14492  +
    ResultEndpoint::Result87,
       14493  +
    ResultEndpoint::Result88,
       14494  +
    ResultEndpoint::Result89,
       14495  +
    ResultEndpoint::Result90,
       14496  +
    ResultEndpoint::Result91,
       14497  +
    ResultEndpoint::Result92,
       14498  +
    ResultEndpoint::Result93,
       14499  +
    ResultEndpoint::Result94,
       14500  +
    ResultEndpoint::Result95,
       14501  +
    ResultEndpoint::Result96,
       14502  +
];
       14503  +
const NODES: [crate::endpoint_lib::bdd_interpreter::BddNode; 521] = [
       14504  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14505  +
        condition_index: -1,
       14506  +
        high_ref: 1,
       14507  +
        low_ref: -1,
       14508  +
    },
       14509  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14510  +
        condition_index: 5,
       14511  +
        high_ref: 100000002,
       14512  +
        low_ref: 100000004,
       14513  +
    },
       14514  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14515  +
        condition_index: 55,
       14516  +
        high_ref: 100000015,
       14517  +
        low_ref: 100000020,
       14518  +
    },
       14519  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14520  +
        condition_index: 46,
       14521  +
        high_ref: 100000015,
       14522  +
        low_ref: 3,
       14523  +
    },
       14524  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14525  +
        condition_index: 55,
       14526  +
        high_ref: 100000019,
       14527  +
        low_ref: 100000020,
       14528  +
    },
       14529  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14530  +
        condition_index: 46,
       14531  +
        high_ref: 100000017,
       14532  +
        low_ref: 5,
       14533  +
    },
       14534  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14535  +
        condition_index: 25,
       14536  +
        high_ref: 4,
       14537  +
        low_ref: 6,
       14538  +
    },
       14539  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14540  +
        condition_index: 23,
       14541  +
        high_ref: 7,
       14542  +
        low_ref: 100000021,
       14543  +
    },
       14544  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14545  +
        condition_index: 44,
       14546  +
        high_ref: 100000035,
       14547  +
        low_ref: 100000034,
       14548  +
    },
       14549  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14550  +
        condition_index: 37,
       14551  +
        high_ref: 9,
       14552  +
        low_ref: 100000096,
       14553  +
    },
       14554  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14555  +
        condition_index: 36,
       14556  +
        high_ref: 100000086,
       14557  +
        low_ref: 10,
       14558  +
    },
       14559  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14560  +
        condition_index: 35,
       14561  +
        high_ref: 100000078,
       14562  +
        low_ref: 11,
       14563  +
    },
       14564  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14565  +
        condition_index: 31,
       14566  +
        high_ref: 100000079,
       14567  +
        low_ref: 12,
       14568  +
    },
       14569  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14570  +
        condition_index: 30,
       14571  +
        high_ref: 100000023,
       14572  +
        low_ref: 100000034,
       14573  +
    },
       14574  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14575  +
        condition_index: 73,
       14576  +
        high_ref: 100000058,
       14577  +
        low_ref: 100000064,
       14578  +
    },
       14579  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14580  +
        condition_index: 71,
       14581  +
        high_ref: 100000051,
       14582  +
        low_ref: 100000043,
       14583  +
    },
       14584  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14585  +
        condition_index: 70,
       14586  +
        high_ref: 16,
       14587  +
        low_ref: 100000044,
       14588  +
    },
       14589  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14590  +
        condition_index: 68,
       14591  +
        high_ref: 17,
       14592  +
        low_ref: 100000057,
       14593  +
    },
       14594  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14595  +
        condition_index: 67,
       14596  +
        high_ref: 18,
       14597  +
        low_ref: 100000045,
       14598  +
    },
       14599  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14600  +
        condition_index: 66,
       14601  +
        high_ref: 19,
       14602  +
        low_ref: 100000046,
       14603  +
    },
       14604  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14605  +
        condition_index: 65,
       14606  +
        high_ref: 100000047,
       14607  +
        low_ref: 20,
       14608  +
    },
       14609  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14610  +
        condition_index: 65,
       14611  +
        high_ref: 100000047,
       14612  +
        low_ref: 100000038,
       14613  +
    },
       14614  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14615  +
        condition_index: 59,
       14616  +
        high_ref: 21,
       14617  +
        low_ref: 22,
       14618  +
    },
       14619  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14620  +
        condition_index: 58,
       14621  +
        high_ref: 21,
       14622  +
        low_ref: 23,
       14623  +
    },
       14624  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14625  +
        condition_index: 59,
       14626  +
        high_ref: 100000047,
       14627  +
        low_ref: 22,
       14628  +
    },
       14629  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14630  +
        condition_index: 58,
       14631  +
        high_ref: 100000047,
       14632  +
        low_ref: 25,
       14633  +
    },
       14634  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14635  +
        condition_index: 54,
       14636  +
        high_ref: 24,
       14637  +
        low_ref: 26,
       14638  +
    },
       14639  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14640  +
        condition_index: 53,
       14641  +
        high_ref: 100000037,
       14642  +
        low_ref: 27,
       14643  +
    },
       14644  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14645  +
        condition_index: 45,
       14646  +
        high_ref: 15,
       14647  +
        low_ref: 28,
       14648  +
    },
       14649  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14650  +
        condition_index: 43,
       14651  +
        high_ref: 100000035,
       14652  +
        low_ref: 29,
       14653  +
    },
       14654  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14655  +
        condition_index: 42,
       14656  +
        high_ref: 100000049,
       14657  +
        low_ref: 30,
       14658  +
    },
       14659  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14660  +
        condition_index: 41,
       14661  +
        high_ref: 31,
       14662  +
        low_ref: 100000049,
       14663  +
    },
       14664  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14665  +
        condition_index: 52,
       14666  +
        high_ref: 100000065,
       14667  +
        low_ref: 100000076,
       14668  +
    },
       14669  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14670  +
        condition_index: 43,
       14671  +
        high_ref: 100000050,
       14672  +
        low_ref: 33,
       14673  +
    },
       14674  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14675  +
        condition_index: 40,
       14676  +
        high_ref: 32,
       14677  +
        low_ref: 34,
       14678  +
    },
       14679  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14680  +
        condition_index: 39,
       14681  +
        high_ref: 100000077,
       14682  +
        low_ref: 35,
       14683  +
    },
       14684  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14685  +
        condition_index: 38,
       14686  +
        high_ref: 36,
       14687  +
        low_ref: 100000077,
       14688  +
    },
       14689  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14690  +
        condition_index: 33,
       14691  +
        high_ref: 37,
       14692  +
        low_ref: 11,
       14693  +
    },
       14694  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14695  +
        condition_index: 31,
       14696  +
        high_ref: 38,
       14697  +
        low_ref: 12,
       14698  +
    },
       14699  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14700  +
        condition_index: 21,
       14701  +
        high_ref: 14,
       14702  +
        low_ref: 39,
       14703  +
    },
       14704  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14705  +
        condition_index: 19,
       14706  +
        high_ref: 13,
       14707  +
        low_ref: 40,
       14708  +
    },
       14709  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14710  +
        condition_index: 60,
       14711  +
        high_ref: 100000026,
       14712  +
        low_ref: 100000027,
       14713  +
    },
       14714  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14715  +
        condition_index: 30,
       14716  +
        high_ref: 42,
       14717  +
        low_ref: 100000034,
       14718  +
    },
       14719  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14720  +
        condition_index: 21,
       14721  +
        high_ref: 43,
       14722  +
        low_ref: 39,
       14723  +
    },
       14724  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14725  +
        condition_index: 19,
       14726  +
        high_ref: 13,
       14727  +
        low_ref: 44,
       14728  +
    },
       14729  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14730  +
        condition_index: 16,
       14731  +
        high_ref: 41,
       14732  +
        low_ref: 45,
       14733  +
    },
       14734  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14735  +
        condition_index: 15,
       14736  +
        high_ref: 8,
       14737  +
        low_ref: 46,
       14738  +
    },
       14739  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14740  +
        condition_index: 14,
       14741  +
        high_ref: 47,
       14742  +
        low_ref: 46,
       14743  +
    },
       14744  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14745  +
        condition_index: 13,
       14746  +
        high_ref: 48,
       14747  +
        low_ref: 46,
       14748  +
    },
       14749  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14750  +
        condition_index: 12,
       14751  +
        high_ref: 49,
       14752  +
        low_ref: 46,
       14753  +
    },
       14754  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14755  +
        condition_index: 11,
       14756  +
        high_ref: 50,
       14757  +
        low_ref: 46,
       14758  +
    },
       14759  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14760  +
        condition_index: 35,
       14761  +
        high_ref: 100000078,
       14762  +
        low_ref: 100000096,
       14763  +
    },
       14764  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14765  +
        condition_index: 31,
       14766  +
        high_ref: 100000079,
       14767  +
        low_ref: 52,
       14768  +
    },
       14769  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14770  +
        condition_index: 53,
       14771  +
        high_ref: 100000037,
       14772  +
        low_ref: 26,
       14773  +
    },
       14774  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14775  +
        condition_index: 45,
       14776  +
        high_ref: 15,
       14777  +
        low_ref: 54,
       14778  +
    },
       14779  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14780  +
        condition_index: 43,
       14781  +
        high_ref: 100000035,
       14782  +
        low_ref: 55,
       14783  +
    },
       14784  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14785  +
        condition_index: 42,
       14786  +
        high_ref: 100000049,
       14787  +
        low_ref: 56,
       14788  +
    },
       14789  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14790  +
        condition_index: 41,
       14791  +
        high_ref: 57,
       14792  +
        low_ref: 100000049,
       14793  +
    },
       14794  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14795  +
        condition_index: 40,
       14796  +
        high_ref: 58,
       14797  +
        low_ref: 34,
       14798  +
    },
       14799  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14800  +
        condition_index: 39,
       14801  +
        high_ref: 100000077,
       14802  +
        low_ref: 59,
       14803  +
    },
       14804  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14805  +
        condition_index: 38,
       14806  +
        high_ref: 60,
       14807  +
        low_ref: 100000077,
       14808  +
    },
       14809  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14810  +
        condition_index: 33,
       14811  +
        high_ref: 61,
       14812  +
        low_ref: 100000096,
       14813  +
    },
       14814  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14815  +
        condition_index: 31,
       14816  +
        high_ref: 62,
       14817  +
        low_ref: 52,
       14818  +
    },
       14819  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14820  +
        condition_index: 19,
       14821  +
        high_ref: 53,
       14822  +
        low_ref: 63,
       14823  +
    },
       14824  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14825  +
        condition_index: 9,
       14826  +
        high_ref: 51,
       14827  +
        low_ref: 64,
       14828  +
    },
       14829  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14830  +
        condition_index: 8,
       14831  +
        high_ref: 100000006,
       14832  +
        low_ref: 65,
       14833  +
    },
       14834  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14835  +
        condition_index: 7,
       14836  +
        high_ref: 100000006,
       14837  +
        low_ref: 66,
       14838  +
    },
       14839  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14840  +
        condition_index: 44,
       14841  +
        high_ref: 100000092,
       14842  +
        low_ref: 100000034,
       14843  +
    },
       14844  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14845  +
        condition_index: 37,
       14846  +
        high_ref: 9,
       14847  +
        low_ref: 68,
       14848  +
    },
       14849  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14850  +
        condition_index: 24,
       14851  +
        high_ref: 100000014,
       14852  +
        low_ref: 69,
       14853  +
    },
       14854  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14855  +
        condition_index: 20,
       14856  +
        high_ref: 70,
       14857  +
        low_ref: 69,
       14858  +
    },
       14859  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14860  +
        condition_index: 18,
       14861  +
        high_ref: 71,
       14862  +
        low_ref: 69,
       14863  +
    },
       14864  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14865  +
        condition_index: 17,
       14866  +
        high_ref: 72,
       14867  +
        low_ref: 69,
       14868  +
    },
       14869  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14870  +
        condition_index: 9,
       14871  +
        high_ref: 73,
       14872  +
        low_ref: 100000096,
       14873  +
    },
       14874  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14875  +
        condition_index: 6,
       14876  +
        high_ref: 67,
       14877  +
        low_ref: 74,
       14878  +
    },
       14879  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14880  +
        condition_index: 44,
       14881  +
        high_ref: 100000036,
       14882  +
        low_ref: 100000034,
       14883  +
    },
       14884  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14885  +
        condition_index: 37,
       14886  +
        high_ref: 76,
       14887  +
        low_ref: 100000096,
       14888  +
    },
       14889  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14890  +
        condition_index: 36,
       14891  +
        high_ref: 100000086,
       14892  +
        low_ref: 77,
       14893  +
    },
       14894  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14895  +
        condition_index: 35,
       14896  +
        high_ref: 100000078,
       14897  +
        low_ref: 78,
       14898  +
    },
       14899  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14900  +
        condition_index: 31,
       14901  +
        high_ref: 100000079,
       14902  +
        low_ref: 79,
       14903  +
    },
       14904  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14905  +
        condition_index: 73,
       14906  +
        high_ref: 100000060,
       14907  +
        low_ref: 100000064,
       14908  +
    },
       14909  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14910  +
        condition_index: 45,
       14911  +
        high_ref: 81,
       14912  +
        low_ref: 28,
       14913  +
    },
       14914  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14915  +
        condition_index: 43,
       14916  +
        high_ref: 100000036,
       14917  +
        low_ref: 82,
       14918  +
    },
       14919  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14920  +
        condition_index: 42,
       14921  +
        high_ref: 100000049,
       14922  +
        low_ref: 83,
       14923  +
    },
       14924  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14925  +
        condition_index: 41,
       14926  +
        high_ref: 84,
       14927  +
        low_ref: 100000049,
       14928  +
    },
       14929  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14930  +
        condition_index: 52,
       14931  +
        high_ref: 100000067,
       14932  +
        low_ref: 100000076,
       14933  +
    },
       14934  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14935  +
        condition_index: 43,
       14936  +
        high_ref: 100000050,
       14937  +
        low_ref: 86,
       14938  +
    },
       14939  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14940  +
        condition_index: 40,
       14941  +
        high_ref: 85,
       14942  +
        low_ref: 87,
       14943  +
    },
       14944  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14945  +
        condition_index: 39,
       14946  +
        high_ref: 100000077,
       14947  +
        low_ref: 88,
       14948  +
    },
       14949  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14950  +
        condition_index: 38,
       14951  +
        high_ref: 89,
       14952  +
        low_ref: 100000077,
       14953  +
    },
       14954  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14955  +
        condition_index: 33,
       14956  +
        high_ref: 90,
       14957  +
        low_ref: 78,
       14958  +
    },
       14959  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14960  +
        condition_index: 31,
       14961  +
        high_ref: 91,
       14962  +
        low_ref: 79,
       14963  +
    },
       14964  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14965  +
        condition_index: 21,
       14966  +
        high_ref: 14,
       14967  +
        low_ref: 92,
       14968  +
    },
       14969  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14970  +
        condition_index: 19,
       14971  +
        high_ref: 80,
       14972  +
        low_ref: 93,
       14973  +
    },
       14974  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14975  +
        condition_index: 30,
       14976  +
        high_ref: 100000031,
       14977  +
        low_ref: 100000034,
       14978  +
    },
       14979  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14980  +
        condition_index: 21,
       14981  +
        high_ref: 95,
       14982  +
        low_ref: 92,
       14983  +
    },
       14984  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14985  +
        condition_index: 19,
       14986  +
        high_ref: 80,
       14987  +
        low_ref: 96,
       14988  +
    },
       14989  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14990  +
        condition_index: 16,
       14991  +
        high_ref: 94,
       14992  +
        low_ref: 97,
       14993  +
    },
       14994  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       14995  +
        condition_index: 15,
       14996  +
        high_ref: 8,
       14997  +
        low_ref: 98,
       14998  +
    },
       14999  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15000  +
        condition_index: 14,
       15001  +
        high_ref: 99,
       15002  +
        low_ref: 98,
       15003  +
    },
       15004  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15005  +
        condition_index: 13,
       15006  +
        high_ref: 100,
       15007  +
        low_ref: 98,
       15008  +
    },
       15009  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15010  +
        condition_index: 12,
       15011  +
        high_ref: 101,
       15012  +
        low_ref: 98,
       15013  +
    },
       15014  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15015  +
        condition_index: 11,
       15016  +
        high_ref: 102,
       15017  +
        low_ref: 98,
       15018  +
    },
       15019  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15020  +
        condition_index: 45,
       15021  +
        high_ref: 81,
       15022  +
        low_ref: 54,
       15023  +
    },
       15024  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15025  +
        condition_index: 43,
       15026  +
        high_ref: 100000036,
       15027  +
        low_ref: 104,
       15028  +
    },
       15029  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15030  +
        condition_index: 42,
       15031  +
        high_ref: 100000049,
       15032  +
        low_ref: 105,
       15033  +
    },
       15034  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15035  +
        condition_index: 41,
       15036  +
        high_ref: 106,
       15037  +
        low_ref: 100000049,
       15038  +
    },
       15039  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15040  +
        condition_index: 40,
       15041  +
        high_ref: 107,
       15042  +
        low_ref: 87,
       15043  +
    },
       15044  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15045  +
        condition_index: 39,
       15046  +
        high_ref: 100000077,
       15047  +
        low_ref: 108,
       15048  +
    },
       15049  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15050  +
        condition_index: 38,
       15051  +
        high_ref: 109,
       15052  +
        low_ref: 100000077,
       15053  +
    },
       15054  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15055  +
        condition_index: 33,
       15056  +
        high_ref: 110,
       15057  +
        low_ref: 100000096,
       15058  +
    },
       15059  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15060  +
        condition_index: 31,
       15061  +
        high_ref: 111,
       15062  +
        low_ref: 52,
       15063  +
    },
       15064  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15065  +
        condition_index: 19,
       15066  +
        high_ref: 53,
       15067  +
        low_ref: 112,
       15068  +
    },
       15069  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15070  +
        condition_index: 9,
       15071  +
        high_ref: 103,
       15072  +
        low_ref: 113,
       15073  +
    },
       15074  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15075  +
        condition_index: 8,
       15076  +
        high_ref: 100000006,
       15077  +
        low_ref: 114,
       15078  +
    },
       15079  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15080  +
        condition_index: 7,
       15081  +
        high_ref: 100000006,
       15082  +
        low_ref: 115,
       15083  +
    },
       15084  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15085  +
        condition_index: 63,
       15086  +
        high_ref: 100000094,
       15087  +
        low_ref: 100000095,
       15088  +
    },
       15089  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15090  +
        condition_index: 61,
       15091  +
        high_ref: 117,
       15092  +
        low_ref: 100000095,
       15093  +
    },
       15094  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15095  +
        condition_index: 60,
       15096  +
        high_ref: 100000094,
       15097  +
        low_ref: 118,
       15098  +
    },
       15099  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15100  +
        condition_index: 44,
       15101  +
        high_ref: 119,
       15102  +
        low_ref: 100000034,
       15103  +
    },
       15104  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15105  +
        condition_index: 37,
       15106  +
        high_ref: 76,
       15107  +
        low_ref: 120,
       15108  +
    },
       15109  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15110  +
        condition_index: 24,
       15111  +
        high_ref: 100000014,
       15112  +
        low_ref: 121,
       15113  +
    },
       15114  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15115  +
        condition_index: 20,
       15116  +
        high_ref: 122,
       15117  +
        low_ref: 121,
       15118  +
    },
       15119  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15120  +
        condition_index: 18,
       15121  +
        high_ref: 123,
       15122  +
        low_ref: 121,
       15123  +
    },
       15124  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15125  +
        condition_index: 17,
       15126  +
        high_ref: 124,
       15127  +
        low_ref: 121,
       15128  +
    },
       15129  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15130  +
        condition_index: 9,
       15131  +
        high_ref: 125,
       15132  +
        low_ref: 100000096,
       15133  +
    },
       15134  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15135  +
        condition_index: 6,
       15136  +
        high_ref: 116,
       15137  +
        low_ref: 126,
       15138  +
    },
       15139  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15140  +
        condition_index: 5,
       15141  +
        high_ref: 75,
       15142  +
        low_ref: 127,
       15143  +
    },
       15144  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15145  +
        condition_index: 4,
       15146  +
        high_ref: 2,
       15147  +
        low_ref: 128,
       15148  +
    },
       15149  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15150  +
        condition_index: 3,
       15151  +
        high_ref: 100000001,
       15152  +
        low_ref: 129,
       15153  +
    },
       15154  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15155  +
        condition_index: 5,
       15156  +
        high_ref: 100000002,
       15157  +
        low_ref: 100000003,
       15158  +
    },
       15159  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15160  +
        condition_index: 51,
       15161  +
        high_ref: 100000011,
       15162  +
        low_ref: 100000012,
       15163  +
    },
       15164  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15165  +
        condition_index: 50,
       15166  +
        high_ref: 100000011,
       15167  +
        low_ref: 132,
       15168  +
    },
       15169  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15170  +
        condition_index: 49,
       15171  +
        high_ref: 100000011,
       15172  +
        low_ref: 133,
       15173  +
    },
       15174  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15175  +
        condition_index: 48,
       15176  +
        high_ref: 100000011,
       15177  +
        low_ref: 134,
       15178  +
    },
       15179  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15180  +
        condition_index: 47,
       15181  +
        high_ref: 100000011,
       15182  +
        low_ref: 135,
       15183  +
    },
       15184  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15185  +
        condition_index: 36,
       15186  +
        high_ref: 100000010,
       15187  +
        low_ref: 136,
       15188  +
    },
       15189  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15190  +
        condition_index: 24,
       15191  +
        high_ref: 137,
       15192  +
        low_ref: 136,
       15193  +
    },
       15194  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15195  +
        condition_index: 36,
       15196  +
        high_ref: 100000010,
       15197  +
        low_ref: 100000012,
       15198  +
    },
       15199  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15200  +
        condition_index: 24,
       15201  +
        high_ref: 139,
       15202  +
        low_ref: 100000012,
       15203  +
    },
       15204  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15205  +
        condition_index: 22,
       15206  +
        high_ref: 138,
       15207  +
        low_ref: 140,
       15208  +
    },
       15209  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15210  +
        condition_index: 36,
       15211  +
        high_ref: 100000010,
       15212  +
        low_ref: 100000009,
       15213  +
    },
       15214  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15215  +
        condition_index: 24,
       15216  +
        high_ref: 142,
       15217  +
        low_ref: 100000009,
       15218  +
    },
       15219  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15220  +
        condition_index: 21,
       15221  +
        high_ref: 141,
       15222  +
        low_ref: 143,
       15223  +
    },
       15224  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15225  +
        condition_index: 21,
       15226  +
        high_ref: 100000012,
       15227  +
        low_ref: 100000009,
       15228  +
    },
       15229  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15230  +
        condition_index: 20,
       15231  +
        high_ref: 144,
       15232  +
        low_ref: 145,
       15233  +
    },
       15234  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15235  +
        condition_index: 18,
       15236  +
        high_ref: 146,
       15237  +
        low_ref: 145,
       15238  +
    },
       15239  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15240  +
        condition_index: 17,
       15241  +
        high_ref: 147,
       15242  +
        low_ref: 145,
       15243  +
    },
       15244  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15245  +
        condition_index: 16,
       15246  +
        high_ref: 100000005,
       15247  +
        low_ref: 148,
       15248  +
    },
       15249  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15250  +
        condition_index: 9,
       15251  +
        high_ref: 149,
       15252  +
        low_ref: 100000009,
       15253  +
    },
       15254  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15255  +
        condition_index: 32,
       15256  +
        high_ref: 100000011,
       15257  +
        low_ref: 133,
       15258  +
    },
       15259  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15260  +
        condition_index: 28,
       15261  +
        high_ref: 100000011,
       15262  +
        low_ref: 151,
       15263  +
    },
       15264  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15265  +
        condition_index: 27,
       15266  +
        high_ref: 100000011,
       15267  +
        low_ref: 152,
       15268  +
    },
       15269  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15270  +
        condition_index: 22,
       15271  +
        high_ref: 153,
       15272  +
        low_ref: 100000012,
       15273  +
    },
       15274  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15275  +
        condition_index: 21,
       15276  +
        high_ref: 154,
       15277  +
        low_ref: 100000009,
       15278  +
    },
       15279  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15280  +
        condition_index: 20,
       15281  +
        high_ref: 155,
       15282  +
        low_ref: 145,
       15283  +
    },
       15284  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15285  +
        condition_index: 18,
       15286  +
        high_ref: 156,
       15287  +
        low_ref: 145,
       15288  +
    },
       15289  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15290  +
        condition_index: 17,
       15291  +
        high_ref: 157,
       15292  +
        low_ref: 145,
       15293  +
    },
       15294  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15295  +
        condition_index: 16,
       15296  +
        high_ref: 100000005,
       15297  +
        low_ref: 158,
       15298  +
    },
       15299  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15300  +
        condition_index: 9,
       15301  +
        high_ref: 159,
       15302  +
        low_ref: 100000009,
       15303  +
    },
       15304  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15305  +
        condition_index: 16,
       15306  +
        high_ref: 100000005,
       15307  +
        low_ref: 8,
       15308  +
    },
       15309  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15310  +
        condition_index: 36,
       15311  +
        high_ref: 100000080,
       15312  +
        low_ref: 10,
       15313  +
    },
       15314  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15315  +
        condition_index: 35,
       15316  +
        high_ref: 100000078,
       15317  +
        low_ref: 162,
       15318  +
    },
       15319  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15320  +
        condition_index: 31,
       15321  +
        high_ref: 100000079,
       15322  +
        low_ref: 163,
       15323  +
    },
       15324  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15325  +
        condition_index: 30,
       15326  +
        high_ref: 100000024,
       15327  +
        low_ref: 100000034,
       15328  +
    },
       15329  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15330  +
        condition_index: 71,
       15331  +
        high_ref: 100000052,
       15332  +
        low_ref: 100000043,
       15333  +
    },
       15334  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15335  +
        condition_index: 70,
       15336  +
        high_ref: 166,
       15337  +
        low_ref: 100000044,
       15338  +
    },
       15339  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15340  +
        condition_index: 68,
       15341  +
        high_ref: 167,
       15342  +
        low_ref: 100000057,
       15343  +
    },
       15344  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15345  +
        condition_index: 67,
       15346  +
        high_ref: 168,
       15347  +
        low_ref: 100000045,
       15348  +
    },
       15349  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15350  +
        condition_index: 66,
       15351  +
        high_ref: 169,
       15352  +
        low_ref: 100000046,
       15353  +
    },
       15354  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15355  +
        condition_index: 65,
       15356  +
        high_ref: 100000047,
       15357  +
        low_ref: 170,
       15358  +
    },
       15359  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15360  +
        condition_index: 59,
       15361  +
        high_ref: 171,
       15362  +
        low_ref: 22,
       15363  +
    },
       15364  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15365  +
        condition_index: 58,
       15366  +
        high_ref: 171,
       15367  +
        low_ref: 172,
       15368  +
    },
       15369  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15370  +
        condition_index: 54,
       15371  +
        high_ref: 173,
       15372  +
        low_ref: 26,
       15373  +
    },
       15374  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15375  +
        condition_index: 53,
       15376  +
        high_ref: 100000037,
       15377  +
        low_ref: 174,
       15378  +
    },
       15379  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15380  +
        condition_index: 45,
       15381  +
        high_ref: 15,
       15382  +
        low_ref: 175,
       15383  +
    },
       15384  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15385  +
        condition_index: 43,
       15386  +
        high_ref: 100000035,
       15387  +
        low_ref: 176,
       15388  +
    },
       15389  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15390  +
        condition_index: 42,
       15391  +
        high_ref: 100000049,
       15392  +
        low_ref: 177,
       15393  +
    },
       15394  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15395  +
        condition_index: 41,
       15396  +
        high_ref: 178,
       15397  +
        low_ref: 100000049,
       15398  +
    },
       15399  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15400  +
        condition_index: 40,
       15401  +
        high_ref: 179,
       15402  +
        low_ref: 34,
       15403  +
    },
       15404  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15405  +
        condition_index: 39,
       15406  +
        high_ref: 100000077,
       15407  +
        low_ref: 180,
       15408  +
    },
       15409  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15410  +
        condition_index: 38,
       15411  +
        high_ref: 181,
       15412  +
        low_ref: 100000077,
       15413  +
    },
       15414  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15415  +
        condition_index: 33,
       15416  +
        high_ref: 182,
       15417  +
        low_ref: 162,
       15418  +
    },
       15419  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15420  +
        condition_index: 31,
       15421  +
        high_ref: 183,
       15422  +
        low_ref: 163,
       15423  +
    },
       15424  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15425  +
        condition_index: 21,
       15426  +
        high_ref: 165,
       15427  +
        low_ref: 184,
       15428  +
    },
       15429  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15430  +
        condition_index: 19,
       15431  +
        high_ref: 164,
       15432  +
        low_ref: 185,
       15433  +
    },
       15434  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15435  +
        condition_index: 16,
       15436  +
        high_ref: 100000005,
       15437  +
        low_ref: 186,
       15438  +
    },
       15439  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15440  +
        condition_index: 15,
       15441  +
        high_ref: 161,
       15442  +
        low_ref: 187,
       15443  +
    },
       15444  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15445  +
        condition_index: 14,
       15446  +
        high_ref: 188,
       15447  +
        low_ref: 187,
       15448  +
    },
       15449  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15450  +
        condition_index: 13,
       15451  +
        high_ref: 189,
       15452  +
        low_ref: 187,
       15453  +
    },
       15454  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15455  +
        condition_index: 12,
       15456  +
        high_ref: 190,
       15457  +
        low_ref: 187,
       15458  +
    },
       15459  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15460  +
        condition_index: 11,
       15461  +
        high_ref: 191,
       15462  +
        low_ref: 187,
       15463  +
    },
       15464  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15465  +
        condition_index: 9,
       15466  +
        high_ref: 192,
       15467  +
        low_ref: 64,
       15468  +
    },
       15469  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15470  +
        condition_index: 8,
       15471  +
        high_ref: 160,
       15472  +
        low_ref: 193,
       15473  +
    },
       15474  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15475  +
        condition_index: 7,
       15476  +
        high_ref: 150,
       15477  +
        low_ref: 194,
       15478  +
    },
       15479  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15480  +
        condition_index: 44,
       15481  +
        high_ref: 100000090,
       15482  +
        low_ref: 100000034,
       15483  +
    },
       15484  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15485  +
        condition_index: 37,
       15486  +
        high_ref: 9,
       15487  +
        low_ref: 196,
       15488  +
    },
       15489  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15490  +
        condition_index: 24,
       15491  +
        high_ref: 100000014,
       15492  +
        low_ref: 197,
       15493  +
    },
       15494  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15495  +
        condition_index: 20,
       15496  +
        high_ref: 198,
       15497  +
        low_ref: 197,
       15498  +
    },
       15499  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15500  +
        condition_index: 18,
       15501  +
        high_ref: 199,
       15502  +
        low_ref: 197,
       15503  +
    },
       15504  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15505  +
        condition_index: 17,
       15506  +
        high_ref: 200,
       15507  +
        low_ref: 197,
       15508  +
    },
       15509  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15510  +
        condition_index: 16,
       15511  +
        high_ref: 100000005,
       15512  +
        low_ref: 201,
       15513  +
    },
       15514  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15515  +
        condition_index: 9,
       15516  +
        high_ref: 202,
       15517  +
        low_ref: 100000096,
       15518  +
    },
       15519  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15520  +
        condition_index: 6,
       15521  +
        high_ref: 195,
       15522  +
        low_ref: 203,
       15523  +
    },
       15524  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15525  +
        condition_index: 44,
       15526  +
        high_ref: 100000088,
       15527  +
        low_ref: 100000034,
       15528  +
    },
       15529  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15530  +
        condition_index: 37,
       15531  +
        high_ref: 205,
       15532  +
        low_ref: 100000096,
       15533  +
    },
       15534  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15535  +
        condition_index: 36,
       15536  +
        high_ref: 100000081,
       15537  +
        low_ref: 206,
       15538  +
    },
       15539  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15540  +
        condition_index: 35,
       15541  +
        high_ref: 100000078,
       15542  +
        low_ref: 207,
       15543  +
    },
       15544  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15545  +
        condition_index: 31,
       15546  +
        high_ref: 100000079,
       15547  +
        low_ref: 208,
       15548  +
    },
       15549  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15550  +
        condition_index: 30,
       15551  +
        high_ref: 100000025,
       15552  +
        low_ref: 100000034,
       15553  +
    },
       15554  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15555  +
        condition_index: 71,
       15556  +
        high_ref: 100000041,
       15557  +
        low_ref: 100000043,
       15558  +
    },
       15559  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15560  +
        condition_index: 70,
       15561  +
        high_ref: 211,
       15562  +
        low_ref: 100000044,
       15563  +
    },
       15564  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15565  +
        condition_index: 69,
       15566  +
        high_ref: 100000039,
       15567  +
        low_ref: 212,
       15568  +
    },
       15569  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15570  +
        condition_index: 67,
       15571  +
        high_ref: 213,
       15572  +
        low_ref: 100000045,
       15573  +
    },
       15574  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15575  +
        condition_index: 66,
       15576  +
        high_ref: 214,
       15577  +
        low_ref: 100000046,
       15578  +
    },
       15579  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15580  +
        condition_index: 65,
       15581  +
        high_ref: 100000047,
       15582  +
        low_ref: 215,
       15583  +
    },
       15584  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15585  +
        condition_index: 59,
       15586  +
        high_ref: 216,
       15587  +
        low_ref: 22,
       15588  +
    },
       15589  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15590  +
        condition_index: 58,
       15591  +
        high_ref: 216,
       15592  +
        low_ref: 217,
       15593  +
    },
       15594  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15595  +
        condition_index: 54,
       15596  +
        high_ref: 218,
       15597  +
        low_ref: 26,
       15598  +
    },
       15599  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15600  +
        condition_index: 53,
       15601  +
        high_ref: 100000037,
       15602  +
        low_ref: 219,
       15603  +
    },
       15604  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15605  +
        condition_index: 45,
       15606  +
        high_ref: 100000048,
       15607  +
        low_ref: 220,
       15608  +
    },
       15609  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15610  +
        condition_index: 73,
       15611  +
        high_ref: 100000059,
       15612  +
        low_ref: 100000064,
       15613  +
    },
       15614  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15615  +
        condition_index: 71,
       15616  +
        high_ref: 100000053,
       15617  +
        low_ref: 100000043,
       15618  +
    },
       15619  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15620  +
        condition_index: 70,
       15621  +
        high_ref: 223,
       15622  +
        low_ref: 100000044,
       15623  +
    },
       15624  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15625  +
        condition_index: 68,
       15626  +
        high_ref: 224,
       15627  +
        low_ref: 100000057,
       15628  +
    },
       15629  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15630  +
        condition_index: 67,
       15631  +
        high_ref: 225,
       15632  +
        low_ref: 100000045,
       15633  +
    },
       15634  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15635  +
        condition_index: 66,
       15636  +
        high_ref: 226,
       15637  +
        low_ref: 100000046,
       15638  +
    },
       15639  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15640  +
        condition_index: 65,
       15641  +
        high_ref: 100000047,
       15642  +
        low_ref: 227,
       15643  +
    },
       15644  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15645  +
        condition_index: 59,
       15646  +
        high_ref: 228,
       15647  +
        low_ref: 22,
       15648  +
    },
       15649  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15650  +
        condition_index: 58,
       15651  +
        high_ref: 228,
       15652  +
        low_ref: 229,
       15653  +
    },
       15654  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15655  +
        condition_index: 54,
       15656  +
        high_ref: 230,
       15657  +
        low_ref: 26,
       15658  +
    },
       15659  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15660  +
        condition_index: 53,
       15661  +
        high_ref: 100000037,
       15662  +
        low_ref: 231,
       15663  +
    },
       15664  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15665  +
        condition_index: 45,
       15666  +
        high_ref: 222,
       15667  +
        low_ref: 232,
       15668  +
    },
       15669  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15670  +
        condition_index: 43,
       15671  +
        high_ref: 221,
       15672  +
        low_ref: 233,
       15673  +
    },
       15674  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15675  +
        condition_index: 42,
       15676  +
        high_ref: 100000049,
       15677  +
        low_ref: 234,
       15678  +
    },
       15679  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15680  +
        condition_index: 41,
       15681  +
        high_ref: 235,
       15682  +
        low_ref: 100000049,
       15683  +
    },
       15684  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15685  +
        condition_index: 52,
       15686  +
        high_ref: 100000066,
       15687  +
        low_ref: 100000076,
       15688  +
    },
       15689  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15690  +
        condition_index: 43,
       15691  +
        high_ref: 100000050,
       15692  +
        low_ref: 237,
       15693  +
    },
       15694  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15695  +
        condition_index: 40,
       15696  +
        high_ref: 236,
       15697  +
        low_ref: 238,
       15698  +
    },
       15699  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15700  +
        condition_index: 39,
       15701  +
        high_ref: 100000077,
       15702  +
        low_ref: 239,
       15703  +
    },
       15704  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15705  +
        condition_index: 38,
       15706  +
        high_ref: 240,
       15707  +
        low_ref: 100000077,
       15708  +
    },
       15709  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15710  +
        condition_index: 33,
       15711  +
        high_ref: 241,
       15712  +
        low_ref: 207,
       15713  +
    },
       15714  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15715  +
        condition_index: 31,
       15716  +
        high_ref: 242,
       15717  +
        low_ref: 208,
       15718  +
    },
       15719  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15720  +
        condition_index: 21,
       15721  +
        high_ref: 210,
       15722  +
        low_ref: 243,
       15723  +
    },
       15724  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15725  +
        condition_index: 19,
       15726  +
        high_ref: 209,
       15727  +
        low_ref: 244,
       15728  +
    },
       15729  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15730  +
        condition_index: 16,
       15731  +
        high_ref: 100000005,
       15732  +
        low_ref: 245,
       15733  +
    },
       15734  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15735  +
        condition_index: 15,
       15736  +
        high_ref: 161,
       15737  +
        low_ref: 246,
       15738  +
    },
       15739  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15740  +
        condition_index: 14,
       15741  +
        high_ref: 247,
       15742  +
        low_ref: 246,
       15743  +
    },
       15744  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15745  +
        condition_index: 13,
       15746  +
        high_ref: 248,
       15747  +
        low_ref: 246,
       15748  +
    },
       15749  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15750  +
        condition_index: 12,
       15751  +
        high_ref: 249,
       15752  +
        low_ref: 246,
       15753  +
    },
       15754  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15755  +
        condition_index: 11,
       15756  +
        high_ref: 250,
       15757  +
        low_ref: 246,
       15758  +
    },
       15759  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15760  +
        condition_index: 45,
       15761  +
        high_ref: 100000048,
       15762  +
        low_ref: 54,
       15763  +
    },
       15764  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15765  +
        condition_index: 45,
       15766  +
        high_ref: 222,
       15767  +
        low_ref: 54,
       15768  +
    },
       15769  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15770  +
        condition_index: 43,
       15771  +
        high_ref: 252,
       15772  +
        low_ref: 253,
       15773  +
    },
       15774  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15775  +
        condition_index: 42,
       15776  +
        high_ref: 100000049,
       15777  +
        low_ref: 254,
       15778  +
    },
       15779  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15780  +
        condition_index: 41,
       15781  +
        high_ref: 255,
       15782  +
        low_ref: 100000049,
       15783  +
    },
       15784  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15785  +
        condition_index: 40,
       15786  +
        high_ref: 256,
       15787  +
        low_ref: 238,
       15788  +
    },
       15789  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15790  +
        condition_index: 39,
       15791  +
        high_ref: 100000077,
       15792  +
        low_ref: 257,
       15793  +
    },
       15794  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15795  +
        condition_index: 38,
       15796  +
        high_ref: 258,
       15797  +
        low_ref: 100000077,
       15798  +
    },
       15799  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15800  +
        condition_index: 33,
       15801  +
        high_ref: 259,
       15802  +
        low_ref: 100000096,
       15803  +
    },
       15804  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15805  +
        condition_index: 31,
       15806  +
        high_ref: 260,
       15807  +
        low_ref: 52,
       15808  +
    },
       15809  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15810  +
        condition_index: 19,
       15811  +
        high_ref: 53,
       15812  +
        low_ref: 261,
       15813  +
    },
       15814  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15815  +
        condition_index: 9,
       15816  +
        high_ref: 251,
       15817  +
        low_ref: 262,
       15818  +
    },
       15819  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15820  +
        condition_index: 8,
       15821  +
        high_ref: 160,
       15822  +
        low_ref: 263,
       15823  +
    },
       15824  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15825  +
        condition_index: 7,
       15826  +
        high_ref: 150,
       15827  +
        low_ref: 264,
       15828  +
    },
       15829  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15830  +
        condition_index: 44,
       15831  +
        high_ref: 100000091,
       15832  +
        low_ref: 100000034,
       15833  +
    },
       15834  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15835  +
        condition_index: 37,
       15836  +
        high_ref: 205,
       15837  +
        low_ref: 266,
       15838  +
    },
       15839  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15840  +
        condition_index: 24,
       15841  +
        high_ref: 100000014,
       15842  +
        low_ref: 267,
       15843  +
    },
       15844  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15845  +
        condition_index: 20,
       15846  +
        high_ref: 268,
       15847  +
        low_ref: 267,
       15848  +
    },
       15849  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15850  +
        condition_index: 18,
       15851  +
        high_ref: 269,
       15852  +
        low_ref: 267,
       15853  +
    },
       15854  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15855  +
        condition_index: 17,
       15856  +
        high_ref: 270,
       15857  +
        low_ref: 267,
       15858  +
    },
       15859  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15860  +
        condition_index: 16,
       15861  +
        high_ref: 100000005,
       15862  +
        low_ref: 271,
       15863  +
    },
       15864  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15865  +
        condition_index: 9,
       15866  +
        high_ref: 272,
       15867  +
        low_ref: 100000096,
       15868  +
    },
       15869  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15870  +
        condition_index: 6,
       15871  +
        high_ref: 265,
       15872  +
        low_ref: 273,
       15873  +
    },
       15874  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15875  +
        condition_index: 5,
       15876  +
        high_ref: 204,
       15877  +
        low_ref: 274,
       15878  +
    },
       15879  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15880  +
        condition_index: 4,
       15881  +
        high_ref: 131,
       15882  +
        low_ref: 275,
       15883  +
    },
       15884  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15885  +
        condition_index: 36,
       15886  +
        high_ref: 100000007,
       15887  +
        low_ref: 100000008,
       15888  +
    },
       15889  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15890  +
        condition_index: 34,
       15891  +
        high_ref: 277,
       15892  +
        low_ref: 100000008,
       15893  +
    },
       15894  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15895  +
        condition_index: 36,
       15896  +
        high_ref: 100000007,
       15897  +
        low_ref: 100000009,
       15898  +
    },
       15899  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15900  +
        condition_index: 34,
       15901  +
        high_ref: 279,
       15902  +
        low_ref: 100000009,
       15903  +
    },
       15904  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15905  +
        condition_index: 21,
       15906  +
        high_ref: 278,
       15907  +
        low_ref: 280,
       15908  +
    },
       15909  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15910  +
        condition_index: 20,
       15911  +
        high_ref: 281,
       15912  +
        low_ref: 100000009,
       15913  +
    },
       15914  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15915  +
        condition_index: 22,
       15916  +
        high_ref: 136,
       15917  +
        low_ref: 100000012,
       15918  +
    },
       15919  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15920  +
        condition_index: 21,
       15921  +
        high_ref: 283,
       15922  +
        low_ref: 100000009,
       15923  +
    },
       15924  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15925  +
        condition_index: 20,
       15926  +
        high_ref: 284,
       15927  +
        low_ref: 145,
       15928  +
    },
       15929  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15930  +
        condition_index: 18,
       15931  +
        high_ref: 285,
       15932  +
        low_ref: 145,
       15933  +
    },
       15934  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15935  +
        condition_index: 17,
       15936  +
        high_ref: 286,
       15937  +
        low_ref: 145,
       15938  +
    },
       15939  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15940  +
        condition_index: 10,
       15941  +
        high_ref: 282,
       15942  +
        low_ref: 287,
       15943  +
    },
       15944  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15945  +
        condition_index: 10,
       15946  +
        high_ref: 282,
       15947  +
        low_ref: 100000009,
       15948  +
    },
       15949  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15950  +
        condition_index: 9,
       15951  +
        high_ref: 288,
       15952  +
        low_ref: 289,
       15953  +
    },
       15954  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15955  +
        condition_index: 10,
       15956  +
        high_ref: 282,
       15957  +
        low_ref: 158,
       15958  +
    },
       15959  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15960  +
        condition_index: 9,
       15961  +
        high_ref: 291,
       15962  +
        low_ref: 289,
       15963  +
    },
       15964  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15965  +
        condition_index: 55,
       15966  +
        high_ref: 100000018,
       15967  +
        low_ref: 100000020,
       15968  +
    },
       15969  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15970  +
        condition_index: 46,
       15971  +
        high_ref: 100000016,
       15972  +
        low_ref: 293,
       15973  +
    },
       15974  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15975  +
        condition_index: 25,
       15976  +
        high_ref: 294,
       15977  +
        low_ref: 6,
       15978  +
    },
       15979  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15980  +
        condition_index: 23,
       15981  +
        high_ref: 295,
       15982  +
        low_ref: 100000021,
       15983  +
    },
       15984  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15985  +
        condition_index: 44,
       15986  +
        high_ref: 100000087,
       15987  +
        low_ref: 100000034,
       15988  +
    },
       15989  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15990  +
        condition_index: 37,
       15991  +
        high_ref: 297,
       15992  +
        low_ref: 100000096,
       15993  +
    },
       15994  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       15995  +
        condition_index: 36,
       15996  +
        high_ref: 100000083,
       15997  +
        low_ref: 298,
       15998  +
    },
       15999  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16000  +
        condition_index: 35,
       16001  +
        high_ref: 100000078,
       16002  +
        low_ref: 299,
       16003  +
    },
       16004  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16005  +
        condition_index: 31,
       16006  +
        high_ref: 100000079,
       16007  +
        low_ref: 300,
       16008  +
    },
       16009  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16010  +
        condition_index: 34,
       16011  +
        high_ref: 100000029,
       16012  +
        low_ref: 100000030,
       16013  +
    },
       16014  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16015  +
        condition_index: 30,
       16016  +
        high_ref: 302,
       16017  +
        low_ref: 100000034,
       16018  +
    },
       16019  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16020  +
        condition_index: 30,
       16021  +
        high_ref: 100000030,
       16022  +
        low_ref: 100000034,
       16023  +
    },
       16024  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16025  +
        condition_index: 71,
       16026  +
        high_ref: 100000040,
       16027  +
        low_ref: 100000043,
       16028  +
    },
       16029  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16030  +
        condition_index: 70,
       16031  +
        high_ref: 305,
       16032  +
        low_ref: 100000044,
       16033  +
    },
       16034  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16035  +
        condition_index: 69,
       16036  +
        high_ref: 100000039,
       16037  +
        low_ref: 306,
       16038  +
    },
       16039  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16040  +
        condition_index: 67,
       16041  +
        high_ref: 307,
       16042  +
        low_ref: 100000045,
       16043  +
    },
       16044  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16045  +
        condition_index: 66,
       16046  +
        high_ref: 308,
       16047  +
        low_ref: 100000046,
       16048  +
    },
       16049  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16050  +
        condition_index: 65,
       16051  +
        high_ref: 100000047,
       16052  +
        low_ref: 309,
       16053  +
    },
       16054  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16055  +
        condition_index: 59,
       16056  +
        high_ref: 310,
       16057  +
        low_ref: 22,
       16058  +
    },
       16059  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16060  +
        condition_index: 58,
       16061  +
        high_ref: 310,
       16062  +
        low_ref: 311,
       16063  +
    },
       16064  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16065  +
        condition_index: 54,
       16066  +
        high_ref: 312,
       16067  +
        low_ref: 26,
       16068  +
    },
       16069  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16070  +
        condition_index: 53,
       16071  +
        high_ref: 100000037,
       16072  +
        low_ref: 313,
       16073  +
    },
       16074  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16075  +
        condition_index: 45,
       16076  +
        high_ref: 100000048,
       16077  +
        low_ref: 314,
       16078  +
    },
       16079  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16080  +
        condition_index: 73,
       16081  +
        high_ref: 100000061,
       16082  +
        low_ref: 100000064,
       16083  +
    },
       16084  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16085  +
        condition_index: 74,
       16086  +
        high_ref: 100000062,
       16087  +
        low_ref: 100000063,
       16088  +
    },
       16089  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16090  +
        condition_index: 73,
       16091  +
        high_ref: 317,
       16092  +
        low_ref: 100000064,
       16093  +
    },
       16094  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16095  +
        condition_index: 62,
       16096  +
        high_ref: 316,
       16097  +
        low_ref: 318,
       16098  +
    },
       16099  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16100  +
        condition_index: 71,
       16101  +
        high_ref: 100000055,
       16102  +
        low_ref: 100000043,
       16103  +
    },
       16104  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16105  +
        condition_index: 70,
       16106  +
        high_ref: 320,
       16107  +
        low_ref: 100000044,
       16108  +
    },
       16109  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16110  +
        condition_index: 68,
       16111  +
        high_ref: 321,
       16112  +
        low_ref: 100000057,
       16113  +
    },
       16114  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16115  +
        condition_index: 67,
       16116  +
        high_ref: 322,
       16117  +
        low_ref: 100000045,
       16118  +
    },
       16119  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16120  +
        condition_index: 66,
       16121  +
        high_ref: 323,
       16122  +
        low_ref: 100000046,
       16123  +
    },
       16124  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16125  +
        condition_index: 65,
       16126  +
        high_ref: 100000047,
       16127  +
        low_ref: 324,
       16128  +
    },
       16129  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16130  +
        condition_index: 59,
       16131  +
        high_ref: 325,
       16132  +
        low_ref: 22,
       16133  +
    },
       16134  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16135  +
        condition_index: 58,
       16136  +
        high_ref: 325,
       16137  +
        low_ref: 326,
       16138  +
    },
       16139  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16140  +
        condition_index: 54,
       16141  +
        high_ref: 327,
       16142  +
        low_ref: 26,
       16143  +
    },
       16144  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16145  +
        condition_index: 53,
       16146  +
        high_ref: 100000037,
       16147  +
        low_ref: 328,
       16148  +
    },
       16149  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16150  +
        condition_index: 45,
       16151  +
        high_ref: 319,
       16152  +
        low_ref: 329,
       16153  +
    },
       16154  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16155  +
        condition_index: 43,
       16156  +
        high_ref: 315,
       16157  +
        low_ref: 330,
       16158  +
    },
       16159  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16160  +
        condition_index: 42,
       16161  +
        high_ref: 100000049,
       16162  +
        low_ref: 331,
       16163  +
    },
       16164  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16165  +
        condition_index: 41,
       16166  +
        high_ref: 332,
       16167  +
        low_ref: 100000049,
       16168  +
    },
       16169  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16170  +
        condition_index: 75,
       16171  +
        high_ref: 100000069,
       16172  +
        low_ref: 100000071,
       16173  +
    },
       16174  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16175  +
        condition_index: 72,
       16176  +
        high_ref: 334,
       16177  +
        low_ref: 100000072,
       16178  +
    },
       16179  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16180  +
        condition_index: 70,
       16181  +
        high_ref: 335,
       16182  +
        low_ref: 100000044,
       16183  +
    },
       16184  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16185  +
        condition_index: 67,
       16186  +
        high_ref: 336,
       16187  +
        low_ref: 100000045,
       16188  +
    },
       16189  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16190  +
        condition_index: 66,
       16191  +
        high_ref: 337,
       16192  +
        low_ref: 100000046,
       16193  +
    },
       16194  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16195  +
        condition_index: 70,
       16196  +
        high_ref: 100000073,
       16197  +
        low_ref: 100000044,
       16198  +
    },
       16199  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16200  +
        condition_index: 67,
       16201  +
        high_ref: 339,
       16202  +
        low_ref: 100000045,
       16203  +
    },
       16204  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16205  +
        condition_index: 66,
       16206  +
        high_ref: 340,
       16207  +
        low_ref: 100000046,
       16208  +
    },
       16209  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16210  +
        condition_index: 65,
       16211  +
        high_ref: 338,
       16212  +
        low_ref: 341,
       16213  +
    },
       16214  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16215  +
        condition_index: 64,
       16216  +
        high_ref: 342,
       16217  +
        low_ref: 100000074,
       16218  +
    },
       16219  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16220  +
        condition_index: 64,
       16221  +
        high_ref: 100000038,
       16222  +
        low_ref: 100000074,
       16223  +
    },
       16224  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16225  +
        condition_index: 59,
       16226  +
        high_ref: 343,
       16227  +
        low_ref: 344,
       16228  +
    },
       16229  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16230  +
        condition_index: 58,
       16231  +
        high_ref: 343,
       16232  +
        low_ref: 345,
       16233  +
    },
       16234  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16235  +
        condition_index: 57,
       16236  +
        high_ref: 346,
       16237  +
        low_ref: 100000075,
       16238  +
    },
       16239  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16240  +
        condition_index: 56,
       16241  +
        high_ref: 100000068,
       16242  +
        low_ref: 347,
       16243  +
    },
       16244  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16245  +
        condition_index: 59,
       16246  +
        high_ref: 100000074,
       16247  +
        low_ref: 344,
       16248  +
    },
       16249  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16250  +
        condition_index: 58,
       16251  +
        high_ref: 100000074,
       16252  +
        low_ref: 349,
       16253  +
    },
       16254  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16255  +
        condition_index: 57,
       16256  +
        high_ref: 350,
       16257  +
        low_ref: 100000075,
       16258  +
    },
       16259  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16260  +
        condition_index: 56,
       16261  +
        high_ref: 100000068,
       16262  +
        low_ref: 351,
       16263  +
    },
       16264  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16265  +
        condition_index: 54,
       16266  +
        high_ref: 348,
       16267  +
        low_ref: 352,
       16268  +
    },
       16269  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16270  +
        condition_index: 52,
       16271  +
        high_ref: 353,
       16272  +
        low_ref: 100000076,
       16273  +
    },
       16274  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16275  +
        condition_index: 43,
       16276  +
        high_ref: 100000050,
       16277  +
        low_ref: 354,
       16278  +
    },
       16279  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16280  +
        condition_index: 40,
       16281  +
        high_ref: 333,
       16282  +
        low_ref: 355,
       16283  +
    },
       16284  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16285  +
        condition_index: 39,
       16286  +
        high_ref: 100000077,
       16287  +
        low_ref: 356,
       16288  +
    },
       16289  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16290  +
        condition_index: 38,
       16291  +
        high_ref: 357,
       16292  +
        low_ref: 100000077,
       16293  +
    },
       16294  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16295  +
        condition_index: 33,
       16296  +
        high_ref: 358,
       16297  +
        low_ref: 299,
       16298  +
    },
       16299  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16300  +
        condition_index: 31,
       16301  +
        high_ref: 359,
       16302  +
        low_ref: 300,
       16303  +
    },
       16304  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16305  +
        condition_index: 29,
       16306  +
        high_ref: 304,
       16307  +
        low_ref: 360,
       16308  +
    },
       16309  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16310  +
        condition_index: 26,
       16311  +
        high_ref: 361,
       16312  +
        low_ref: 360,
       16313  +
    },
       16314  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16315  +
        condition_index: 21,
       16316  +
        high_ref: 303,
       16317  +
        low_ref: 362,
       16318  +
    },
       16319  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16320  +
        condition_index: 19,
       16321  +
        high_ref: 301,
       16322  +
        low_ref: 363,
       16323  +
    },
       16324  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16325  +
        condition_index: 15,
       16326  +
        high_ref: 296,
       16327  +
        low_ref: 364,
       16328  +
    },
       16329  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16330  +
        condition_index: 14,
       16331  +
        high_ref: 365,
       16332  +
        low_ref: 364,
       16333  +
    },
       16334  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16335  +
        condition_index: 13,
       16336  +
        high_ref: 366,
       16337  +
        low_ref: 364,
       16338  +
    },
       16339  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16340  +
        condition_index: 12,
       16341  +
        high_ref: 367,
       16342  +
        low_ref: 364,
       16343  +
    },
       16344  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16345  +
        condition_index: 11,
       16346  +
        high_ref: 368,
       16347  +
        low_ref: 364,
       16348  +
    },
       16349  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16350  +
        condition_index: 23,
       16351  +
        high_ref: 6,
       16352  +
        low_ref: 100000021,
       16353  +
    },
       16354  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16355  +
        condition_index: 15,
       16356  +
        high_ref: 370,
       16357  +
        low_ref: 100000022,
       16358  +
    },
       16359  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16360  +
        condition_index: 14,
       16361  +
        high_ref: 371,
       16362  +
        low_ref: 100000022,
       16363  +
    },
       16364  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16365  +
        condition_index: 13,
       16366  +
        high_ref: 372,
       16367  +
        low_ref: 100000022,
       16368  +
    },
       16369  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16370  +
        condition_index: 12,
       16371  +
        high_ref: 373,
       16372  +
        low_ref: 100000022,
       16373  +
    },
       16374  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16375  +
        condition_index: 11,
       16376  +
        high_ref: 374,
       16377  +
        low_ref: 100000022,
       16378  +
    },
       16379  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16380  +
        condition_index: 10,
       16381  +
        high_ref: 369,
       16382  +
        low_ref: 375,
       16383  +
    },
       16384  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16385  +
        condition_index: 62,
       16386  +
        high_ref: 316,
       16387  +
        low_ref: 100000064,
       16388  +
    },
       16389  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16390  +
        condition_index: 45,
       16391  +
        high_ref: 377,
       16392  +
        low_ref: 54,
       16393  +
    },
       16394  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16395  +
        condition_index: 43,
       16396  +
        high_ref: 252,
       16397  +
        low_ref: 378,
       16398  +
    },
       16399  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16400  +
        condition_index: 42,
       16401  +
        high_ref: 100000049,
       16402  +
        low_ref: 379,
       16403  +
    },
       16404  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16405  +
        condition_index: 41,
       16406  +
        high_ref: 380,
       16407  +
        low_ref: 100000049,
       16408  +
    },
       16409  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16410  +
        condition_index: 52,
       16411  +
        high_ref: 352,
       16412  +
        low_ref: 100000076,
       16413  +
    },
       16414  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16415  +
        condition_index: 43,
       16416  +
        high_ref: 100000050,
       16417  +
        low_ref: 382,
       16418  +
    },
       16419  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16420  +
        condition_index: 40,
       16421  +
        high_ref: 381,
       16422  +
        low_ref: 383,
       16423  +
    },
       16424  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16425  +
        condition_index: 39,
       16426  +
        high_ref: 100000077,
       16427  +
        low_ref: 384,
       16428  +
    },
       16429  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16430  +
        condition_index: 38,
       16431  +
        high_ref: 385,
       16432  +
        low_ref: 100000077,
       16433  +
    },
       16434  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16435  +
        condition_index: 33,
       16436  +
        high_ref: 386,
       16437  +
        low_ref: 100000096,
       16438  +
    },
       16439  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16440  +
        condition_index: 31,
       16441  +
        high_ref: 387,
       16442  +
        low_ref: 52,
       16443  +
    },
       16444  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16445  +
        condition_index: 19,
       16446  +
        high_ref: 53,
       16447  +
        low_ref: 388,
       16448  +
    },
       16449  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16450  +
        condition_index: 10,
       16451  +
        high_ref: 389,
       16452  +
        low_ref: 100000022,
       16453  +
    },
       16454  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16455  +
        condition_index: 9,
       16456  +
        high_ref: 376,
       16457  +
        low_ref: 390,
       16458  +
    },
       16459  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16460  +
        condition_index: 8,
       16461  +
        high_ref: 292,
       16462  +
        low_ref: 391,
       16463  +
    },
       16464  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16465  +
        condition_index: 7,
       16466  +
        high_ref: 290,
       16467  +
        low_ref: 392,
       16468  +
    },
       16469  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16470  +
        condition_index: 44,
       16471  +
        high_ref: 100000093,
       16472  +
        low_ref: 100000034,
       16473  +
    },
       16474  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16475  +
        condition_index: 37,
       16476  +
        high_ref: 297,
       16477  +
        low_ref: 394,
       16478  +
    },
       16479  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16480  +
        condition_index: 24,
       16481  +
        high_ref: 100000013,
       16482  +
        low_ref: 395,
       16483  +
    },
       16484  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16485  +
        condition_index: 20,
       16486  +
        high_ref: 396,
       16487  +
        low_ref: 395,
       16488  +
    },
       16489  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16490  +
        condition_index: 44,
       16491  +
        high_ref: 100000089,
       16492  +
        low_ref: 100000034,
       16493  +
    },
       16494  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16495  +
        condition_index: 37,
       16496  +
        high_ref: 398,
       16497  +
        low_ref: 100000034,
       16498  +
    },
       16499  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16500  +
        condition_index: 24,
       16501  +
        high_ref: 100000014,
       16502  +
        low_ref: 399,
       16503  +
    },
       16504  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16505  +
        condition_index: 20,
       16506  +
        high_ref: 400,
       16507  +
        low_ref: 399,
       16508  +
    },
       16509  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16510  +
        condition_index: 18,
       16511  +
        high_ref: 401,
       16512  +
        low_ref: 399,
       16513  +
    },
       16514  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16515  +
        condition_index: 17,
       16516  +
        high_ref: 402,
       16517  +
        low_ref: 399,
       16518  +
    },
       16519  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16520  +
        condition_index: 10,
       16521  +
        high_ref: 397,
       16522  +
        low_ref: 403,
       16523  +
    },
       16524  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16525  +
        condition_index: 9,
       16526  +
        high_ref: 404,
       16527  +
        low_ref: 100000096,
       16528  +
    },
       16529  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16530  +
        condition_index: 6,
       16531  +
        high_ref: 393,
       16532  +
        low_ref: 405,
       16533  +
    },
       16534  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16535  +
        condition_index: 5,
       16536  +
        high_ref: 100000002,
       16537  +
        low_ref: 406,
       16538  +
    },
       16539  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16540  +
        condition_index: 9,
       16541  +
        high_ref: 148,
       16542  +
        low_ref: 100000009,
       16543  +
    },
       16544  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16545  +
        condition_index: 9,
       16546  +
        high_ref: 158,
       16547  +
        low_ref: 100000009,
       16548  +
    },
       16549  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16550  +
        condition_index: 36,
       16551  +
        high_ref: 100000082,
       16552  +
        low_ref: 10,
       16553  +
    },
       16554  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16555  +
        condition_index: 35,
       16556  +
        high_ref: 100000078,
       16557  +
        low_ref: 410,
       16558  +
    },
       16559  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16560  +
        condition_index: 31,
       16561  +
        high_ref: 100000079,
       16562  +
        low_ref: 411,
       16563  +
    },
       16564  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16565  +
        condition_index: 30,
       16566  +
        high_ref: 100000028,
       16567  +
        low_ref: 100000034,
       16568  +
    },
       16569  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16570  +
        condition_index: 71,
       16571  +
        high_ref: 100000054,
       16572  +
        low_ref: 100000043,
       16573  +
    },
       16574  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16575  +
        condition_index: 70,
       16576  +
        high_ref: 414,
       16577  +
        low_ref: 100000044,
       16578  +
    },
       16579  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16580  +
        condition_index: 68,
       16581  +
        high_ref: 415,
       16582  +
        low_ref: 100000057,
       16583  +
    },
       16584  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16585  +
        condition_index: 67,
       16586  +
        high_ref: 416,
       16587  +
        low_ref: 100000045,
       16588  +
    },
       16589  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16590  +
        condition_index: 66,
       16591  +
        high_ref: 417,
       16592  +
        low_ref: 100000046,
       16593  +
    },
       16594  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16595  +
        condition_index: 65,
       16596  +
        high_ref: 100000047,
       16597  +
        low_ref: 418,
       16598  +
    },
       16599  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16600  +
        condition_index: 59,
       16601  +
        high_ref: 419,
       16602  +
        low_ref: 22,
       16603  +
    },
       16604  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16605  +
        condition_index: 58,
       16606  +
        high_ref: 419,
       16607  +
        low_ref: 420,
       16608  +
    },
       16609  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16610  +
        condition_index: 54,
       16611  +
        high_ref: 421,
       16612  +
        low_ref: 26,
       16613  +
    },
       16614  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16615  +
        condition_index: 53,
       16616  +
        high_ref: 100000037,
       16617  +
        low_ref: 422,
       16618  +
    },
       16619  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16620  +
        condition_index: 45,
       16621  +
        high_ref: 15,
       16622  +
        low_ref: 423,
       16623  +
    },
       16624  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16625  +
        condition_index: 43,
       16626  +
        high_ref: 100000035,
       16627  +
        low_ref: 424,
       16628  +
    },
       16629  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16630  +
        condition_index: 42,
       16631  +
        high_ref: 100000049,
       16632  +
        low_ref: 425,
       16633  +
    },
       16634  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16635  +
        condition_index: 41,
       16636  +
        high_ref: 426,
       16637  +
        low_ref: 100000049,
       16638  +
    },
       16639  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16640  +
        condition_index: 40,
       16641  +
        high_ref: 427,
       16642  +
        low_ref: 34,
       16643  +
    },
       16644  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16645  +
        condition_index: 39,
       16646  +
        high_ref: 100000077,
       16647  +
        low_ref: 428,
       16648  +
    },
       16649  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16650  +
        condition_index: 38,
       16651  +
        high_ref: 429,
       16652  +
        low_ref: 100000077,
       16653  +
    },
       16654  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16655  +
        condition_index: 33,
       16656  +
        high_ref: 430,
       16657  +
        low_ref: 410,
       16658  +
    },
       16659  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16660  +
        condition_index: 31,
       16661  +
        high_ref: 431,
       16662  +
        low_ref: 411,
       16663  +
    },
       16664  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16665  +
        condition_index: 21,
       16666  +
        high_ref: 413,
       16667  +
        low_ref: 432,
       16668  +
    },
       16669  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16670  +
        condition_index: 19,
       16671  +
        high_ref: 412,
       16672  +
        low_ref: 433,
       16673  +
    },
       16674  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16675  +
        condition_index: 15,
       16676  +
        high_ref: 8,
       16677  +
        low_ref: 434,
       16678  +
    },
       16679  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16680  +
        condition_index: 14,
       16681  +
        high_ref: 435,
       16682  +
        low_ref: 434,
       16683  +
    },
       16684  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16685  +
        condition_index: 13,
       16686  +
        high_ref: 436,
       16687  +
        low_ref: 434,
       16688  +
    },
       16689  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16690  +
        condition_index: 12,
       16691  +
        high_ref: 437,
       16692  +
        low_ref: 434,
       16693  +
    },
       16694  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16695  +
        condition_index: 11,
       16696  +
        high_ref: 438,
       16697  +
        low_ref: 434,
       16698  +
    },
       16699  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16700  +
        condition_index: 9,
       16701  +
        high_ref: 439,
       16702  +
        low_ref: 64,
       16703  +
    },
       16704  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16705  +
        condition_index: 8,
       16706  +
        high_ref: 409,
       16707  +
        low_ref: 440,
       16708  +
    },
       16709  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16710  +
        condition_index: 7,
       16711  +
        high_ref: 408,
       16712  +
        low_ref: 441,
       16713  +
    },
       16714  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16715  +
        condition_index: 6,
       16716  +
        high_ref: 442,
       16717  +
        low_ref: 74,
       16718  +
    },
       16719  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16720  +
        condition_index: 63,
       16721  +
        high_ref: 100000084,
       16722  +
        low_ref: 100000085,
       16723  +
    },
       16724  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16725  +
        condition_index: 61,
       16726  +
        high_ref: 444,
       16727  +
        low_ref: 100000085,
       16728  +
    },
       16729  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16730  +
        condition_index: 60,
       16731  +
        high_ref: 100000084,
       16732  +
        low_ref: 445,
       16733  +
    },
       16734  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16735  +
        condition_index: 37,
       16736  +
        high_ref: 398,
       16737  +
        low_ref: 100000096,
       16738  +
    },
       16739  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16740  +
        condition_index: 36,
       16741  +
        high_ref: 446,
       16742  +
        low_ref: 447,
       16743  +
    },
       16744  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16745  +
        condition_index: 35,
       16746  +
        high_ref: 100000078,
       16747  +
        low_ref: 448,
       16748  +
    },
       16749  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16750  +
        condition_index: 31,
       16751  +
        high_ref: 100000079,
       16752  +
        low_ref: 449,
       16753  +
    },
       16754  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16755  +
        condition_index: 63,
       16756  +
        high_ref: 100000032,
       16757  +
        low_ref: 100000033,
       16758  +
    },
       16759  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16760  +
        condition_index: 61,
       16761  +
        high_ref: 451,
       16762  +
        low_ref: 100000033,
       16763  +
    },
       16764  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16765  +
        condition_index: 60,
       16766  +
        high_ref: 100000032,
       16767  +
        low_ref: 452,
       16768  +
    },
       16769  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16770  +
        condition_index: 30,
       16771  +
        high_ref: 453,
       16772  +
        low_ref: 100000034,
       16773  +
    },
       16774  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16775  +
        condition_index: 71,
       16776  +
        high_ref: 100000042,
       16777  +
        low_ref: 100000043,
       16778  +
    },
       16779  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16780  +
        condition_index: 70,
       16781  +
        high_ref: 455,
       16782  +
        low_ref: 100000044,
       16783  +
    },
       16784  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16785  +
        condition_index: 69,
       16786  +
        high_ref: 100000039,
       16787  +
        low_ref: 456,
       16788  +
    },
       16789  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16790  +
        condition_index: 67,
       16791  +
        high_ref: 457,
       16792  +
        low_ref: 100000045,
       16793  +
    },
       16794  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16795  +
        condition_index: 66,
       16796  +
        high_ref: 458,
       16797  +
        low_ref: 100000046,
       16798  +
    },
       16799  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16800  +
        condition_index: 65,
       16801  +
        high_ref: 100000047,
       16802  +
        low_ref: 459,
       16803  +
    },
       16804  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16805  +
        condition_index: 59,
       16806  +
        high_ref: 460,
       16807  +
        low_ref: 22,
       16808  +
    },
       16809  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16810  +
        condition_index: 58,
       16811  +
        high_ref: 460,
       16812  +
        low_ref: 461,
       16813  +
    },
       16814  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16815  +
        condition_index: 54,
       16816  +
        high_ref: 462,
       16817  +
        low_ref: 26,
       16818  +
    },
       16819  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16820  +
        condition_index: 53,
       16821  +
        high_ref: 100000037,
       16822  +
        low_ref: 463,
       16823  +
    },
       16824  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16825  +
        condition_index: 45,
       16826  +
        high_ref: 100000048,
       16827  +
        low_ref: 464,
       16828  +
    },
       16829  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16830  +
        condition_index: 71,
       16831  +
        high_ref: 100000056,
       16832  +
        low_ref: 100000043,
       16833  +
    },
       16834  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16835  +
        condition_index: 70,
       16836  +
        high_ref: 466,
       16837  +
        low_ref: 100000044,
       16838  +
    },
       16839  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16840  +
        condition_index: 68,
       16841  +
        high_ref: 467,
       16842  +
        low_ref: 100000057,
       16843  +
    },
       16844  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16845  +
        condition_index: 67,
       16846  +
        high_ref: 468,
       16847  +
        low_ref: 100000045,
       16848  +
    },
       16849  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16850  +
        condition_index: 66,
       16851  +
        high_ref: 469,
       16852  +
        low_ref: 100000046,
       16853  +
    },
       16854  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16855  +
        condition_index: 65,
       16856  +
        high_ref: 100000047,
       16857  +
        low_ref: 470,
       16858  +
    },
       16859  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16860  +
        condition_index: 59,
       16861  +
        high_ref: 471,
       16862  +
        low_ref: 22,
       16863  +
    },
       16864  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16865  +
        condition_index: 58,
       16866  +
        high_ref: 471,
       16867  +
        low_ref: 472,
       16868  +
    },
       16869  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16870  +
        condition_index: 54,
       16871  +
        high_ref: 473,
       16872  +
        low_ref: 26,
       16873  +
    },
       16874  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16875  +
        condition_index: 53,
       16876  +
        high_ref: 100000037,
       16877  +
        low_ref: 474,
       16878  +
    },
       16879  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16880  +
        condition_index: 45,
       16881  +
        high_ref: 319,
       16882  +
        low_ref: 475,
       16883  +
    },
       16884  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16885  +
        condition_index: 43,
       16886  +
        high_ref: 465,
       16887  +
        low_ref: 476,
       16888  +
    },
       16889  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16890  +
        condition_index: 42,
       16891  +
        high_ref: 100000049,
       16892  +
        low_ref: 477,
       16893  +
    },
       16894  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16895  +
        condition_index: 41,
       16896  +
        high_ref: 478,
       16897  +
        low_ref: 100000049,
       16898  +
    },
       16899  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16900  +
        condition_index: 75,
       16901  +
        high_ref: 100000070,
       16902  +
        low_ref: 100000071,
       16903  +
    },
       16904  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16905  +
        condition_index: 72,
       16906  +
        high_ref: 480,
       16907  +
        low_ref: 100000072,
       16908  +
    },
       16909  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16910  +
        condition_index: 70,
       16911  +
        high_ref: 481,
       16912  +
        low_ref: 100000044,
       16913  +
    },
       16914  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16915  +
        condition_index: 67,
       16916  +
        high_ref: 482,
       16917  +
        low_ref: 100000045,
       16918  +
    },
       16919  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16920  +
        condition_index: 66,
       16921  +
        high_ref: 483,
       16922  +
        low_ref: 100000046,
       16923  +
    },
       16924  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16925  +
        condition_index: 65,
       16926  +
        high_ref: 484,
       16927  +
        low_ref: 341,
       16928  +
    },
       16929  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16930  +
        condition_index: 64,
       16931  +
        high_ref: 485,
       16932  +
        low_ref: 100000074,
       16933  +
    },
       16934  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16935  +
        condition_index: 59,
       16936  +
        high_ref: 486,
       16937  +
        low_ref: 344,
       16938  +
    },
       16939  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16940  +
        condition_index: 58,
       16941  +
        high_ref: 486,
       16942  +
        low_ref: 487,
       16943  +
    },
       16944  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16945  +
        condition_index: 57,
       16946  +
        high_ref: 488,
       16947  +
        low_ref: 100000075,
       16948  +
    },
       16949  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16950  +
        condition_index: 56,
       16951  +
        high_ref: 100000068,
       16952  +
        low_ref: 489,
       16953  +
    },
       16954  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16955  +
        condition_index: 54,
       16956  +
        high_ref: 490,
       16957  +
        low_ref: 352,
       16958  +
    },
       16959  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16960  +
        condition_index: 52,
       16961  +
        high_ref: 491,
       16962  +
        low_ref: 100000076,
       16963  +
    },
       16964  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16965  +
        condition_index: 43,
       16966  +
        high_ref: 100000050,
       16967  +
        low_ref: 492,
       16968  +
    },
       16969  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16970  +
        condition_index: 40,
       16971  +
        high_ref: 479,
       16972  +
        low_ref: 493,
       16973  +
    },
       16974  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16975  +
        condition_index: 39,
       16976  +
        high_ref: 100000077,
       16977  +
        low_ref: 494,
       16978  +
    },
       16979  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16980  +
        condition_index: 38,
       16981  +
        high_ref: 495,
       16982  +
        low_ref: 100000077,
       16983  +
    },
       16984  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16985  +
        condition_index: 33,
       16986  +
        high_ref: 496,
       16987  +
        low_ref: 448,
       16988  +
    },
       16989  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16990  +
        condition_index: 31,
       16991  +
        high_ref: 497,
       16992  +
        low_ref: 449,
       16993  +
    },
       16994  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       16995  +
        condition_index: 21,
       16996  +
        high_ref: 454,
       16997  +
        low_ref: 498,
       16998  +
    },
       16999  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17000  +
        condition_index: 19,
       17001  +
        high_ref: 450,
       17002  +
        low_ref: 499,
       17003  +
    },
       17004  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17005  +
        condition_index: 15,
       17006  +
        high_ref: 8,
       17007  +
        low_ref: 500,
       17008  +
    },
       17009  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17010  +
        condition_index: 14,
       17011  +
        high_ref: 501,
       17012  +
        low_ref: 500,
       17013  +
    },
       17014  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17015  +
        condition_index: 13,
       17016  +
        high_ref: 502,
       17017  +
        low_ref: 500,
       17018  +
    },
       17019  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17020  +
        condition_index: 12,
       17021  +
        high_ref: 503,
       17022  +
        low_ref: 500,
       17023  +
    },
       17024  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17025  +
        condition_index: 11,
       17026  +
        high_ref: 504,
       17027  +
        low_ref: 500,
       17028  +
    },
       17029  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17030  +
        condition_index: 9,
       17031  +
        high_ref: 505,
       17032  +
        low_ref: 389,
       17033  +
    },
       17034  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17035  +
        condition_index: 8,
       17036  +
        high_ref: 409,
       17037  +
        low_ref: 506,
       17038  +
    },
       17039  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17040  +
        condition_index: 7,
       17041  +
        high_ref: 408,
       17042  +
        low_ref: 507,
       17043  +
    },
       17044  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17045  +
        condition_index: 37,
       17046  +
        high_ref: 398,
       17047  +
        low_ref: 120,
       17048  +
    },
       17049  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17050  +
        condition_index: 24,
       17051  +
        high_ref: 100000014,
       17052  +
        low_ref: 509,
       17053  +
    },
       17054  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17055  +
        condition_index: 20,
       17056  +
        high_ref: 510,
       17057  +
        low_ref: 509,
       17058  +
    },
       17059  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17060  +
        condition_index: 18,
       17061  +
        high_ref: 511,
       17062  +
        low_ref: 509,
       17063  +
    },
       17064  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17065  +
        condition_index: 17,
       17066  +
        high_ref: 512,
       17067  +
        low_ref: 509,
       17068  +
    },
       17069  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17070  +
        condition_index: 9,
       17071  +
        high_ref: 513,
       17072  +
        low_ref: 100000096,
       17073  +
    },
       17074  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17075  +
        condition_index: 6,
       17076  +
        high_ref: 508,
       17077  +
        low_ref: 514,
       17078  +
    },
       17079  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17080  +
        condition_index: 5,
       17081  +
        high_ref: 443,
       17082  +
        low_ref: 515,
       17083  +
    },
       17084  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17085  +
        condition_index: 4,
       17086  +
        high_ref: 407,
       17087  +
        low_ref: 516,
       17088  +
    },
       17089  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17090  +
        condition_index: 3,
       17091  +
        high_ref: 276,
       17092  +
        low_ref: 517,
       17093  +
    },
       17094  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17095  +
        condition_index: 2,
       17096  +
        high_ref: 130,
       17097  +
        low_ref: 518,
       17098  +
    },
       17099  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17100  +
        condition_index: 1,
       17101  +
        high_ref: 519,
       17102  +
        low_ref: 100000096,
       17103  +
    },
       17104  +
    crate::endpoint_lib::bdd_interpreter::BddNode {
       17105  +
        condition_index: 0,
       17106  +
        high_ref: 520,
       17107  +
        low_ref: 100000096,
       17108  +
    },
       17109  +
];
       17110  +
// These are all optional since they are set by conditions and will
       17111  +
// all be unset when we start evaluation
       17112  +
#[derive(Default)]
       17113  +
#[allow(unused_lifetimes)]
       17114  +
pub(crate) struct ConditionContext<'a> {
       17115  +
    pub(crate) effective_std_region: Option<::std::string::String>,
       17116  +
    pub(crate) partition_result: Option<crate::endpoint_lib::partition::Partition<'a>>,
       17117  +
    pub(crate) url: Option<crate::endpoint_lib::parse_url::Url<'a>>,
       17118  +
    pub(crate) access_point_suffix: Option<::std::string::String>,
       17119  +
    pub(crate) region_prefix: Option<::std::string::String>,
       17120  +
    pub(crate) hardware_type: Option<::std::string::String>,
       17121  +
    pub(crate) outpost_id_ssa_2: Option<::std::string::String>,
       17122  +
    pub(crate) s3_e_ds: Option<::std::string::String>,
       17123  +
    pub(crate) s3_e_fips: Option<::std::string::String>,
       17124  +
    pub(crate) s3_e_auth: Option<::std::string::String>,
       17125  +
    pub(crate) s3express_availability_zone_id: ::std::option::Option<::std::string::String>,
       17126  +
    pub(crate) bucket_arn: Option<crate::endpoint_lib::arn::Arn<'a>>,
       17127  +
    pub(crate) effective_arn_region: Option<::std::string::String>,
       17128  +
    pub(crate) uri_encoded_bucket: Option<::std::string::String>,
       17129  +
    pub(crate) arn_type: ::std::option::Option<::std::string::String>,
       17130  +
    pub(crate) access_point_name_ssa_1: ::std::option::Option<::std::string::String>,
       17131  +
    pub(crate) bucket_partition: Option<crate::endpoint_lib::partition::Partition<'a>>,
       17132  +
    pub(crate) outpost_id_ssa_1: ::std::option::Option<::std::string::String>,
       17133  +
    pub(crate) outpost_type: ::std::option::Option<::std::string::String>,
       17134  +
    pub(crate) access_point_name_ssa_2: ::std::option::Option<::std::string::String>,
       17135  +
    // Sometimes none of the members reference the lifetime, this makes it still valid
       17136  +
    phantom: std::marker::PhantomData<&'a ()>,
10302  17137   
}
10303  17138   
10304  17139   
#[non_exhaustive]
10305  17140   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
10306  17141   
/// Configuration parameters for resolving the correct endpoint
10307  17142   
pub struct Params {
10308  17143   
    /// The S3 bucket used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 bucket.
10309  17144   
    pub(crate) bucket: ::std::option::Option<::std::string::String>,
10310  17145   
    /// The AWS region used to dispatch the request.
10311  17146   
    pub(crate) region: ::std::option::Option<::std::string::String>,
@@ -10764,17599 +10795,0 @@
10784  17619   
impl std::fmt::Display for InvalidParams {
10785  17620   
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
10786  17621   
        match self.kind {
10787  17622   
            InvalidParamsErrorKind::MissingField => write!(f, "a required field was missing: `{}`", self.field),
10788  17623   
            InvalidParamsErrorKind::InvalidValue { message } => write!(f, "invalid value for field: `{}` - {}", self.field, message),
10789  17624   
        }
10790  17625   
    }
10791  17626   
}
10792  17627   
10793  17628   
impl std::error::Error for InvalidParams {}
10794         -
10795         -
mod internals;