AWS SDK

AWS SDK

rev. 628eeeeeed390f5efdbfe607c18848c033debd3e

Files changed:

tmp-codegen-diff/aws-sdk/sdk/aws-config/Cargo.toml

@@ -30,30 +90,90 @@
   50     50   
path = "../sts"
   51     51   
default-features = false
   52     52   
version = "0.0.0-local"
   53     53   
   54     54   
[dependencies.aws-smithy-async]
   55     55   
path = "../aws-smithy-async"
   56     56   
version = "1.2.5"
   57     57   
   58     58   
[dependencies.aws-smithy-http]
   59     59   
path = "../aws-smithy-http"
   60         -
version = "0.62.2"
          60  +
version = "0.62.3"
   61     61   
   62     62   
[dependencies.aws-smithy-json]
   63     63   
path = "../aws-smithy-json"
   64     64   
version = "0.61.4"
   65     65   
   66     66   
[dependencies.aws-smithy-runtime]
   67     67   
path = "../aws-smithy-runtime"
   68     68   
features = ["client"]
   69     69   
version = "1.8.5"
   70     70   

tmp-codegen-diff/aws-sdk/sdk/aws-runtime/Cargo.toml

@@ -10,10 +83,83 @@
   30     30   
pin-project-lite = "0.2.14"
   31     31   
tracing = "0.1.40"
   32     32   
   33     33   
[dependencies.aws-credential-types]
   34     34   
path = "../aws-credential-types"
   35     35   
version = "1.2.4"
   36     36   
   37     37   
[dependencies.aws-sigv4]
   38     38   
path = "../aws-sigv4"
   39     39   
features = ["http0-compat"]
   40         -
version = "1.3.3"
          40  +
version = "1.3.4"
   41     41   
   42     42   
[dependencies.aws-smithy-async]
   43     43   
path = "../aws-smithy-async"
   44     44   
version = "1.2.5"
   45     45   
   46     46   
[dependencies.aws-smithy-eventstream]
   47     47   
path = "../aws-smithy-eventstream"
   48     48   
optional = true
   49     49   
version = "0.60.10"
   50     50   
   51     51   
[dependencies.aws-smithy-http]
   52     52   
path = "../aws-smithy-http"
   53         -
version = "0.62.2"
          53  +
version = "0.62.3"
   54     54   
   55     55   
[dependencies.aws-smithy-runtime]
   56     56   
path = "../aws-smithy-runtime"
   57     57   
features = ["client"]
   58     58   
version = "1.8.5"
   59     59   
   60     60   
[dependencies.aws-smithy-runtime-api]
   61     61   
path = "../aws-smithy-runtime-api"
   62     62   
features = ["client"]
   63     63   
version = "1.8.5"

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/Cargo.toml

@@ -1,1 +130,130 @@
    3      3   
name = "hmac"
    4      4   
harness = false
    5      5   
    6      6   
[[bench]]
    7      7   
name = "sigv4a"
    8      8   
harness = false
    9      9   
required-features = ["sigv4a"]
   10     10   
   11     11   
[package]
   12     12   
name = "aws-sigv4"
   13         -
version = "1.3.3"
          13  +
version = "1.3.4"
   14     14   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "David Barsky <me@davidbarsky.com>"]
   15     15   
description = "SigV4 signer for HTTP requests and Event Stream messages."
   16     16   
edition = "2021"
   17     17   
exclude = ["aws-sig-v4-test-suite/*"]
   18     18   
license = "Apache-2.0"
   19     19   
repository = "https://github.com/smithy-lang/smithy-rs"
   20     20   
[package.metadata.docs.rs]
   21     21   
all-features = true
   22     22   
targets = ["x86_64-unknown-linux-gnu"]
   23     23   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
   24     24   
rustdoc-args = ["--cfg", "docsrs"]
   25     25   
   26     26   
[package.metadata.smithy-rs-release-tooling]
   27     27   
stable = true
   28     28   
   29     29   
[features]
   30     30   
default = ["sign-http", "http1"]
   31     31   
http0-compat = ["dep:http0"]
   32     32   
http1 = ["dep:http"]
   33     33   
sign-http = ["dep:http0", "dep:percent-encoding", "dep:form_urlencoded"]
   34     34   
sign-eventstream = ["dep:aws-smithy-eventstream"]
   35     35   
sigv4a = ["dep:p256", "dep:crypto-bigint", "dep:subtle", "dep:zeroize", "dep:ring"]
   36     36   
   37     37   
[dependencies]
   38     38   
bytes = "1.10.0"
   39     39   
hex = "0.4.3"
   40     40   
hmac = "0.12"
   41     41   
sha2 = "0.10"
   42     42   
time = "0.3.5"
   43     43   
tracing = "0.1.40"
   44     44   
   45     45   
[dependencies.aws-credential-types]
   46     46   
path = "../aws-credential-types"
   47     47   
version = "1.2.4"
   48     48   
   49     49   
[dependencies.aws-smithy-eventstream]
   50     50   
path = "../aws-smithy-eventstream"
   51     51   
optional = true
   52     52   
version = "0.60.10"
   53     53   
   54     54   
[dependencies.aws-smithy-http]
   55     55   
path = "../aws-smithy-http"
   56         -
version = "0.62.2"
          56  +
version = "0.62.3"
   57     57   
   58     58   
[dependencies.aws-smithy-runtime-api]
   59     59   
path = "../aws-smithy-runtime-api"
   60     60   
features = ["client"]
   61     61   
version = "1.8.5"
   62     62   
   63     63   
[dependencies.aws-smithy-types]
   64     64   
path = "../aws-smithy-types"
   65     65   
version = "1.3.2"
   66     66   
   67     67   
[dependencies.form_urlencoded]
   68     68   
version = "1.2.1"
   69     69   
optional = true
   70     70   
   71     71   
[dependencies.http0]
   72     72   
version = "0.2.9"
   73     73   
optional = true
   74     74   
package = "http"
   75     75   
   76     76   
[dependencies.http]
   77     77   
version = "1.1.0"
   78     78   
optional = true
   79     79   
   80     80   
[dependencies.p256]
   81     81   
version = "0.11"
   82     82   
features = ["ecdsa"]
   83     83   
optional = true
   84     84   
   85     85   
[dependencies.percent-encoding]
   86     86   
version = "2.3.1"
   87     87   
optional = true
   88     88   
   89     89   
[dependencies.ring]
   90     90   
version = "0.17.5"
   91     91   
optional = true
   92     92   
   93     93   
[dependencies.crypto-bigint]
   94     94   
version = "0.5.4"
   95     95   
optional = true
   96     96   
   97     97   
[dependencies.subtle]
   98     98   
version = "2.5.0"
   99     99   
optional = true
  100    100   
  101    101   
[dependencies.zeroize]
  102    102   
version = "^1.7.0"
  103    103   
optional = true
  104    104   
  105    105   
[dev-dependencies]
  106    106   
bytes = "1"
  107    107   
hex-literal = "0.4.1"
  108         -
httparse = "1.8"
         108  +
httparse = "1.10.1"
  109    109   
pretty_assertions = "1.3"
  110    110   
proptest = "1.2"
  111    111   
serde = "1.0.180"
  112    112   
serde_derive = "1.0.180"
  113    113   
serde_json = "1.0.104"
  114    114   
criterion = "0.5"
  115    115   
  116    116   
[dev-dependencies.aws-credential-types]
  117    117   
path = "../aws-credential-types"
  118    118   
features = ["test-util", "hardcoded-credentials"]

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/LICENSE

@@ -1,0 +202,0 @@
    1         -
    2         -
                                 Apache License
    3         -
                           Version 2.0, January 2004
    4         -
                        http://www.apache.org/licenses/
    5         -
    6         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
    7         -
    8         -
   1. Definitions.
    9         -
   10         -
      "License" shall mean the terms and conditions for use, reproduction,
   11         -
      and distribution as defined by Sections 1 through 9 of this document.
   12         -
   13         -
      "Licensor" shall mean the copyright owner or entity authorized by
   14         -
      the copyright owner that is granting the License.
   15         -
   16         -
      "Legal Entity" shall mean the union of the acting entity and all
   17         -
      other entities that control, are controlled by, or are under common
   18         -
      control with that entity. For the purposes of this definition,
   19         -
      "control" means (i) the power, direct or indirect, to cause the
   20         -
      direction or management of such entity, whether by contract or
   21         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
   22         -
      outstanding shares, or (iii) beneficial ownership of such entity.
   23         -
   24         -
      "You" (or "Your") shall mean an individual or Legal Entity
   25         -
      exercising permissions granted by this License.
   26         -
   27         -
      "Source" form shall mean the preferred form for making modifications,
   28         -
      including but not limited to software source code, documentation
   29         -
      source, and configuration files.
   30         -
   31         -
      "Object" form shall mean any form resulting from mechanical
   32         -
      transformation or translation of a Source form, including but
   33         -
      not limited to compiled object code, generated documentation,
   34         -
      and conversions to other media types.
   35         -
   36         -
      "Work" shall mean the work of authorship, whether in Source or
   37         -
      Object form, made available under the License, as indicated by a
   38         -
      copyright notice that is included in or attached to the work
   39         -
      (an example is provided in the Appendix below).
   40         -
   41         -
      "Derivative Works" shall mean any work, whether in Source or Object
   42         -
      form, that is based on (or derived from) the Work and for which the
   43         -
      editorial revisions, annotations, elaborations, or other modifications
   44         -
      represent, as a whole, an original work of authorship. For the purposes
   45         -
      of this License, Derivative Works shall not include works that remain
   46         -
      separable from, or merely link (or bind by name) to the interfaces of,
   47         -
      the Work and Derivative Works thereof.
   48         -
   49         -
      "Contribution" shall mean any work of authorship, including
   50         -
      the original version of the Work and any modifications or additions
   51         -
      to that Work or Derivative Works thereof, that is intentionally
   52         -
      submitted to Licensor for inclusion in the Work by the copyright owner
   53         -
      or by an individual or Legal Entity authorized to submit on behalf of
   54         -
      the copyright owner. For the purposes of this definition, "submitted"
   55         -
      means any form of electronic, verbal, or written communication sent
   56         -
      to the Licensor or its representatives, including but not limited to
   57         -
      communication on electronic mailing lists, source code control systems,
   58         -
      and issue tracking systems that are managed by, or on behalf of, the
   59         -
      Licensor for the purpose of discussing and improving the Work, but
   60         -
      excluding communication that is conspicuously marked or otherwise
   61         -
      designated in writing by the copyright owner as "Not a Contribution."
   62         -
   63         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
   64         -
      on behalf of whom a Contribution has been received by Licensor and
   65         -
      subsequently incorporated within the Work.
   66         -
   67         -
   2. Grant of Copyright License. Subject to the terms and conditions of
   68         -
      this License, each Contributor hereby grants to You a perpetual,
   69         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
   70         -
      copyright license to reproduce, prepare Derivative Works of,
   71         -
      publicly display, publicly perform, sublicense, and distribute the
   72         -
      Work and such Derivative Works in Source or Object form.
   73         -
   74         -
   3. Grant of Patent License. Subject to the terms and conditions of
   75         -
      this License, each Contributor hereby grants to You a perpetual,
   76         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
   77         -
      (except as stated in this section) patent license to make, have made,
   78         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
   79         -
      where such license applies only to those patent claims licensable
   80         -
      by such Contributor that are necessarily infringed by their
   81         -
      Contribution(s) alone or by combination of their Contribution(s)
   82         -
      with the Work to which such Contribution(s) was submitted. If You
   83         -
      institute patent litigation against any entity (including a
   84         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
   85         -
      or a Contribution incorporated within the Work constitutes direct
   86         -
      or contributory patent infringement, then any patent licenses
   87         -
      granted to You under this License for that Work shall terminate
   88         -
      as of the date such litigation is filed.
   89         -
   90         -
   4. Redistribution. You may reproduce and distribute copies of the
   91         -
      Work or Derivative Works thereof in any medium, with or without
   92         -
      modifications, and in Source or Object form, provided that You
   93         -
      meet the following conditions:
   94         -
   95         -
      (a) You must give any other recipients of the Work or
   96         -
          Derivative Works a copy of this License; and
   97         -
   98         -
      (b) You must cause any modified files to carry prominent notices
   99         -
          stating that You changed the files; and
  100         -
  101         -
      (c) You must retain, in the Source form of any Derivative Works
  102         -
          that You distribute, all copyright, patent, trademark, and
  103         -
          attribution notices from the Source form of the Work,
  104         -
          excluding those notices that do not pertain to any part of
  105         -
          the Derivative Works; and
  106         -
  107         -
      (d) If the Work includes a "NOTICE" text file as part of its
  108         -
          distribution, then any Derivative Works that You distribute must
  109         -
          include a readable copy of the attribution notices contained
  110         -
          within such NOTICE file, excluding those notices that do not
  111         -
          pertain to any part of the Derivative Works, in at least one
  112         -
          of the following places: within a NOTICE text file distributed
  113         -
          as part of the Derivative Works; within the Source form or
  114         -
          documentation, if provided along with the Derivative Works; or,
  115         -
          within a display generated by the Derivative Works, if and
  116         -
          wherever such third-party notices normally appear. The contents
  117         -
          of the NOTICE file are for informational purposes only and
  118         -
          do not modify the License. You may add Your own attribution
  119         -
          notices within Derivative Works that You distribute, alongside
  120         -
          or as an addendum to the NOTICE text from the Work, provided
  121         -
          that such additional attribution notices cannot be construed
  122         -
          as modifying the License.
  123         -
  124         -
      You may add Your own copyright statement to Your modifications and
  125         -
      may provide additional or different license terms and conditions
  126         -
      for use, reproduction, or distribution of Your modifications, or
  127         -
      for any such Derivative Works as a whole, provided Your use,
  128         -
      reproduction, and distribution of the Work otherwise complies with
  129         -
      the conditions stated in this License.
  130         -
  131         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  132         -
      any Contribution intentionally submitted for inclusion in the Work
  133         -
      by You to the Licensor shall be under the terms and conditions of
  134         -
      this License, without any additional terms or conditions.
  135         -
      Notwithstanding the above, nothing herein shall supersede or modify
  136         -
      the terms of any separate license agreement you may have executed
  137         -
      with Licensor regarding such Contributions.
  138         -
  139         -
   6. Trademarks. This License does not grant permission to use the trade
  140         -
      names, trademarks, service marks, or product names of the Licensor,
  141         -
      except as required for reasonable and customary use in describing the
  142         -
      origin of the Work and reproducing the content of the NOTICE file.
  143         -
  144         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  145         -
      agreed to in writing, Licensor provides the Work (and each
  146         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  147         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  148         -
      implied, including, without limitation, any warranties or conditions
  149         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  150         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  151         -
      appropriateness of using or redistributing the Work and assume any
  152         -
      risks associated with Your exercise of permissions under this License.
  153         -
  154         -
   8. Limitation of Liability. In no event and under no legal theory,
  155         -
      whether in tort (including negligence), contract, or otherwise,
  156         -
      unless required by applicable law (such as deliberate and grossly
  157         -
      negligent acts) or agreed to in writing, shall any Contributor be
  158         -
      liable to You for damages, including any direct, indirect, special,
  159         -
      incidental, or consequential damages of any character arising as a
  160         -
      result of this License or out of the use or inability to use the
  161         -
      Work (including but not limited to damages for loss of goodwill,
  162         -
      work stoppage, computer failure or malfunction, or any and all
  163         -
      other commercial damages or losses), even if such Contributor
  164         -
      has been advised of the possibility of such damages.
  165         -
  166         -
   9. Accepting Warranty or Additional Liability. While redistributing
  167         -
      the Work or Derivative Works thereof, You may choose to offer,
  168         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  169         -
      or other liability obligations and/or rights consistent with this
  170         -
      License. However, in accepting such obligations, You may act only
  171         -
      on Your own behalf and on Your sole responsibility, not on behalf
  172         -
      of any other Contributor, and only if You agree to indemnify,
  173         -
      defend, and hold each Contributor harmless for any liability
  174         -
      incurred by, or claims asserted against, such Contributor by reason
  175         -
      of your accepting any such warranty or additional liability.
  176         -
  177         -
   END OF TERMS AND CONDITIONS
  178         -
  179         -
   APPENDIX: How to apply the Apache License to your work.
  180         -
  181         -
      To apply the Apache License to your work, attach the following
  182         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  183         -
      replaced with your own identifying information. (Don't include
  184         -
      the brackets!)  The text should be enclosed in the appropriate
  185         -
      comment syntax for the file format. We also recommend that a
  186         -
      file or class name and description of purpose be included on the
  187         -
      same "printed page" as the copyright notice for easier
  188         -
      identification within third-party archives.
  189         -
  190         -
   Copyright [yyyy] [name of copyright owner]
  191         -
  192         -
   Licensed under the Apache License, Version 2.0 (the "License");
  193         -
   you may not use this file except in compliance with the License.
  194         -
   You may obtain a copy of the License at
  195         -
  196         -
       http://www.apache.org/licenses/LICENSE-2.0
  197         -
  198         -
   Unless required by applicable law or agreed to in writing, software
  199         -
   distributed under the License is distributed on an "AS IS" BASIS,
  200         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  201         -
   See the License for the specific language governing permissions and
  202         -
   limitations under the License.

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/NOTICE

@@ -1,0 +2,0 @@
    1         -
AWS Signature Version 4 Test Suite
    2         -
Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/README.md

@@ -1,0 +39,0 @@
    1         -
Where did the files in this directory come from?
    2         -
================================================
    3         -
    4         -
These test files were taken from the now defunct Signature Version 4 Test Suite documentation
    5         -
from the [AWS General Reference](https://docs.aws.amazon.com/general/latest/gr/Welcome.html).
    6         -
    7         -
Signature Version 4 Test Suite
    8         -
------------------------------
    9         -
   10         -
To assist you in the development of an AWS client that supports Signature Version 4, you can use the
   11         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
   12         -
   13         -
Each test group contains five files that you can use to validate each of the tasks described in
   14         -
Signature Version 4 Signing Process. The following list describes the contents of each file.
   15         -
   16         -
- file-name.req - the web request to be signed.
   17         -
- file-name.creq - the resulting canonical request.
   18         -
- file-name.sts - the resulting string to sign.
   19         -
- file-name.authz - the Authorization header.
   20         -
- file-name.sreq - the signed request.
   21         -
   22         -
The examples in the test suite use the following credential scope:
   23         -
   24         -
```
   25         -
AKIDEXAMPLE/20150830/us-east-1/service/aws4_request
   26         -
```
   27         -
   28         -
The example secret key used for signing is:
   29         -
   30         -
```
   31         -
wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY
   32         -
```
   33         -
   34         -
Changes Made to the Test Suite for the Rust SDK
   35         -
-----------------------------------------------
   36         -
   37         -
Some additions were made to the test suite for the Rust SDK:
   38         -
- `iam/iam.creq` was added to facilitate signature calculation unit tests.
   39         -
- `file-name.qpsreq` was added to represent a request that was signed with query parameters.

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.authz

@@ -1,0 +9603,11776 @@
    1         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20210511/us-east-2/lambda/aws4_request, SignedHeaders=host;x-amz-date, Signature=4b93abbcc68be32bd64c18e2c71150660ab4c29bbd6c32a383a7517a88fc1804
              \
 No newline at end of file
    2      0   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.authz
    3      1   
deleted file mode 100644
    4      2   
index ade3ec7..0000000
    5         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.authz
           3  +
++ /dev/null
    6      4   
@@ -1 +0,0 @@
    7         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
    8      5   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sreq
    9      6   
deleted file mode 100644
   10      7   
index f0166e1..0000000
   11         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sreq
           8  +
++ /dev/null
   12      9   
@@ -1,7 +0,0 @@
   13         -
GET / HTTP/1.1
   14         -
Host:example.amazonaws.com
   15         -
My-Header1:value2
   16         -
My-Header1:value2
   17         -
My-Header1:value1
   18         -
X-Amz-Date:20150830T123600Z
   19         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
   20     10   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.authz
   21     11   
deleted file mode 100644
   22     12   
index e2717bf..0000000
   23         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.authz
          13  +
++ /dev/null
   24     14   
@@ -1 +0,0 @@
   25         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=ba17b383a53190154eb5fa66a1b836cc297cc0a3d70a5d00705980573d8ff790
              \
 No newline at end of file
   26     15   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sreq
   27     16   
deleted file mode 100644
   28     17   
index 56955d9..0000000
   29         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sreq
          18  +
++ /dev/null
   30     19   
@@ -1,7 +0,0 @@
   31         -
GET / HTTP/1.1
   32         -
Host:example.amazonaws.com
   33         -
My-Header1:value1
   34         -
  value2
   35         -
     value3
   36         -
X-Amz-Date:20150830T123600Z
   37         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=ba17b383a53190154eb5fa66a1b836cc297cc0a3d70a5d00705980573d8ff790
              \
 No newline at end of file
   38     20   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.authz
   39     21   
deleted file mode 100644
   40     22   
index c0409ab..0000000
   41         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.authz
          23  +
++ /dev/null
   42     24   
@@ -1 +0,0 @@
   43         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
   44     25   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sreq
   45     26   
deleted file mode 100644
   46     27   
index 79e16a9..0000000
   47         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sreq
          28  +
++ /dev/null
   48     29   
@@ -1,8 +0,0 @@
   49         -
GET / HTTP/1.1
   50         -
Host:example.amazonaws.com
   51         -
My-Header1:value4
   52         -
My-Header1:value1
   53         -
My-Header1:value3
   54         -
My-Header1:value2
   55         -
X-Amz-Date:20150830T123600Z
   56         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
   57     30   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.authz
   58     31   
deleted file mode 100644
   59     32   
index 4874ac0..0000000
   60         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.authz
          33  +
++ /dev/null
   61     34   
@@ -1 +0,0 @@
   62         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
   63     35   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sreq
   64     36   
deleted file mode 100644
   65     37   
index 98224c9..0000000
   66         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sreq
          38  +
++ /dev/null
   67     39   
@@ -1,6 +0,0 @@
   68         -
GET / HTTP/1.1
   69         -
Host:example.amazonaws.com
   70         -
My-Header1: value1
   71         -
My-Header2: "a   b   c"
   72         -
X-Amz-Date:20150830T123600Z
   73         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
   74     40   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.authz
   75     41   
deleted file mode 100644
   76     42   
index 2943ec8..0000000
   77         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.authz
          43  +
++ /dev/null
   78     44   
@@ -1 +0,0 @@
   79         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
   80     45   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sreq
   81     46   
deleted file mode 100644
   82     47   
index 8001b3d..0000000
   83         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sreq
          48  +
++ /dev/null
   84     49   
@@ -1,4 +0,0 @@
   85         -
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
   86         -
Host:example.amazonaws.com
   87         -
X-Amz-Date:20150830T123600Z
   88         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
   89     50   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.authz
   90     51   
deleted file mode 100644
   91     52   
index 738b3fb..0000000
   92         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.authz
          53  +
++ /dev/null
   93     54   
@@ -1 +0,0 @@
   94         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
   95     55   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sreq
   96     56   
deleted file mode 100644
   97     57   
index 94eadb6..0000000
   98         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sreq
          58  +
++ /dev/null
   99     59   
@@ -1,4 +0,0 @@
  100         -
GET /ሴ HTTP/1.1
  101         -
Host:example.amazonaws.com
  102         -
X-Amz-Date:20150830T123600Z
  103         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
  104     60   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.authz
  105     61   
deleted file mode 100644
  106     62   
index 65b5c7c..0000000
  107         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.authz
          63  +
++ /dev/null
  108     64   
@@ -1 +0,0 @@
  109         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
  110     65   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.sreq
  111     66   
deleted file mode 100644
  112     67   
index f081591..0000000
  113         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.sreq
          68  +
++ /dev/null
  114     69   
@@ -1,4 +0,0 @@
  115         -
GET /?Param1=value1 HTTP/1.1
  116         -
Host:example.amazonaws.com
  117         -
X-Amz-Date:20150830T123600Z
  118         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
  119     70   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.authz
  120     71   
deleted file mode 100644
  121     72   
index c781fe6..0000000
  122         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.authz
          73  +
++ /dev/null
  123     74   
@@ -1 +0,0 @@
  124         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
  125     75   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.qpsreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.qpsreq
  126     76   
deleted file mode 100644
  127     77   
index b29c1e0..0000000
  128         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.qpsreq
          78  +
++ /dev/null
  129     79   
@@ -1,2 +0,0 @@
  130         -
GET /?Param2=value2&Param1=value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ANOTREAL%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=35&X-Amz-SignedHeaders=host&X-Amz-Signature=ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab HTTP/1.1
  131         -
Host:example.amazonaws.com
  132     80   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.sreq
  133     81   
deleted file mode 100644
  134     82   
index e55b6b8..0000000
  135         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.sreq
          83  +
++ /dev/null
  136     84   
@@ -1,4 +0,0 @@
  137         -
GET /?Param2=value2&Param1=value1 HTTP/1.1
  138         -
Host:example.amazonaws.com
  139         -
X-Amz-Date:20150830T123600Z
  140         -
Authorization: AWS4-HMAC-SHA256 Credential=ANOTREAL/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947
  141     85   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.authz
  142     86   
deleted file mode 100644
  143     87   
index 812cd3f..0000000
  144         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.authz
          88  +
++ /dev/null
  145     89   
@@ -1 +0,0 @@
  146         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eedbc4e291e521cf13422ffca22be7d2eb8146eecf653089df300a15b2382bd1
              \
 No newline at end of file
  147     90   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.req
  148     91   
deleted file mode 100644
  149     92   
index 375a496..0000000
  150         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.req
          93  +
++ /dev/null
  151     94   
@@ -1,3 +0,0 @@
  152         -
GET /?Param1=value2&Param1=Value1 HTTP/1.1
  153         -
Host:example.amazonaws.com
  154         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  155     95   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.sreq
  156     96   
deleted file mode 100644
  157     97   
index bc8e652..0000000
  158         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.sreq
          98  +
++ /dev/null
  159     99   
@@ -1,4 +0,0 @@
  160         -
GET /?Param1=value2&Param1=Value1 HTTP/1.1
  161         -
Host:example.amazonaws.com
  162         -
X-Amz-Date:20150830T123600Z
  163         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eedbc4e291e521cf13422ffca22be7d2eb8146eecf653089df300a15b2382bd1
              \
 No newline at end of file
  164    100   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.authz
  165    101   
deleted file mode 100644
  166    102   
index b8ad91f..0000000
  167         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.authz
         103  +
++ /dev/null
  168    104   
@@ -1 +0,0 @@
  169         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5772eed61e12b33fae39ee5e7012498b51d56abc0abb7c60486157bd471c4694
              \
 No newline at end of file
  170    105   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.req
  171    106   
deleted file mode 100644
  172    107   
index 9255bee..0000000
  173         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.req
         108  +
++ /dev/null
  174    109   
@@ -1,3 +0,0 @@
  175         -
GET /?Param1=value2&Param1=value1 HTTP/1.1
  176         -
Host:example.amazonaws.com
  177         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  178    110   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.sreq
  179    111   
deleted file mode 100644
  180    112   
index 4793e21..0000000
  181         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.sreq
         113  +
++ /dev/null
  182    114   
@@ -1,4 +0,0 @@
  183         -
GET /?Param1=value2&Param1=value1 HTTP/1.1
  184         -
Host:example.amazonaws.com
  185         -
X-Amz-Date:20150830T123600Z
  186         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5772eed61e12b33fae39ee5e7012498b51d56abc0abb7c60486157bd471c4694
              \
 No newline at end of file
  187    115   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.authz
  188    116   
deleted file mode 100644
  189    117   
index a44ca5b..0000000
  190         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.authz
         118  +
++ /dev/null
  191    119   
@@ -1 +0,0 @@
  192         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
  193    120   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.authz
  194    121   
deleted file mode 100644
  195    122   
index 551c027..0000000
  196         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.authz
         123  +
++ /dev/null
  197    124   
@@ -1 +0,0 @@
  198         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  199    125   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sreq
  200    126   
deleted file mode 100644
  201    127   
index d739b01..0000000
  202         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sreq
         128  +
++ /dev/null
  203    129   
@@ -1,4 +0,0 @@
  204         -
GET / HTTP/1.1
  205         -
Host:example.amazonaws.com
  206         -
X-Amz-Date:20150830T123600Z
  207         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  208    130   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.authz
  209    131   
deleted file mode 100644
  210    132   
index e016c3d..0000000
  211         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.authz
         133  +
++ /dev/null
  212    134   
@@ -1 +0,0 @@
  213         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
  214    135   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sreq
  215    136   
deleted file mode 100644
  216    137   
index 7baf4c8..0000000
  217         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sreq
         138  +
++ /dev/null
  218    139   
@@ -1,4 +0,0 @@
  219         -
GET /?ሴ=bar HTTP/1.1
  220         -
Host:example.amazonaws.com
  221         -
X-Amz-Date:20150830T123600Z
  222         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
  223    140   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.authz
  224    141   
deleted file mode 100644
  225    142   
index 551c027..0000000
  226         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.authz
         143  +
++ /dev/null
  227    144   
@@ -1 +0,0 @@
  228         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  229    145   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sreq
  230    146   
deleted file mode 100644
  231    147   
index d739b01..0000000
  232         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sreq
         148  +
++ /dev/null
  233    149   
@@ -1,4 +0,0 @@
  234         -
GET / HTTP/1.1
  235         -
Host:example.amazonaws.com
  236         -
X-Amz-Date:20150830T123600Z
  237         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  238    150   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/iam/iam.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/iam/iam.creq
  239    151   
deleted file mode 100644
  240    152   
index 1336241..0000000
  241         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/iam/iam.creq
         153  +
++ /dev/null
  242    154   
@@ -1,4 +0,0 @@
  243         -
AWS4-HMAC-SHA256
  244         -
20150830T123600Z
  245         -
20150830/us-east-1/iam/aws4_request
  246         -
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59
  247    155   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.authz
  248    156   
deleted file mode 100644
  249    157   
index 551c027..0000000
  250         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.authz
         158  +
++ /dev/null
  251    159   
@@ -1 +0,0 @@
  252         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  253    160   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sreq
  254    161   
deleted file mode 100644
  255    162   
index cbdebe2..0000000
  256         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sreq
         163  +
++ /dev/null
  257    164   
@@ -1,4 +0,0 @@
  258         -
GET /example1/example2/../.. HTTP/1.1
  259         -
Host:example.amazonaws.com
  260         -
X-Amz-Date:20150830T123600Z
  261         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  262    165   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.authz
  263    166   
deleted file mode 100644
  264    167   
index 551c027..0000000
  265         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.authz
         168  +
++ /dev/null
  266    169   
@@ -1 +0,0 @@
  267         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  268    170   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sreq
  269    171   
deleted file mode 100644
  270    172   
index 4f59e7d..0000000
  271         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sreq
         173  +
++ /dev/null
  272    174   
@@ -1,4 +0,0 @@
  273         -
GET /example/.. HTTP/1.1
  274         -
Host:example.amazonaws.com
  275         -
X-Amz-Date:20150830T123600Z
  276         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  277    175   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.authz
  278    176   
deleted file mode 100644
  279    177   
index 551c027..0000000
  280         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.authz
         178  +
++ /dev/null
  281    179   
@@ -1 +0,0 @@
  282         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  283    180   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.sreq
  284    181   
deleted file mode 100644
  285    182   
index 23a2b41..0000000
  286         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.sreq
         183  +
++ /dev/null
  287    184   
@@ -1,4 +0,0 @@
  288         -
GET /./ HTTP/1.1
  289         -
Host:example.amazonaws.com
  290         -
X-Amz-Date:20150830T123600Z
  291         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  292    185   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.authz
  293    186   
deleted file mode 100644
  294    187   
index b76ca1e..0000000
  295         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.authz
         188  +
++ /dev/null
  296    189   
@@ -1 +0,0 @@
  297         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
  298    190   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.sreq
  299    191   
deleted file mode 100644
  300    192   
index 8096609..0000000
  301         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.sreq
         193  +
++ /dev/null
  302    194   
@@ -1,4 +0,0 @@
  303         -
GET /./example HTTP/1.1
  304         -
Host:example.amazonaws.com
  305         -
X-Amz-Date:20150830T123600Z
  306         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
  307    195   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.authz
  308    196   
deleted file mode 100644
  309    197   
index 551c027..0000000
  310         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.authz
         198  +
++ /dev/null
  311    199   
@@ -1 +0,0 @@
  312         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  313    200   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq
  314    201   
deleted file mode 100644
  315    202   
index cde31b4..0000000
  316         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq
         203  +
++ /dev/null
  317    204   
@@ -1,4 +0,0 @@
  318         -
GET // HTTP/1.1
  319         -
Host:example.amazonaws.com
  320         -
X-Amz-Date:20150830T123600Z
  321         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  322    205   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.authz
  323    206   
deleted file mode 100644
  324    207   
index 307c105..0000000
  325         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.authz
         208  +
++ /dev/null
  326    209   
@@ -1 +0,0 @@
  327         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
  328    210   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq
  329    211   
deleted file mode 100644
  330    212   
index c84a80d..0000000
  331         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq
         213  +
++ /dev/null
  332    214   
@@ -1,4 +0,0 @@
  333         -
GET //example// HTTP/1.1
  334         -
Host:example.amazonaws.com
  335         -
X-Amz-Date:20150830T123600Z
  336         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
  337    215   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz
  338    216   
deleted file mode 100644
  339    217   
index 832d8a5..0000000
  340         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz
         218  +
++ /dev/null
  341    219   
@@ -1 +0,0 @@
  342         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
  343    220   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq
  344    221   
deleted file mode 100644
  345    222   
index eefa20c..0000000
  346         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq
         223  +
++ /dev/null
  347    224   
@@ -1,4 +0,0 @@
  348         -
GET /example space/ HTTP/1.1
  349         -
Host:example.amazonaws.com
  350         -
X-Amz-Date:20150830T123600Z
  351         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
  352    225   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt
  353    226   
deleted file mode 100644
  354    227   
index c2fcb27..0000000
  355         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt
         228  +
++ /dev/null
  356    229   
@@ -1,3 +0,0 @@
  357         -
A note about signing requests to Amazon S3:
  358         -

  359         -
In exception to this, you do not normalize URI paths for requests to Amazon S3. For example, if you have a bucket with an object named my-object//example//photo.user, use that path. Normalizing the path to my-object/example/photo.user will cause the request to fail. For more information, see Task 1: Create a Canonical Request in the Amazon Simple Storage Service API Reference: http://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-header-based-auth.html#canonical-request
              \
 No newline at end of file
  360    230   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
  361    231   
deleted file mode 100644
  362    232   
index 89e572e..0000000
  363         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
         233  +
++ /dev/null
  364    234   
@@ -1 +0,0 @@
  365         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
  366    235   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
  367    236   
deleted file mode 100644
  368    237   
index fcf23ce..0000000
  369         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
         238  +
++ /dev/null
  370    239   
@@ -1,4 +0,0 @@
  371         -
POST / HTTP/1.1
  372         -
Host:example.amazonaws.com
  373         -
X-Amz-Date:20150830T123600Z
  374         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
  375    240   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
  376    241   
deleted file mode 100644
  377    242   
index a62589f..0000000
  378         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
         243  +
++ /dev/null
  379    244   
@@ -1 +0,0 @@
  380         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
  381    245   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
  382    246   
deleted file mode 100644
  383    247   
index b4b78a1..0000000
  384         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
         248  +
++ /dev/null
  385    249   
@@ -1,5 +0,0 @@
  386         -
POST / HTTP/1.1
  387         -
Host:example.amazonaws.com
  388         -
My-Header1:value1
  389         -
X-Amz-Date:20150830T123600Z
  390         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
  391    250   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
  392    251   
deleted file mode 100644
  393    252   
index d9e52a3..0000000
  394         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
         253  +
++ /dev/null
  395    254   
@@ -1 +0,0 @@
  396         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
  397    255   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
  398    256   
deleted file mode 100644
  399    257   
index 99c3210..0000000
  400         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
         258  +
++ /dev/null
  401    259   
@@ -1,5 +0,0 @@
  402         -
POST / HTTP/1.1
  403         -
Host:example.amazonaws.com
  404         -
My-Header1:VALUE1
  405         -
X-Amz-Date:20150830T123600Z
  406         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
  407    260   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.authz
  408    261   
deleted file mode 100644
  409    262   
index 89e572e..0000000
  410         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.authz
         263  +
++ /dev/null
  411    264   
@@ -1 +0,0 @@
  412         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
  413    265   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.authz
  414    266   
deleted file mode 100644
  415    267   
index 64aa046..0000000
  416         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.authz
         268  +
++ /dev/null
  417    269   
@@ -1 +0,0 @@
  418         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
  419    270   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
  420    271   
deleted file mode 100644
  421    272   
index cc34282..0000000
  422         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
         273  +
++ /dev/null
  423    274   
@@ -1,15 +0,0 @@
  424         -
A note about using temporary security credentials:
  425         -

  426         -
You can use temporary security credentials provided by the AWS Security Token Service (AWS STS) to sign a request. The process is the same as using long-term credentials but requires an additional HTTP header or query string parameter for the security token. The name of the header or query string parameter is X-Amz-Security-Token, and the value is the session token (the string that you received from AWS STS when you obtained temporary security credentials).
  427         -

  428         -
When you add X-Amz-Security-Token, some services require that you include this parameter in the canonical (signed) request. For other services, you add this parameter at the end, after you calculate the signature. For details see the API reference documentation for that service.
  429         -

  430         -
The test suite has 2 examples:
  431         -

  432         -
post-sts-header-before - The X-Amz-Security-Token header is part of the canonical request.
  433         -

  434         -
post-sts-header-after - The X-Amz-Security-Token header is added to the request after you calculate the signature.
  435         -

  436         -
The test suite uses this example value for X-Amz-Security-Token:
  437         -

  438         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
  439    275   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.authz
  440    276   
deleted file mode 100644
  441    277   
index 44280cd..0000000
  442         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.authz
         278  +
++ /dev/null
  443    279   
@@ -1 +0,0 @@
  444         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
  445    280   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.sreq
  446    281   
deleted file mode 100644
  447    282   
index 82af150..0000000
  448         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.sreq
         283  +
++ /dev/null
  449    284   
@@ -1,4 +0,0 @@
  450         -
POST /?Param1=value1 HTTP/1.1
  451         -
Host:example.amazonaws.com
  452         -
X-Amz-Date:20150830T123600Z
  453         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
  454    285   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
  455    286   
deleted file mode 100644
  456    287   
index 44280cd..0000000
  457         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
         288  +
++ /dev/null
  458    289   
@@ -1 +0,0 @@
  459         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
  460    290   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
  461    291   
deleted file mode 100644
  462    292   
index 82af150..0000000
  463         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
         293  +
++ /dev/null
  464    294   
@@ -1,4 +0,0 @@
  465         -
POST /?Param1=value1 HTTP/1.1
  466         -
Host:example.amazonaws.com
  467         -
X-Amz-Date:20150830T123600Z
  468         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
  469    295   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
  470    296   
deleted file mode 100644
  471    297   
index 89e572e..0000000
  472         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
         298  +
++ /dev/null
  473    299   
@@ -1 +0,0 @@
  474         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
  475    300   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
  476    301   
deleted file mode 100644
  477    302   
index a5ada0d..0000000
  478         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
         303  +
++ /dev/null
  479    304   
@@ -1,4 +0,0 @@
  480         -
POST / HTTP/1.1
  481         -
Host:example.amazonaws.com
  482         -
X-Amz-Date:20150830T123600Z
  483         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
  484    305   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.authz
  485    306   
deleted file mode 100644
  486    307   
index df90ca3..0000000
  487         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.authz
         308  +
++ /dev/null
  488    309   
@@ -1 +0,0 @@
  489         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
              \
 No newline at end of file
  490    310   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.creq
  491    311   
deleted file mode 100644
  492    312   
index 457b0d5..0000000
  493         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.creq
         313  +
++ /dev/null
  494    314   
@@ -1,9 +0,0 @@
  495         -
POST
  496         -
/
  497         -
Param1=value1
  498         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  499         -
host:example.amazonaws.com
  500         -
x-amz-date:20150830T123600Z
  501         -
  502         -
content-type;host;x-amz-date
  503         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  504    315   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.sreq
  505    316   
deleted file mode 100644
  506    317   
index b8ecb89..0000000
  507         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.sreq
         318  +
++ /dev/null
  508    319   
@@ -1,7 +0,0 @@
  509         -
POST / HTTP/1.1
  510         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  511         -
Host:example.amazonaws.com
  512         -
X-Amz-Date:20150830T123600Z
  513         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  514         -
  515         -
Param1=value1
              \
 No newline at end of file
  516    320   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.authz
  517    321   
deleted file mode 100644
  518    322   
index 79077d2..0000000
  519         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.authz
         323  +
++ /dev/null
  520    324   
@@ -1 +0,0 @@
  521         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=0c3bc22986c53164a4755b4466c2e17db853888c5ddb98567e700a3ecdb262f6
              \
 No newline at end of file
  522    325   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.req
  523    326   
deleted file mode 100644
  524    327   
index 7852617..0000000
  525         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.req
         328  +
++ /dev/null
  526    329   
@@ -1,4 +0,0 @@
  527         -
POST / HTTP/1.1
  528         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  529         -
Host:example.amazonaws.com
  530         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  531    330   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sreq
  532    331   
deleted file mode 100644
  533    332   
index 3e2e571..0000000
  534         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sreq
         333  +
++ /dev/null
  535    334   
@@ -1,4 +0,0 @@
  536         -
POST / HTTP/1.1
  537         -
Host:example.amazonaws.com
  538         -
X-Amz-Date:20150830T123600Z
  539         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=0c3bc22986c53164a4755b4466c2e17db853888c5ddb98567e700a3ecdb262f6
              \
 No newline at end of file
  540    335   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sts
  541    336   
deleted file mode 100644
  542    337   
index 89ceae8..0000000
  543         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sts
         338  +
++ /dev/null
  544    339   
@@ -1,4 +0,0 @@
  545         -
AWS4-HMAC-SHA256
  546         -
20150830T123600Z
  547         -
20150830/us-east-1/service/aws4_request
  548         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  549    340   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
  550    341   
deleted file mode 100755
  551    342   
index d645695..0000000
  552         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
         343  +
++ /dev/null
  553    344   
@@ -1,202 +0,0 @@
  554         -
  555         -
                                 Apache License
  556         -
                           Version 2.0, January 2004
  557         -
                        http://www.apache.org/licenses/
  558         -
  559         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  560         -
  561         -
   1. Definitions.
  562         -
  563         -
      "License" shall mean the terms and conditions for use, reproduction,
  564         -
      and distribution as defined by Sections 1 through 9 of this document.
  565         -
  566         -
      "Licensor" shall mean the copyright owner or entity authorized by
  567         -
      the copyright owner that is granting the License.
  568         -
  569         -
      "Legal Entity" shall mean the union of the acting entity and all
  570         -
      other entities that control, are controlled by, or are under common
  571         -
      control with that entity. For the purposes of this definition,
  572         -
      "control" means (i) the power, direct or indirect, to cause the
  573         -
      direction or management of such entity, whether by contract or
  574         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  575         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  576         -
  577         -
      "You" (or "Your") shall mean an individual or Legal Entity
  578         -
      exercising permissions granted by this License.
  579         -
  580         -
      "Source" form shall mean the preferred form for making modifications,
  581         -
      including but not limited to software source code, documentation
  582         -
      source, and configuration files.
  583         -
  584         -
      "Object" form shall mean any form resulting from mechanical
  585         -
      transformation or translation of a Source form, including but
  586         -
      not limited to compiled object code, generated documentation,
  587         -
      and conversions to other media types.
  588         -
  589         -
      "Work" shall mean the work of authorship, whether in Source or
  590         -
      Object form, made available under the License, as indicated by a
  591         -
      copyright notice that is included in or attached to the work
  592         -
      (an example is provided in the Appendix below).
  593         -
  594         -
      "Derivative Works" shall mean any work, whether in Source or Object
  595         -
      form, that is based on (or derived from) the Work and for which the
  596         -
      editorial revisions, annotations, elaborations, or other modifications
  597         -
      represent, as a whole, an original work of authorship. For the purposes
  598         -
      of this License, Derivative Works shall not include works that remain
  599         -
      separable from, or merely link (or bind by name) to the interfaces of,
  600         -
      the Work and Derivative Works thereof.
  601         -
  602         -
      "Contribution" shall mean any work of authorship, including
  603         -
      the original version of the Work and any modifications or additions
  604         -
      to that Work or Derivative Works thereof, that is intentionally
  605         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  606         -
      or by an individual or Legal Entity authorized to submit on behalf of
  607         -
      the copyright owner. For the purposes of this definition, "submitted"
  608         -
      means any form of electronic, verbal, or written communication sent
  609         -
      to the Licensor or its representatives, including but not limited to
  610         -
      communication on electronic mailing lists, source code control systems,
  611         -
      and issue tracking systems that are managed by, or on behalf of, the
  612         -
      Licensor for the purpose of discussing and improving the Work, but
  613         -
      excluding communication that is conspicuously marked or otherwise
  614         -
      designated in writing by the copyright owner as "Not a Contribution."
  615         -
  616         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  617         -
      on behalf of whom a Contribution has been received by Licensor and
  618         -
      subsequently incorporated within the Work.
  619         -
  620         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  621         -
      this License, each Contributor hereby grants to You a perpetual,
  622         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  623         -
      copyright license to reproduce, prepare Derivative Works of,
  624         -
      publicly display, publicly perform, sublicense, and distribute the
  625         -
      Work and such Derivative Works in Source or Object form.
  626         -
  627         -
   3. Grant of Patent License. Subject to the terms and conditions of
  628         -
      this License, each Contributor hereby grants to You a perpetual,
  629         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  630         -
      (except as stated in this section) patent license to make, have made,
  631         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  632         -
      where such license applies only to those patent claims licensable
  633         -
      by such Contributor that are necessarily infringed by their
  634         -
      Contribution(s) alone or by combination of their Contribution(s)
  635         -
      with the Work to which such Contribution(s) was submitted. If You
  636         -
      institute patent litigation against any entity (including a
  637         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  638         -
      or a Contribution incorporated within the Work constitutes direct
  639         -
      or contributory patent infringement, then any patent licenses
  640         -
      granted to You under this License for that Work shall terminate
  641         -
      as of the date such litigation is filed.
  642         -
  643         -
   4. Redistribution. You may reproduce and distribute copies of the
  644         -
      Work or Derivative Works thereof in any medium, with or without
  645         -
      modifications, and in Source or Object form, provided that You
  646         -
      meet the following conditions:
  647         -
  648         -
      (a) You must give any other recipients of the Work or
  649         -
          Derivative Works a copy of this License; and
  650         -
  651         -
      (b) You must cause any modified files to carry prominent notices
  652         -
          stating that You changed the files; and
  653         -
  654         -
      (c) You must retain, in the Source form of any Derivative Works
  655         -
          that You distribute, all copyright, patent, trademark, and
  656         -
          attribution notices from the Source form of the Work,
  657         -
          excluding those notices that do not pertain to any part of
  658         -
          the Derivative Works; and
  659         -
  660         -
      (d) If the Work includes a "NOTICE" text file as part of its
  661         -
          distribution, then any Derivative Works that You distribute must
  662         -
          include a readable copy of the attribution notices contained
  663         -
          within such NOTICE file, excluding those notices that do not
  664         -
          pertain to any part of the Derivative Works, in at least one
  665         -
          of the following places: within a NOTICE text file distributed
  666         -
          as part of the Derivative Works; within the Source form or
  667         -
          documentation, if provided along with the Derivative Works; or,
  668         -
          within a display generated by the Derivative Works, if and
  669         -
          wherever such third-party notices normally appear. The contents
  670         -
          of the NOTICE file are for informational purposes only and
  671         -
          do not modify the License. You may add Your own attribution
  672         -
          notices within Derivative Works that You distribute, alongside
  673         -
          or as an addendum to the NOTICE text from the Work, provided
  674         -
          that such additional attribution notices cannot be construed
  675         -
          as modifying the License.
  676         -
  677         -
      You may add Your own copyright statement to Your modifications and
  678         -
      may provide additional or different license terms and conditions
  679         -
      for use, reproduction, or distribution of Your modifications, or
  680         -
      for any such Derivative Works as a whole, provided Your use,
  681         -
      reproduction, and distribution of the Work otherwise complies with
  682         -
      the conditions stated in this License.
  683         -
  684         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  685         -
      any Contribution intentionally submitted for inclusion in the Work
  686         -
      by You to the Licensor shall be under the terms and conditions of
  687         -
      this License, without any additional terms or conditions.
  688         -
      Notwithstanding the above, nothing herein shall supersede or modify
  689         -
      the terms of any separate license agreement you may have executed
  690         -
      with Licensor regarding such Contributions.
  691         -
  692         -
   6. Trademarks. This License does not grant permission to use the trade
  693         -
      names, trademarks, service marks, or product names of the Licensor,
  694         -
      except as required for reasonable and customary use in describing the
  695         -
      origin of the Work and reproducing the content of the NOTICE file.
  696         -
  697         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  698         -
      agreed to in writing, Licensor provides the Work (and each
  699         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  700         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  701         -
      implied, including, without limitation, any warranties or conditions
  702         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  703         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  704         -
      appropriateness of using or redistributing the Work and assume any
  705         -
      risks associated with Your exercise of permissions under this License.
  706         -
  707         -
   8. Limitation of Liability. In no event and under no legal theory,
  708         -
      whether in tort (including negligence), contract, or otherwise,
  709         -
      unless required by applicable law (such as deliberate and grossly
  710         -
      negligent acts) or agreed to in writing, shall any Contributor be
  711         -
      liable to You for damages, including any direct, indirect, special,
  712         -
      incidental, or consequential damages of any character arising as a
  713         -
      result of this License or out of the use or inability to use the
  714         -
      Work (including but not limited to damages for loss of goodwill,
  715         -
      work stoppage, computer failure or malfunction, or any and all
  716         -
      other commercial damages or losses), even if such Contributor
  717         -
      has been advised of the possibility of such damages.
  718         -
  719         -
   9. Accepting Warranty or Additional Liability. While redistributing
  720         -
      the Work or Derivative Works thereof, You may choose to offer,
  721         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  722         -
      or other liability obligations and/or rights consistent with this
  723         -
      License. However, in accepting such obligations, You may act only
  724         -
      on Your own behalf and on Your sole responsibility, not on behalf
  725         -
      of any other Contributor, and only if You agree to indemnify,
  726         -
      defend, and hold each Contributor harmless for any liability
  727         -
      incurred by, or claims asserted against, such Contributor by reason
  728         -
      of your accepting any such warranty or additional liability.
  729         -
  730         -
   END OF TERMS AND CONDITIONS
  731         -
  732         -
   APPENDIX: How to apply the Apache License to your work.
  733         -
  734         -
      To apply the Apache License to your work, attach the following
  735         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  736         -
      replaced with your own identifying information. (Don't include
  737         -
      the brackets!)  The text should be enclosed in the appropriate
  738         -
      comment syntax for the file format. We also recommend that a
  739         -
      file or class name and description of purpose be included on the
  740         -
      same "printed page" as the copyright notice for easier
  741         -
      identification within third-party archives.
  742         -
  743         -
   Copyright [yyyy] [name of copyright owner]
  744         -
  745         -
   Licensed under the Apache License, Version 2.0 (the "License");
  746         -
   you may not use this file except in compliance with the License.
  747         -
   You may obtain a copy of the License at
  748         -
  749         -
       http://www.apache.org/licenses/LICENSE-2.0
  750         -
  751         -
   Unless required by applicable law or agreed to in writing, software
  752         -
   distributed under the License is distributed on an "AS IS" BASIS,
  753         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  754         -
   See the License for the specific language governing permissions and
  755         -
   limitations under the License.
  756    345   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
  757    346   
deleted file mode 100755
  758    347   
index d85f69e..0000000
  759         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         348  +
++ /dev/null
  760    349   
@@ -1,2 +0,0 @@
  761         -
AWS Signature Version 4a Test Suite
  762         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  763    350   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
  764    351   
deleted file mode 100644
  765    352   
index c716622..0000000
  766         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         353  +
++ /dev/null
  767    354   
@@ -1,24 +0,0 @@
  768         -
Where did the files in this directory come from?
  769         -
================================================
  770         -
  771         -
These test files were taken from the [aws-c-auth](https://github.com/awslabs/aws-c-auth/tree/main/tests/aws-signing-test-suite/v4a) project.
  772         -
  773         -
Signature Version 4A Test Suite
  774         -
------------------------------
  775         -
  776         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  777         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  778         -
  779         -
Each test group contains several files that you can use to validate most of the tasks described in
  780         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  781         -
  782         -
- context.json - Credentials and signer options to use when signing test requests
  783         -
- request.txt - The web request to be signed.
  784         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  785         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  786         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  787         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  788         -
  789         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  790         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  791         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  792    355   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
  793    356   
deleted file mode 100644
  794    357   
index 45771c7..0000000
  795         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         358  +
++ /dev/null
  796    359   
@@ -1,12 +0,0 @@
  797         -
{
  798         -
    "credentials": {
  799         -
        "access_key_id": "AKIDEXAMPLE",
  800         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  801         -
    },
  802         -
    "expiration_in_seconds": 3600,
  803         -
    "normalize": true,
  804         -
    "region": "us-east-1",
  805         -
    "service": "service",
  806         -
    "sign_body": false,
  807         -
    "timestamp": "2015-08-30T12:36:00Z"
  808         -
}
  809    360   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
  810    361   
deleted file mode 100644
  811    362   
index 45771c7..0000000
  812         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         363  +
++ /dev/null
  813    364   
@@ -1,12 +0,0 @@
  814         -
{
  815         -
    "credentials": {
  816         -
        "access_key_id": "AKIDEXAMPLE",
  817         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  818         -
    },
  819         -
    "expiration_in_seconds": 3600,
  820         -
    "normalize": true,
  821         -
    "region": "us-east-1",
  822         -
    "service": "service",
  823         -
    "sign_body": false,
  824         -
    "timestamp": "2015-08-30T12:36:00Z"
  825         -
}
  826    365   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
  827    366   
deleted file mode 100644
  828    367   
index 45771c7..0000000
  829         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         368  +
++ /dev/null
  830    369   
@@ -1,12 +0,0 @@
  831         -
{
  832         -
    "credentials": {
  833         -
        "access_key_id": "AKIDEXAMPLE",
  834         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  835         -
    },
  836         -
    "expiration_in_seconds": 3600,
  837         -
    "normalize": true,
  838         -
    "region": "us-east-1",
  839         -
    "service": "service",
  840         -
    "sign_body": false,
  841         -
    "timestamp": "2015-08-30T12:36:00Z"
  842         -
}
  843    370   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
  844    371   
deleted file mode 100644
  845    372   
index 45771c7..0000000
  846         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         373  +
++ /dev/null
  847    374   
@@ -1,12 +0,0 @@
  848         -
{
  849         -
    "credentials": {
  850         -
        "access_key_id": "AKIDEXAMPLE",
  851         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  852         -
    },
  853         -
    "expiration_in_seconds": 3600,
  854         -
    "normalize": true,
  855         -
    "region": "us-east-1",
  856         -
    "service": "service",
  857         -
    "sign_body": false,
  858         -
    "timestamp": "2015-08-30T12:36:00Z"
  859         -
}
  860    375   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
  861    376   
deleted file mode 100644
  862    377   
index afe367b..0000000
  863         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         378  +
++ /dev/null
  864    379   
@@ -1,12 +0,0 @@
  865         -
{
  866         -
    "credentials": {
  867         -
        "access_key_id": "AKIDEXAMPLE",
  868         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  869         -
    },
  870         -
    "expiration_in_seconds": 3600,
  871         -
    "normalize": false,
  872         -
    "region": "us-east-1",
  873         -
    "service": "service",
  874         -
    "sign_body": false,
  875         -
    "timestamp": "2015-08-30T12:36:00Z"
  876         -
}
  877    380   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
  878    381   
deleted file mode 100644
  879    382   
index 45771c7..0000000
  880         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         383  +
++ /dev/null
  881    384   
@@ -1,12 +0,0 @@
  882         -
{
  883         -
    "credentials": {
  884         -
        "access_key_id": "AKIDEXAMPLE",
  885         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  886         -
    },
  887         -
    "expiration_in_seconds": 3600,
  888         -
    "normalize": true,
  889         -
    "region": "us-east-1",
  890         -
    "service": "service",
  891         -
    "sign_body": false,
  892         -
    "timestamp": "2015-08-30T12:36:00Z"
  893         -
}
  894    385   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
  895    386   
deleted file mode 100644
  896    387   
index afe367b..0000000
  897         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         388  +
++ /dev/null
  898    389   
@@ -1,12 +0,0 @@
  899         -
{
  900         -
    "credentials": {
  901         -
        "access_key_id": "AKIDEXAMPLE",
  902         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  903         -
    },
  904         -
    "expiration_in_seconds": 3600,
  905         -
    "normalize": false,
  906         -
    "region": "us-east-1",
  907         -
    "service": "service",
  908         -
    "sign_body": false,
  909         -
    "timestamp": "2015-08-30T12:36:00Z"
  910         -
}
  911    390   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
  912    391   
deleted file mode 100644
  913    392   
index 45771c7..0000000
  914         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         393  +
++ /dev/null
  915    394   
@@ -1,12 +0,0 @@
  916         -
{
  917         -
    "credentials": {
  918         -
        "access_key_id": "AKIDEXAMPLE",
  919         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  920         -
    },
  921         -
    "expiration_in_seconds": 3600,
  922         -
    "normalize": true,
  923         -
    "region": "us-east-1",
  924         -
    "service": "service",
  925         -
    "sign_body": false,
  926         -
    "timestamp": "2015-08-30T12:36:00Z"
  927         -
}
  928    395   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
  929    396   
deleted file mode 100644
  930    397   
index 45771c7..0000000
  931         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         398  +
++ /dev/null
  932    399   
@@ -1,12 +0,0 @@
  933         -
{
  934         -
    "credentials": {
  935         -
        "access_key_id": "AKIDEXAMPLE",
  936         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  937         -
    },
  938         -
    "expiration_in_seconds": 3600,
  939         -
    "normalize": true,
  940         -
    "region": "us-east-1",
  941         -
    "service": "service",
  942         -
    "sign_body": false,
  943         -
    "timestamp": "2015-08-30T12:36:00Z"
  944         -
}
  945    400   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
  946    401   
deleted file mode 100644
  947    402   
index 45771c7..0000000
  948         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         403  +
++ /dev/null
  949    404   
@@ -1,12 +0,0 @@
  950         -
{
  951         -
    "credentials": {
  952         -
        "access_key_id": "AKIDEXAMPLE",
  953         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  954         -
    },
  955         -
    "expiration_in_seconds": 3600,
  956         -
    "normalize": true,
  957         -
    "region": "us-east-1",
  958         -
    "service": "service",
  959         -
    "sign_body": false,
  960         -
    "timestamp": "2015-08-30T12:36:00Z"
  961         -
}
  962    405   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
  963    406   
deleted file mode 100644
  964    407   
index 45771c7..0000000
  965         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         408  +
++ /dev/null
  966    409   
@@ -1,12 +0,0 @@
  967         -
{
  968         -
    "credentials": {
  969         -
        "access_key_id": "AKIDEXAMPLE",
  970         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  971         -
    },
  972         -
    "expiration_in_seconds": 3600,
  973         -
    "normalize": true,
  974         -
    "region": "us-east-1",
  975         -
    "service": "service",
  976         -
    "sign_body": false,
  977         -
    "timestamp": "2015-08-30T12:36:00Z"
  978         -
}
  979    410   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
  980    411   
deleted file mode 100644
  981    412   
index 45771c7..0000000
  982         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         413  +
++ /dev/null
  983    414   
@@ -1,12 +0,0 @@
  984         -
{
  985         -
    "credentials": {
  986         -
        "access_key_id": "AKIDEXAMPLE",
  987         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  988         -
    },
  989         -
    "expiration_in_seconds": 3600,
  990         -
    "normalize": true,
  991         -
    "region": "us-east-1",
  992         -
    "service": "service",
  993         -
    "sign_body": false,
  994         -
    "timestamp": "2015-08-30T12:36:00Z"
  995         -
}
  996    415   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
  997    416   
deleted file mode 100644
  998    417   
index 47e7128..0000000
  999         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         418  +
++ /dev/null
 1000    419   
@@ -1,9 +0,0 @@
 1001         -
GET
 1002         -
/
 1003         -
 1004         -
host:example.amazonaws.com
 1005         -
x-amz-date:20150830T123600Z
 1006         -
x-amz-region-set:us-east-1
 1007         -
 1008         -
host;x-amz-date;x-amz-region-set
 1009         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
 1010    420   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
 1011    421   
deleted file mode 100644
 1012    422   
index 95d7219..0000000
 1013         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         423  +
++ /dev/null
 1014    424   
@@ -1,4 +0,0 @@
 1015         -
AWS4-ECDSA-P256-SHA256
 1016         -
20150830T123600Z
 1017         -
20150830/service/aws4_request
 1018         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
 1019    425   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
 1020    426   
deleted file mode 100644
 1021    427   
index a34ea26..0000000
 1022         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         428  +
++ /dev/null
 1023    429   
@@ -1,7 +0,0 @@
 1024         -
GET
 1025         -
/
 1026         -
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 1027         -
host:example.amazonaws.com
 1028         -
 1029         -
host
 1030         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
 1031    430   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
 1032    431   
deleted file mode 100644
 1033    432   
index 48f855c..0000000
 1034         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         433  +
++ /dev/null
 1035    434   
@@ -1,4 +0,0 @@
 1036         -
AWS4-ECDSA-P256-SHA256
 1037         -
20150830T123600Z
 1038         -
20150830/service/aws4_request
 1039         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
 1040    435   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
 1041    436   
deleted file mode 100644
 1042    437   
index 45771c7..0000000
 1043         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         438  +
++ /dev/null
 1044    439   
@@ -1,12 +0,0 @@
 1045         -
{
 1046         -
    "credentials": {
 1047         -
        "access_key_id": "AKIDEXAMPLE",
 1048         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1049         -
    },
 1050         -
    "expiration_in_seconds": 3600,
 1051         -
    "normalize": true,
 1052         -
    "region": "us-east-1",
 1053         -
    "service": "service",
 1054         -
    "sign_body": false,
 1055         -
    "timestamp": "2015-08-30T12:36:00Z"
 1056         -
}
 1057    440   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
 1058    441   
deleted file mode 100644
 1059    442   
index 47e7128..0000000
 1060         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         443  +
++ /dev/null
 1061    444   
@@ -1,9 +0,0 @@
 1062         -
GET
 1063         -
/
 1064         -
 1065         -
host:example.amazonaws.com
 1066         -
x-amz-date:20150830T123600Z
 1067         -
x-amz-region-set:us-east-1
 1068         -
 1069         -
host;x-amz-date;x-amz-region-set
 1070         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
 1071    445   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
 1072    446   
deleted file mode 100644
 1073    447   
index 95d7219..0000000
 1074         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         448  +
++ /dev/null
 1075    449   
@@ -1,4 +0,0 @@
 1076         -
AWS4-ECDSA-P256-SHA256
 1077         -
20150830T123600Z
 1078         -
20150830/service/aws4_request
 1079         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
 1080    450   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
 1081    451   
deleted file mode 100644
 1082    452   
index a34ea26..0000000
 1083         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         453  +
++ /dev/null
 1084    454   
@@ -1,7 +0,0 @@
 1085         -
GET
 1086         -
/
 1087         -
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 1088         -
host:example.amazonaws.com
 1089         -
 1090         -
host
 1091         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
 1092    455   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
 1093    456   
deleted file mode 100644
 1094    457   
index 48f855c..0000000
 1095         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         458  +
++ /dev/null
 1096    459   
@@ -1,4 +0,0 @@
 1097         -
AWS4-ECDSA-P256-SHA256
 1098         -
20150830T123600Z
 1099         -
20150830/service/aws4_request
 1100         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
 1101    460   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
 1102    461   
deleted file mode 100644
 1103    462   
index 45771c7..0000000
 1104         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         463  +
++ /dev/null
 1105    464   
@@ -1,12 +0,0 @@
 1106         -
{
 1107         -
    "credentials": {
 1108         -
        "access_key_id": "AKIDEXAMPLE",
 1109         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1110         -
    },
 1111         -
    "expiration_in_seconds": 3600,
 1112         -
    "normalize": true,
 1113         -
    "region": "us-east-1",
 1114         -
    "service": "service",
 1115         -
    "sign_body": false,
 1116         -
    "timestamp": "2015-08-30T12:36:00Z"
 1117         -
}
 1118    465   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
 1119    466   
deleted file mode 100644
 1120    467   
index 45771c7..0000000
 1121         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         468  +
++ /dev/null
 1122    469   
@@ -1,12 +0,0 @@
 1123         -
{
 1124         -
    "credentials": {
 1125         -
        "access_key_id": "AKIDEXAMPLE",
 1126         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1127         -
    },
 1128         -
    "expiration_in_seconds": 3600,
 1129         -
    "normalize": true,
 1130         -
    "region": "us-east-1",
 1131         -
    "service": "service",
 1132         -
    "sign_body": false,
 1133         -
    "timestamp": "2015-08-30T12:36:00Z"
 1134         -
}
 1135    470   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
 1136    471   
deleted file mode 100644
 1137    472   
index 45771c7..0000000
 1138         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         473  +
++ /dev/null
 1139    474   
@@ -1,12 +0,0 @@
 1140         -
{
 1141         -
    "credentials": {
 1142         -
        "access_key_id": "AKIDEXAMPLE",
 1143         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1144         -
    },
 1145         -
    "expiration_in_seconds": 3600,
 1146         -
    "normalize": true,
 1147         -
    "region": "us-east-1",
 1148         -
    "service": "service",
 1149         -
    "sign_body": false,
 1150         -
    "timestamp": "2015-08-30T12:36:00Z"
 1151         -
}
 1152    475   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
 1153    476   
deleted file mode 100644
 1154    477   
index 45771c7..0000000
 1155         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         478  +
++ /dev/null
 1156    479   
@@ -1,12 +0,0 @@
 1157         -
{
 1158         -
    "credentials": {
 1159         -
        "access_key_id": "AKIDEXAMPLE",
 1160         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1161         -
    },
 1162         -
    "expiration_in_seconds": 3600,
 1163         -
    "normalize": true,
 1164         -
    "region": "us-east-1",
 1165         -
    "service": "service",
 1166         -
    "sign_body": false,
 1167         -
    "timestamp": "2015-08-30T12:36:00Z"
 1168         -
}
 1169    480   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
 1170    481   
deleted file mode 100644
 1171    482   
index 45771c7..0000000
 1172         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         483  +
++ /dev/null
 1173    484   
@@ -1,12 +0,0 @@
 1174         -
{
 1175         -
    "credentials": {
 1176         -
        "access_key_id": "AKIDEXAMPLE",
 1177         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1178         -
    },
 1179         -
    "expiration_in_seconds": 3600,
 1180         -
    "normalize": true,
 1181         -
    "region": "us-east-1",
 1182         -
    "service": "service",
 1183         -
    "sign_body": false,
 1184         -
    "timestamp": "2015-08-30T12:36:00Z"
 1185         -
}
 1186    485   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
 1187    486   
deleted file mode 100644
 1188    487   
index 45771c7..0000000
 1189         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         488  +
++ /dev/null
 1190    489   
@@ -1,12 +0,0 @@
 1191         -
{
 1192         -
    "credentials": {
 1193         -
        "access_key_id": "AKIDEXAMPLE",
 1194         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1195         -
    },
 1196         -
    "expiration_in_seconds": 3600,
 1197         -
    "normalize": true,
 1198         -
    "region": "us-east-1",
 1199         -
    "service": "service",
 1200         -
    "sign_body": false,
 1201         -
    "timestamp": "2015-08-30T12:36:00Z"
 1202         -
}
 1203    490   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt
 1204    491   
deleted file mode 100644
 1205    492   
index b6fdecf..0000000
 1206         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt
         493  +
++ /dev/null
 1207    494   
@@ -1,4 +0,0 @@
 1208         -
AWS4-ECDSA-P256-SHA256
 1209         -
20150830T123600Z
 1210         -
20150830/service/aws4_request
 1211         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1212    495   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt
 1213    496   
deleted file mode 100644
 1214    497   
index a300bea..0000000
 1215         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt
         498  +
++ /dev/null
 1216    499   
@@ -1,4 +0,0 @@
 1217         -
AWS4-ECDSA-P256-SHA256
 1218         -
20150830T123600Z
 1219         -
20150830/service/aws4_request
 1220         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
 1221    500   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
 1222    501   
deleted file mode 100644
 1223    502   
index b6fdecf..0000000
 1224         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         503  +
++ /dev/null
 1225    504   
@@ -1,4 +0,0 @@
 1226         -
AWS4-ECDSA-P256-SHA256
 1227         -
20150830T123600Z
 1228         -
20150830/service/aws4_request
 1229         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1230    505   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
 1231    506   
new file mode 100644
 1232    507   
index 0000000..a674243
 1233         -
-- /dev/null
         508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
 1234    509   
@@ -0,0 +1,7 @@
         510  +
# AWS SigV4 and SigV4A Signing Test Suite
         511  +
         512  +
This test suite is taken from the [CRT test suite](https://github.com/awslabs/aws-c-auth/tree/v0.9.0/tests/aws-signing-test-suite).
         513  +
         514  +
We added the following changes:
         515  +
         516  +
* Migrated old format tests `double-url-encode` and `double-encode-path` not in the new suite as we use these in many tests.
              \
 No newline at end of file
 1235    517   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
 1236    518   
similarity index 100%
 1237    519   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
 1238    520   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
 1239    521   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
 1240    522   
similarity index 100%
 1241    523   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
 1242    524   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
 1243    525   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
 1244    526   
similarity index 100%
 1245    527   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
 1246    528   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
 1247    529   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
 1248    530   
similarity index 100%
 1249    531   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
 1250    532   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
 1251    533   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
 1252    534   
similarity index 100%
 1253    535   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
 1254    536   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
 1255    537   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
 1256    538   
similarity index 100%
 1257    539   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
 1258    540   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
 1259    541   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
 1260    542   
similarity index 100%
 1261    543   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
 1262    544   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
 1263    545   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1264    546   
similarity index 99%
 1265    547   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
 1266    548   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1267    549   
index 45771c7..0468d80 100644
 1268         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
         550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1269    551   
@@ -1,12 +1,12 @@
 1270    552   
{
 1271    553   
    "credentials": {
 1272    554   
        "access_key_id": "AKIDEXAMPLE",
 1273    555   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1274    556   
    },
 1275    557   
    "expiration_in_seconds": 3600,
 1276    558   
    "normalize": true,
 1277    559   
    "region": "us-east-1",
 1278    560   
    "service": "service",
 1279    561   
    "sign_body": false,
 1280    562   
    "timestamp": "2015-08-30T12:36:00Z"
 1281         -
}
         563  +
}
              \
 No newline at end of file
 1282    564   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1283    565   
similarity index 100%
 1284    566   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
 1285    567   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1286    568   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1287    569   
new file mode 100644
 1288    570   
index 0000000..7fc5d7a
 1289         -
-- /dev/null
         571  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1290    572   
@@ -0,0 +1 @@
         573  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
 1291    574   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1292    575   
new file mode 100644
 1293    576   
index 0000000..36a1205
 1294         -
-- /dev/null
         577  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1295    578   
@@ -0,0 +1,8 @@
         579  +
GET / HTTP/1.1
         580  +
Host:example.amazonaws.com
         581  +
My-Header1:value2
         582  +
My-Header1:value2
         583  +
My-Header1:value1
         584  +
X-Amz-Date:20150830T123600Z
         585  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         586  +
 1296    587   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1297    588   
similarity index 100%
 1298    589   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
 1299    590   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1300    591   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1301    592   
new file mode 100644
 1302    593   
index 0000000..f9f4190
 1303         -
-- /dev/null
         594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1304    595   
@@ -0,0 +1,8 @@
         596  +
GET
         597  +
/
         598  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host%3Bmy-header1
         599  +
host:example.amazonaws.com
         600  +
my-header1:value2,value2,value1
         601  +
         602  +
host;my-header1
         603  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1305    604   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1306    605   
new file mode 100644
 1307    606   
index 0000000..5d0d87f
 1308         -
-- /dev/null
         607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1309    608   
@@ -0,0 +1 @@
         609  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1310    610   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1311    611   
new file mode 100644
 1312    612   
index 0000000..c1dfcf4
 1313         -
-- /dev/null
         613  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1314    614   
@@ -0,0 +1,6 @@
         615  +
GET /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Signature=3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97 HTTP/1.1
         616  +
Host:example.amazonaws.com
         617  +
My-Header1:value2
         618  +
My-Header1:value2
         619  +
My-Header1:value1
         620  +
 1315    621   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1316    622   
similarity index 53%
 1317    623   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1318    624   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1319    625   
index 0a3350a..077c1bb 100644
 1320         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1321    627   
@@ -1,4 +1,4 @@
 1322    628   
AWS4-HMAC-SHA256
 1323    629   
20150830T123600Z
 1324    630   
20150830/us-east-1/service/aws4_request
 1325         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         631  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1326    632   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1327    633   
similarity index 100%
 1328    634   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1329    635   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1330    636   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1331    637   
similarity index 99%
 1332    638   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1333    639   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1334    640   
index 45771c7..0468d80 100644
 1335         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
         641  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1336    642   
@@ -1,12 +1,12 @@
 1337    643   
{
 1338    644   
    "credentials": {
 1339    645   
        "access_key_id": "AKIDEXAMPLE",
 1340    646   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1341    647   
    },
 1342    648   
    "expiration_in_seconds": 3600,
 1343    649   
    "normalize": true,
 1344    650   
    "region": "us-east-1",
 1345    651   
    "service": "service",
 1346    652   
    "sign_body": false,
 1347    653   
    "timestamp": "2015-08-30T12:36:00Z"
 1348         -
}
         654  +
}
              \
 No newline at end of file
 1349    655   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1350    656   
similarity index 82%
 1351    657   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1352    658   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1353    659   
index 721a39f..8cb5476 100644
 1354         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1355    661   
@@ -1,9 +1,9 @@
 1356    662   
GET
 1357    663   
/
 1358    664   
 1359    665   
host:example.amazonaws.com
 1360         -
my-header1:value1,value2,value3
         666  +
my-header1:value1 value2 value3
 1361    667   
x-amz-date:20150830T123600Z
 1362    668   
 1363    669   
host;my-header1;x-amz-date
 1364    670   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1365    671   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1366    672   
new file mode 100644
 1367    673   
index 0000000..e6ff7a9
 1368         -
-- /dev/null
         674  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1369    675   
@@ -0,0 +1 @@
         676  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1370    677   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1371    678   
new file mode 100644
 1372    679   
index 0000000..b5ef6a0
 1373         -
-- /dev/null
         680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1374    681   
@@ -0,0 +1,8 @@
         682  +
GET / HTTP/1.1
         683  +
Host:example.amazonaws.com
         684  +
My-Header1:value1
         685  +
  value2
         686  +
     value3
         687  +
X-Amz-Date:20150830T123600Z
         688  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         689  +
 1375    690   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1376    691   
similarity index 53%
 1377    692   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.sts
 1378    693   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1379    694   
index fd43a41..97c7430 100644
 1380         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.sts
         695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1381    696   
@@ -1,4 +1,4 @@
 1382    697   
AWS4-HMAC-SHA256
 1383    698   
20150830T123600Z
 1384    699   
20150830/us-east-1/service/aws4_request
 1385         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         700  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1386    701   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1387    702   
new file mode 100644
 1388    703   
index 0000000..aac46de
 1389         -
-- /dev/null
         704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1390    705   
@@ -0,0 +1,8 @@
         706  +
GET
         707  +
/
         708  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host%3Bmy-header1
         709  +
host:example.amazonaws.com
         710  +
my-header1:value1 value2 value3
         711  +
         712  +
host;my-header1
         713  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1391    714   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1392    715   
new file mode 100644
 1393    716   
index 0000000..205732d
 1394         -
-- /dev/null
         717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1395    718   
@@ -0,0 +1 @@
         719  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1396    720   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1397    721   
new file mode 100644
 1398    722   
index 0000000..a891b87
 1399         -
-- /dev/null
         723  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1400    724   
@@ -0,0 +1,6 @@
         725  +
GET /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Signature=e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56 HTTP/1.1
         726  +
Host:example.amazonaws.com
         727  +
My-Header1:value1
         728  +
  value2
         729  +
     value3
         730  +
 1401    731   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1402    732   
similarity index 53%
 1403    733   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.sts
 1404    734   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1405    735   
index 90e66b8..ec3fe45 100644
 1406         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.sts
         736  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1407    737   
@@ -1,4 +1,4 @@
 1408    738   
AWS4-HMAC-SHA256
 1409    739   
20150830T123600Z
 1410    740   
20150830/us-east-1/service/aws4_request
 1411         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         741  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1412    742   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1413    743   
similarity index 75%
 1414    744   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1415    745   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1416    746   
index 7caa6ac..b5026cd 100644
 1417         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1418    748   
@@ -1,6 +1,5 @@
 1419    749   
GET / HTTP/1.1
 1420    750   
Host:example.amazonaws.com
 1421    751   
My-Header1:value1
 1422    752   
  value2
 1423    753   
     value3
 1424         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1425    754   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1426    755   
similarity index 99%
 1427    756   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1428    757   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1429    758   
index 45771c7..0468d80 100644
 1430         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
         759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1431    760   
@@ -1,12 +1,12 @@
 1432    761   
{
 1433    762   
    "credentials": {
 1434    763   
        "access_key_id": "AKIDEXAMPLE",
 1435    764   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1436    765   
    },
 1437    766   
    "expiration_in_seconds": 3600,
 1438    767   
    "normalize": true,
 1439    768   
    "region": "us-east-1",
 1440    769   
    "service": "service",
 1441    770   
    "sign_body": false,
 1442    771   
    "timestamp": "2015-08-30T12:36:00Z"
 1443         -
}
         772  +
}
              \
 No newline at end of file
 1444    773   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1445    774   
similarity index 100%
 1446    775   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1447    776   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1448    777   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1449    778   
new file mode 100644
 1450    779   
index 0000000..8ef0494
 1451         -
-- /dev/null
         780  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1452    781   
@@ -0,0 +1 @@
         782  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1453    783   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1454    784   
new file mode 100644
 1455    785   
index 0000000..b786dc9
 1456         -
-- /dev/null
         786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1457    787   
@@ -0,0 +1,9 @@
         788  +
GET / HTTP/1.1
         789  +
Host:example.amazonaws.com
         790  +
My-Header1:value4
         791  +
My-Header1:value1
         792  +
My-Header1:value3
         793  +
My-Header1:value2
         794  +
X-Amz-Date:20150830T123600Z
         795  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         796  +
 1458    797   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1459    798   
similarity index 100%
 1460    799   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1461    800   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1462    801   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1463    802   
new file mode 100644
 1464    803   
index 0000000..a211cc5
 1465         -
-- /dev/null
         804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1466    805   
@@ -0,0 +1,8 @@
         806  +
GET
         807  +
/
         808  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host%3Bmy-header1
         809  +
host:example.amazonaws.com
         810  +
my-header1:value4,value1,value3,value2
         811  +
         812  +
host;my-header1
         813  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1467    814   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1468    815   
new file mode 100644
 1469    816   
index 0000000..417b0fa
 1470         -
-- /dev/null
         817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1471    818   
@@ -0,0 +1 @@
         819  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1472    820   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1473    821   
new file mode 100644
 1474    822   
index 0000000..b615e5d
 1475         -
-- /dev/null
         823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1476    824   
@@ -0,0 +1,7 @@
         825  +
GET /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Signature=313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e HTTP/1.1
         826  +
Host:example.amazonaws.com
         827  +
My-Header1:value4
         828  +
My-Header1:value1
         829  +
My-Header1:value3
         830  +
My-Header1:value2
         831  +
 1477    832   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1478    833   
similarity index 53%
 1479    834   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.sts
 1480    835   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1481    836   
index f7e615e..dcaaa1b 100644
 1482         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.sts
         837  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1483    838   
@@ -1,4 +1,4 @@
 1484    839   
AWS4-HMAC-SHA256
 1485    840   
20150830T123600Z
 1486    841   
20150830/us-east-1/service/aws4_request
 1487         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         842  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1488    843   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1489    844   
similarity index 100%
 1490    845   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1491    846   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1492    847   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1493    848   
similarity index 99%
 1494    849   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1495    850   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1496    851   
index 45771c7..0468d80 100644
 1497         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
         852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1498    853   
@@ -1,12 +1,12 @@
 1499    854   
{
 1500    855   
    "credentials": {
 1501    856   
        "access_key_id": "AKIDEXAMPLE",
 1502    857   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1503    858   
    },
 1504    859   
    "expiration_in_seconds": 3600,
 1505    860   
    "normalize": true,
 1506    861   
    "region": "us-east-1",
 1507    862   
    "service": "service",
 1508    863   
    "sign_body": false,
 1509    864   
    "timestamp": "2015-08-30T12:36:00Z"
 1510         -
}
         865  +
}
              \
 No newline at end of file
 1511    866   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1512    867   
similarity index 100%
 1513    868   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1514    869   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1515    870   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1516    871   
new file mode 100644
 1517    872   
index 0000000..36081a9
 1518         -
-- /dev/null
         873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1519    874   
@@ -0,0 +1 @@
         875  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1520    876   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1521    877   
new file mode 100644
 1522    878   
index 0000000..6331d16
 1523         -
-- /dev/null
         879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1524    880   
@@ -0,0 +1,7 @@
         881  +
GET / HTTP/1.1
         882  +
Host:example.amazonaws.com
         883  +
My-Header1: value1
         884  +
My-Header2: "a   b   c"
         885  +
X-Amz-Date:20150830T123600Z
         886  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         887  +
 1525    888   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1526    889   
similarity index 100%
 1527    890   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1528    891   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1529    892   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1530    893   
new file mode 100644
 1531    894   
index 0000000..125c1f9
 1532         -
-- /dev/null
         895  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1533    896   
@@ -0,0 +1,9 @@
         897  +
GET
         898  +
/
         899  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host%3Bmy-header1%3Bmy-header2
         900  +
host:example.amazonaws.com
         901  +
my-header1:value1
         902  +
my-header2:"a b c"
         903  +
         904  +
host;my-header1;my-header2
         905  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1534    906   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1535    907   
new file mode 100644
 1536    908   
index 0000000..17007a8
 1537         -
-- /dev/null
         909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1538    910   
@@ -0,0 +1 @@
         911  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1539    912   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1540    913   
new file mode 100644
 1541    914   
index 0000000..e519fd9
 1542         -
-- /dev/null
         915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1543    916   
@@ -0,0 +1,5 @@
         917  +
GET /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1%3Bmy-header2&X-Amz-Expires=3600&X-Amz-Signature=e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4 HTTP/1.1
         918  +
Host:example.amazonaws.com
         919  +
My-Header1: value1
         920  +
My-Header2: "a   b   c"
         921  +
 1544    922   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1545    923   
new file mode 100644
 1546    924   
index 0000000..6b4b781
 1547         -
-- /dev/null
         925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1548    926   
@@ -0,0 +1,4 @@
         927  +
AWS4-HMAC-SHA256
         928  +
20150830T123600Z
         929  +
20150830/us-east-1/service/aws4_request
         930  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1549    931   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1550    932   
similarity index 100%
 1551    933   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1552    934   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1553    935   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1554    936   
new file mode 100644
 1555    937   
index 0000000..0468d80
 1556         -
-- /dev/null
         938  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1557    939   
@@ -0,0 +1,12 @@
         940  +
{
         941  +
    "credentials": {
         942  +
        "access_key_id": "AKIDEXAMPLE",
         943  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         944  +
    },
         945  +
    "expiration_in_seconds": 3600,
         946  +
    "normalize": true,
         947  +
    "region": "us-east-1",
         948  +
    "service": "service",
         949  +
    "sign_body": false,
         950  +
    "timestamp": "2015-08-30T12:36:00Z"
         951  +
}
              \
 No newline at end of file
 1558    952   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1559    953   
similarity index 100%
 1560    954   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1561    955   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1562    956   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1563    957   
new file mode 100644
 1564    958   
index 0000000..87f295f
 1565         -
-- /dev/null
         959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1566    960   
@@ -0,0 +1 @@
         961  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1567    962   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1568    963   
new file mode 100644
 1569    964   
index 0000000..0de8327
 1570         -
-- /dev/null
         965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1571    966   
@@ -0,0 +1,5 @@
         967  +
GET /example/.. HTTP/1.1
         968  +
Host:example.amazonaws.com
         969  +
X-Amz-Date:20150830T123600Z
         970  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         971  +
 1572    972   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1573    973   
similarity index 100%
 1574    974   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1575    975   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1576    976   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1577    977   
new file mode 100644
 1578    978   
index 0000000..fb2420d
 1579         -
-- /dev/null
         979  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1580    980   
@@ -0,0 +1,7 @@
         981  +
GET
         982  +
/
         983  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
         984  +
host:example.amazonaws.com
         985  +
         986  +
host
         987  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1581    988   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1582    989   
new file mode 100644
 1583    990   
index 0000000..da5c905
 1584         -
-- /dev/null
         991  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1585    992   
@@ -0,0 +1 @@
         993  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1586    994   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1587    995   
new file mode 100644
 1588    996   
index 0000000..4329c98
 1589         -
-- /dev/null
         997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1590    998   
@@ -0,0 +1,3 @@
         999  +
GET /example/..?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d HTTP/1.1
        1000  +
Host:example.amazonaws.com
        1001  +
 1591   1002   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1592   1003   
new file mode 100644
 1593   1004   
index 0000000..d837e67
 1594         -
-- /dev/null
        1005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1595   1006   
@@ -0,0 +1,4 @@
        1007  +
AWS4-HMAC-SHA256
        1008  +
20150830T123600Z
        1009  +
20150830/us-east-1/service/aws4_request
        1010  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1596   1011   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1597   1012   
similarity index 100%
 1598   1013   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1599   1014   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1600   1015   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1601   1016   
new file mode 100644
 1602   1017   
index 0000000..0468d80
 1603         -
-- /dev/null
        1018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1604   1019   
@@ -0,0 +1,12 @@
        1020  +
{
        1021  +
    "credentials": {
        1022  +
        "access_key_id": "AKIDEXAMPLE",
        1023  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1024  +
    },
        1025  +
    "expiration_in_seconds": 3600,
        1026  +
    "normalize": true,
        1027  +
    "region": "us-east-1",
        1028  +
    "service": "service",
        1029  +
    "sign_body": false,
        1030  +
    "timestamp": "2015-08-30T12:36:00Z"
        1031  +
}
              \
 No newline at end of file
 1605   1032   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1606   1033   
similarity index 100%
 1607   1034   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1608   1035   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1609   1036   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1610   1037   
new file mode 100644
 1611   1038   
index 0000000..87f295f
 1612         -
-- /dev/null
        1039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1613   1040   
@@ -0,0 +1 @@
        1041  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1614   1042   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1615   1043   
new file mode 100644
 1616   1044   
index 0000000..f9b3815
 1617         -
-- /dev/null
        1045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1618   1046   
@@ -0,0 +1,5 @@
        1047  +
GET /example1/example2/../.. HTTP/1.1
        1048  +
Host:example.amazonaws.com
        1049  +
X-Amz-Date:20150830T123600Z
        1050  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1051  +
 1619   1052   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1620   1053   
similarity index 100%
 1621   1054   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1622   1055   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1623   1056   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1624   1057   
new file mode 100644
 1625   1058   
index 0000000..fb2420d
 1626         -
-- /dev/null
        1059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1627   1060   
@@ -0,0 +1,7 @@
        1061  +
GET
        1062  +
/
        1063  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1064  +
host:example.amazonaws.com
        1065  +
        1066  +
host
        1067  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1628   1068   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1629   1069   
new file mode 100644
 1630   1070   
index 0000000..da5c905
 1631         -
-- /dev/null
        1071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1632   1072   
@@ -0,0 +1 @@
        1073  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1633   1074   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1634   1075   
new file mode 100644
 1635   1076   
index 0000000..b2988b7
 1636         -
-- /dev/null
        1077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1637   1078   
@@ -0,0 +1,3 @@
        1079  +
GET /example1/example2/../..?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d HTTP/1.1
        1080  +
Host:example.amazonaws.com
        1081  +
 1638   1082   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1639   1083   
new file mode 100644
 1640   1084   
index 0000000..d837e67
 1641         -
-- /dev/null
        1085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1642   1086   
@@ -0,0 +1,4 @@
        1087  +
AWS4-HMAC-SHA256
        1088  +
20150830T123600Z
        1089  +
20150830/us-east-1/service/aws4_request
        1090  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1643   1091   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1644   1092   
similarity index 100%
 1645   1093   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1646   1094   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1647   1095   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1648   1096   
similarity index 99%
 1649   1097   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1650   1098   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1651   1099   
index afe367b..7bee5c7 100644
 1652         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
        1100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1653   1101   
@@ -1,12 +1,12 @@
 1654   1102   
{
 1655   1103   
    "credentials": {
 1656   1104   
        "access_key_id": "AKIDEXAMPLE",
 1657   1105   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1658   1106   
    },
 1659   1107   
    "expiration_in_seconds": 3600,
 1660   1108   
    "normalize": false,
 1661   1109   
    "region": "us-east-1",
 1662   1110   
    "service": "service",
 1663   1111   
    "sign_body": false,
 1664   1112   
    "timestamp": "2015-08-30T12:36:00Z"
 1665         -
}
        1113  +
}
              \
 No newline at end of file
 1666   1114   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1667   1115   
similarity index 82%
 1668   1116   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.creq
 1669   1117   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1670   1118   
index 36c3cdf..6919c44 100644
 1671         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.creq
        1119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1672   1120   
@@ -1,8 +1,8 @@
 1673   1121   
GET
 1674         -
/
 1675         -
Param1=Value1&Param1=value2
        1122  +
/example1/example2/../..
        1123  +
 1676   1124   
host:example.amazonaws.com
 1677   1125   
x-amz-date:20150830T123600Z
 1678   1126   
 1679   1127   
host;x-amz-date
 1680   1128   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1681   1129   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1682   1130   
new file mode 100644
 1683   1131   
index 0000000..4092d83
 1684         -
-- /dev/null
        1132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1685   1133   
@@ -0,0 +1 @@
        1134  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1686   1135   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1687   1136   
new file mode 100644
 1688   1137   
index 0000000..e731b35
 1689         -
-- /dev/null
        1138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1690   1139   
@@ -0,0 +1,5 @@
        1140  +
GET /example1/example2/../.. HTTP/1.1
        1141  +
Host:example.amazonaws.com
        1142  +
X-Amz-Date:20150830T123600Z
        1143  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
        1144  +
 1691   1145   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1692   1146   
new file mode 100644
 1693   1147   
index 0000000..4f45752
 1694         -
-- /dev/null
        1148  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1695   1149   
@@ -0,0 +1,4 @@
        1150  +
AWS4-HMAC-SHA256
        1151  +
20150830T123600Z
        1152  +
20150830/us-east-1/service/aws4_request
        1153  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1696   1154   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1697   1155   
new file mode 100644
 1698   1156   
index 0000000..e1fb07d
 1699         -
-- /dev/null
        1157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1700   1158   
@@ -0,0 +1,7 @@
        1159  +
GET
        1160  +
/example1/example2/../..
        1161  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1162  +
host:example.amazonaws.com
        1163  +
        1164  +
host
        1165  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1701   1166   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1702   1167   
new file mode 100644
 1703   1168   
index 0000000..8ac31d7
 1704         -
-- /dev/null
        1169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1705   1170   
@@ -0,0 +1 @@
        1171  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1706   1172   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1707   1173   
new file mode 100644
 1708   1174   
index 0000000..ac074f9
 1709         -
-- /dev/null
        1175  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1710   1176   
@@ -0,0 +1,3 @@
        1177  +
GET /example1/example2/../..?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16 HTTP/1.1
        1178  +
Host:example.amazonaws.com
        1179  +
 1711   1180   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1712   1181   
new file mode 100644
 1713   1182   
index 0000000..8dcb6ff
 1714         -
-- /dev/null
        1183  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1715   1184   
@@ -0,0 +1,4 @@
        1185  +
AWS4-HMAC-SHA256
        1186  +
20150830T123600Z
        1187  +
20150830/us-east-1/service/aws4_request
        1188  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1716   1189   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1717   1190   
similarity index 100%
 1718   1191   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1719   1192   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1720   1193   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1721   1194   
similarity index 99%
 1722   1195   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1723   1196   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1724   1197   
index afe367b..7bee5c7 100644
 1725         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
        1198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1726   1199   
@@ -1,12 +1,12 @@
 1727   1200   
{
 1728   1201   
    "credentials": {
 1729   1202   
        "access_key_id": "AKIDEXAMPLE",
 1730   1203   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1731   1204   
    },
 1732   1205   
    "expiration_in_seconds": 3600,
 1733   1206   
    "normalize": false,
 1734   1207   
    "region": "us-east-1",
 1735   1208   
    "service": "service",
 1736   1209   
    "sign_body": false,
 1737   1210   
    "timestamp": "2015-08-30T12:36:00Z"
 1738         -
}
        1211  +
}
              \
 No newline at end of file
 1739   1212   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1740   1213   
similarity index 82%
 1741   1214   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.creq
 1742   1215   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1743   1216   
index 26898eb..f640bc2 100644
 1744         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.creq
        1217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1745   1218   
@@ -1,8 +1,8 @@
 1746   1219   
GET
 1747         -
/
 1748         -
Param1=value1&Param1=value2
        1220  +
/example/..
        1221  +
 1749   1222   
host:example.amazonaws.com
 1750   1223   
x-amz-date:20150830T123600Z
 1751   1224   
 1752   1225   
host;x-amz-date
 1753   1226   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1754   1227   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1755   1228   
new file mode 100644
 1756   1229   
index 0000000..d957303
 1757         -
-- /dev/null
        1230  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1758   1231   
@@ -0,0 +1 @@
        1232  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1759   1233   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1760   1234   
new file mode 100644
 1761   1235   
index 0000000..4f42ffc
 1762         -
-- /dev/null
        1236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1763   1237   
@@ -0,0 +1,5 @@
        1238  +
GET /example/.. HTTP/1.1
        1239  +
Host:example.amazonaws.com
        1240  +
X-Amz-Date:20150830T123600Z
        1241  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
        1242  +
 1764   1243   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1765   1244   
new file mode 100644
 1766   1245   
index 0000000..ca54bda
 1767         -
-- /dev/null
        1246  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1768   1247   
@@ -0,0 +1,4 @@
        1248  +
AWS4-HMAC-SHA256
        1249  +
20150830T123600Z
        1250  +
20150830/us-east-1/service/aws4_request
        1251  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1769   1252   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1770   1253   
new file mode 100644
 1771   1254   
index 0000000..dc80036
 1772         -
-- /dev/null
        1255  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1773   1256   
@@ -0,0 +1,7 @@
        1257  +
GET
        1258  +
/example/..
        1259  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1260  +
host:example.amazonaws.com
        1261  +
        1262  +
host
        1263  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1774   1264   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1775   1265   
new file mode 100644
 1776   1266   
index 0000000..dfa0437
 1777         -
-- /dev/null
        1267  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1778   1268   
@@ -0,0 +1 @@
        1269  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1779   1270   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1780   1271   
new file mode 100644
 1781   1272   
index 0000000..98367b1
 1782         -
-- /dev/null
        1273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1783   1274   
@@ -0,0 +1,3 @@
        1275  +
GET /example/..?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee HTTP/1.1
        1276  +
Host:example.amazonaws.com
        1277  +
 1784   1278   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1785   1279   
new file mode 100644
 1786   1280   
index 0000000..f65dd66
 1787         -
-- /dev/null
        1281  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1788   1282   
@@ -0,0 +1,4 @@
        1283  +
AWS4-HMAC-SHA256
        1284  +
20150830T123600Z
        1285  +
20150830/us-east-1/service/aws4_request
        1286  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1789   1287   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1790   1288   
similarity index 100%
 1791   1289   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1792   1290   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1793   1291   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1794   1292   
new file mode 100644
 1795   1293   
index 0000000..0468d80
 1796         -
-- /dev/null
        1294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1797   1295   
@@ -0,0 +1,12 @@
        1296  +
{
        1297  +
    "credentials": {
        1298  +
        "access_key_id": "AKIDEXAMPLE",
        1299  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1300  +
    },
        1301  +
    "expiration_in_seconds": 3600,
        1302  +
    "normalize": true,
        1303  +
    "region": "us-east-1",
        1304  +
    "service": "service",
        1305  +
    "sign_body": false,
        1306  +
    "timestamp": "2015-08-30T12:36:00Z"
        1307  +
}
              \
 No newline at end of file
 1798   1308   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1799   1309   
similarity index 100%
 1800   1310   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1801   1311   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1802   1312   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1803   1313   
new file mode 100644
 1804   1314   
index 0000000..87f295f
 1805         -
-- /dev/null
        1315  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1806   1316   
@@ -0,0 +1 @@
        1317  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1807   1318   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1808   1319   
new file mode 100644
 1809   1320   
index 0000000..99c8eeb
 1810         -
-- /dev/null
        1321  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1811   1322   
@@ -0,0 +1,5 @@
        1323  +
GET /./ HTTP/1.1
        1324  +
Host:example.amazonaws.com
        1325  +
X-Amz-Date:20150830T123600Z
        1326  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1327  +
 1812   1328   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-string-to-sign.txt
 1813   1329   
similarity index 100%
 1814   1330   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1815   1331   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-string-to-sign.txt
 1816   1332   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1817   1333   
new file mode 100644
 1818   1334   
index 0000000..fb2420d
 1819         -
-- /dev/null
        1335  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1820   1336   
@@ -0,0 +1,7 @@
        1337  +
GET
        1338  +
/
        1339  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1340  +
host:example.amazonaws.com
        1341  +
        1342  +
host
        1343  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1821   1344   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1822   1345   
new file mode 100644
 1823   1346   
index 0000000..da5c905
 1824         -
-- /dev/null
        1347  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1825   1348   
@@ -0,0 +1 @@
        1349  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1826   1350   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1827   1351   
new file mode 100644
 1828   1352   
index 0000000..2e47f69
 1829         -
-- /dev/null
        1353  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1830   1354   
@@ -0,0 +1,3 @@
        1355  +
GET /./?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d HTTP/1.1
        1356  +
Host:example.amazonaws.com
        1357  +
 1831   1358   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1832   1359   
new file mode 100644
 1833   1360   
index 0000000..d837e67
 1834         -
-- /dev/null
        1361  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1835   1362   
@@ -0,0 +1,4 @@
        1363  +
AWS4-HMAC-SHA256
        1364  +
20150830T123600Z
        1365  +
20150830/us-east-1/service/aws4_request
        1366  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1836   1367   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1837   1368   
similarity index 100%
 1838   1369   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1839   1370   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1840   1371   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1841   1372   
similarity index 99%
 1842   1373   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1843   1374   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1844   1375   
index afe367b..7bee5c7 100644
 1845         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
        1376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1846   1377   
@@ -1,12 +1,12 @@
 1847   1378   
{
 1848   1379   
    "credentials": {
 1849   1380   
        "access_key_id": "AKIDEXAMPLE",
 1850   1381   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1851   1382   
    },
 1852   1383   
    "expiration_in_seconds": 3600,
 1853   1384   
    "normalize": false,
 1854   1385   
    "region": "us-east-1",
 1855   1386   
    "service": "service",
 1856   1387   
    "sign_body": false,
 1857   1388   
    "timestamp": "2015-08-30T12:36:00Z"
 1858         -
}
        1389  +
}
              \
 No newline at end of file
 1859   1390   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1860   1391   
new file mode 100644
 1861   1392   
index 0000000..5159048
 1862         -
-- /dev/null
        1393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1863   1394   
@@ -0,0 +1,8 @@
        1395  +
GET
        1396  +
/./
        1397  +
        1398  +
host:example.amazonaws.com
        1399  +
x-amz-date:20150830T123600Z
        1400  +
        1401  +
host;x-amz-date
        1402  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1864   1403   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1865   1404   
new file mode 100644
 1866   1405   
index 0000000..b49ff0e
 1867         -
-- /dev/null
        1406  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1868   1407   
@@ -0,0 +1 @@
        1408  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1869   1409   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1870   1410   
new file mode 100644
 1871   1411   
index 0000000..aeb1ffa
 1872         -
-- /dev/null
        1412  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1873   1413   
@@ -0,0 +1,5 @@
        1414  +
GET /./ HTTP/1.1
        1415  +
Host:example.amazonaws.com
        1416  +
X-Amz-Date:20150830T123600Z
        1417  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1418  +
 1874   1419   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1875   1420   
new file mode 100644
 1876   1421   
index 0000000..b7d8caf
 1877         -
-- /dev/null
        1422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1878   1423   
@@ -0,0 +1,4 @@
        1424  +
AWS4-HMAC-SHA256
        1425  +
20150830T123600Z
        1426  +
20150830/us-east-1/service/aws4_request
        1427  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1879   1428   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1880   1429   
new file mode 100644
 1881   1430   
index 0000000..d4e029e
 1882         -
-- /dev/null
        1431  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1883   1432   
@@ -0,0 +1,7 @@
        1433  +
GET
        1434  +
/./
        1435  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1436  +
host:example.amazonaws.com
        1437  +
        1438  +
host
        1439  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1884   1440   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1885   1441   
new file mode 100644
 1886   1442   
index 0000000..fe8f4cc
 1887         -
-- /dev/null
        1443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1888   1444   
@@ -0,0 +1 @@
        1445  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1889   1446   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1890   1447   
new file mode 100644
 1891   1448   
index 0000000..dcc4fc4
 1892         -
-- /dev/null
        1449  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1893   1450   
@@ -0,0 +1,3 @@
        1451  +
GET /./?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c HTTP/1.1
        1452  +
Host:example.amazonaws.com
        1453  +
 1894   1454   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1895   1455   
new file mode 100644
 1896   1456   
index 0000000..5fb3ada
 1897         -
-- /dev/null
        1457  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1898   1458   
@@ -0,0 +1,4 @@
        1459  +
AWS4-HMAC-SHA256
        1460  +
20150830T123600Z
        1461  +
20150830/us-east-1/service/aws4_request
        1462  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1899   1463   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1900   1464   
similarity index 100%
 1901   1465   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1902   1466   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1903   1467   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1904   1468   
new file mode 100644
 1905   1469   
index 0000000..0468d80
 1906         -
-- /dev/null
        1470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1907   1471   
@@ -0,0 +1,12 @@
        1472  +
{
        1473  +
    "credentials": {
        1474  +
        "access_key_id": "AKIDEXAMPLE",
        1475  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1476  +
    },
        1477  +
    "expiration_in_seconds": 3600,
        1478  +
    "normalize": true,
        1479  +
    "region": "us-east-1",
        1480  +
    "service": "service",
        1481  +
    "sign_body": false,
        1482  +
    "timestamp": "2015-08-30T12:36:00Z"
        1483  +
}
              \
 No newline at end of file
 1908   1484   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1909   1485   
similarity index 100%
 1910   1486   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1911   1487   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1912   1488   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1913   1489   
new file mode 100644
 1914   1490   
index 0000000..87f295f
 1915         -
-- /dev/null
        1491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1916   1492   
@@ -0,0 +1 @@
        1493  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1917   1494   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1918   1495   
new file mode 100644
 1919   1496   
index 0000000..b91087b
 1920         -
-- /dev/null
        1497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1921   1498   
@@ -0,0 +1,5 @@
        1499  +
GET // HTTP/1.1
        1500  +
Host:example.amazonaws.com
        1501  +
X-Amz-Date:20150830T123600Z
        1502  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1503  +
 1922   1504   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1923   1505   
similarity index 100%
 1924   1506   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1925   1507   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1926   1508   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1927   1509   
new file mode 100644
 1928   1510   
index 0000000..fb2420d
 1929         -
-- /dev/null
        1511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1930   1512   
@@ -0,0 +1,7 @@
        1513  +
GET
        1514  +
/
        1515  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1516  +
host:example.amazonaws.com
        1517  +
        1518  +
host
        1519  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1931   1520   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1932   1521   
new file mode 100644
 1933   1522   
index 0000000..da5c905
 1934         -
-- /dev/null
        1523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1935   1524   
@@ -0,0 +1 @@
        1525  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1936   1526   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1937   1527   
new file mode 100644
 1938   1528   
index 0000000..0290ba4
 1939         -
-- /dev/null
        1529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1940   1530   
@@ -0,0 +1,3 @@
        1531  +
GET //?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d HTTP/1.1
        1532  +
Host:example.amazonaws.com
        1533  +
 1941   1534   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1942   1535   
new file mode 100644
 1943   1536   
index 0000000..d837e67
 1944         -
-- /dev/null
        1537  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1945   1538   
@@ -0,0 +1,4 @@
        1539  +
AWS4-HMAC-SHA256
        1540  +
20150830T123600Z
        1541  +
20150830/us-east-1/service/aws4_request
        1542  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1946   1543   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1947   1544   
similarity index 100%
 1948   1545   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1949   1546   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1950   1547   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1951   1548   
new file mode 100644
 1952   1549   
index 0000000..0468d80
 1953         -
-- /dev/null
        1550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1954   1551   
@@ -0,0 +1,12 @@
        1552  +
{
        1553  +
    "credentials": {
        1554  +
        "access_key_id": "AKIDEXAMPLE",
        1555  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1556  +
    },
        1557  +
    "expiration_in_seconds": 3600,
        1558  +
    "normalize": true,
        1559  +
    "region": "us-east-1",
        1560  +
    "service": "service",
        1561  +
    "sign_body": false,
        1562  +
    "timestamp": "2015-08-30T12:36:00Z"
        1563  +
}
              \
 No newline at end of file
 1955   1564   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1956   1565   
similarity index 100%
 1957   1566   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.creq
 1958   1567   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1959   1568   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1960   1569   
new file mode 100644
 1961   1570   
index 0000000..8f892bf
 1962         -
-- /dev/null
        1571  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1963   1572   
@@ -0,0 +1 @@
        1573  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1964   1574   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1965   1575   
new file mode 100644
 1966   1576   
index 0000000..2a1895c
 1967         -
-- /dev/null
        1577  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1968   1578   
@@ -0,0 +1,5 @@
        1579  +
GET /./example HTTP/1.1
        1580  +
Host:example.amazonaws.com
        1581  +
X-Amz-Date:20150830T123600Z
        1582  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1583  +
 1969   1584   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 1970   1585   
similarity index 100%
 1971   1586   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.sts
 1972   1587   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 1973   1588   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1974   1589   
new file mode 100644
 1975   1590   
index 0000000..99dfc2a
 1976         -
-- /dev/null
        1591  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1977   1592   
@@ -0,0 +1,7 @@
        1593  +
GET
        1594  +
/example
        1595  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1596  +
host:example.amazonaws.com
        1597  +
        1598  +
host
        1599  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1978   1600   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1979   1601   
new file mode 100644
 1980   1602   
index 0000000..fcd7a17
 1981         -
-- /dev/null
        1603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1982   1604   
@@ -0,0 +1 @@
        1605  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1983   1606   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1984   1607   
new file mode 100644
 1985   1608   
index 0000000..f671de2
 1986         -
-- /dev/null
        1609  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1987   1610   
@@ -0,0 +1,3 @@
        1611  +
GET /./example?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de HTTP/1.1
        1612  +
Host:example.amazonaws.com
        1613  +
 1988   1614   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1989   1615   
new file mode 100644
 1990   1616   
index 0000000..f8456dc
 1991         -
-- /dev/null
        1617  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1992   1618   
@@ -0,0 +1,4 @@
        1619  +
AWS4-HMAC-SHA256
        1620  +
20150830T123600Z
        1621  +
20150830/us-east-1/service/aws4_request
        1622  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1993   1623   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1994   1624   
similarity index 100%
 1995   1625   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1996   1626   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1997   1627   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1998   1628   
similarity index 99%
 1999   1629   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 2000   1630   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 2001   1631   
index afe367b..7bee5c7 100644
 2002         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
        1632  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 2003   1633   
@@ -1,12 +1,12 @@
 2004   1634   
{
 2005   1635   
    "credentials": {
 2006   1636   
        "access_key_id": "AKIDEXAMPLE",
 2007   1637   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 2008   1638   
    },
 2009   1639   
    "expiration_in_seconds": 3600,
 2010   1640   
    "normalize": false,
 2011   1641   
    "region": "us-east-1",
 2012   1642   
    "service": "service",
 2013   1643   
    "sign_body": false,
 2014   1644   
    "timestamp": "2015-08-30T12:36:00Z"
 2015         -
}
        1645  +
}
              \
 No newline at end of file
 2016   1646   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 2017   1647   
new file mode 100644
 2018   1648   
index 0000000..36698c7
 2019         -
-- /dev/null
        1649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 2020   1650   
@@ -0,0 +1,8 @@
        1651  +
GET
        1652  +
/./example
        1653  +
        1654  +
host:example.amazonaws.com
        1655  +
x-amz-date:20150830T123600Z
        1656  +
        1657  +
host;x-amz-date
        1658  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2021   1659   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 2022   1660   
new file mode 100644
 2023   1661   
index 0000000..4a4b8f2
 2024         -
-- /dev/null
        1662  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 2025   1663   
@@ -0,0 +1 @@
        1664  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 2026   1665   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 2027   1666   
new file mode 100644
 2028   1667   
index 0000000..d462bcd
 2029         -
-- /dev/null
        1668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 2030   1669   
@@ -0,0 +1,5 @@
        1670  +
GET /./example HTTP/1.1
        1671  +
Host:example.amazonaws.com
        1672  +
X-Amz-Date:20150830T123600Z
        1673  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1674  +
 2031   1675   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 2032   1676   
new file mode 100644
 2033   1677   
index 0000000..8be78c9
 2034         -
-- /dev/null
        1678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 2035   1679   
@@ -0,0 +1,4 @@
        1680  +
AWS4-HMAC-SHA256
        1681  +
20150830T123600Z
        1682  +
20150830/us-east-1/service/aws4_request
        1683  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 2036   1684   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 2037   1685   
new file mode 100644
 2038   1686   
index 0000000..fe1103c
 2039         -
-- /dev/null
        1687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 2040   1688   
@@ -0,0 +1,7 @@
        1689  +
GET
        1690  +
/./example
        1691  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1692  +
host:example.amazonaws.com
        1693  +
        1694  +
host
        1695  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2041   1696   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 2042   1697   
new file mode 100644
 2043   1698   
index 0000000..ce80762
 2044         -
-- /dev/null
        1699  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 2045   1700   
@@ -0,0 +1 @@
        1701  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 2046   1702   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 2047   1703   
new file mode 100644
 2048   1704   
index 0000000..30841a6
 2049         -
-- /dev/null
        1705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 2050   1706   
@@ -0,0 +1,3 @@
        1707  +
GET /./example?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10 HTTP/1.1
        1708  +
Host:example.amazonaws.com
        1709  +
 2051   1710   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 2052   1711   
new file mode 100644
 2053   1712   
index 0000000..5c66509
 2054         -
-- /dev/null
        1713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 2055   1714   
@@ -0,0 +1,4 @@
        1715  +
AWS4-HMAC-SHA256
        1716  +
20150830T123600Z
        1717  +
20150830/us-east-1/service/aws4_request
        1718  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 2056   1719   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 2057   1720   
similarity index 100%
 2058   1721   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 2059   1722   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 2060   1723   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 2061   1724   
new file mode 100644
 2062   1725   
index 0000000..7bee5c7
 2063         -
-- /dev/null
        1726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 2064   1727   
@@ -0,0 +1,12 @@
        1728  +
{
        1729  +
    "credentials": {
        1730  +
        "access_key_id": "AKIDEXAMPLE",
        1731  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1732  +
    },
        1733  +
    "expiration_in_seconds": 3600,
        1734  +
    "normalize": false,
        1735  +
    "region": "us-east-1",
        1736  +
    "service": "service",
        1737  +
    "sign_body": false,
        1738  +
    "timestamp": "2015-08-30T12:36:00Z"
        1739  +
}
              \
 No newline at end of file
 2065   1740   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 2066   1741   
new file mode 100644
 2067   1742   
index 0000000..5860c8a
 2068         -
-- /dev/null
        1743  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 2069   1744   
@@ -0,0 +1,8 @@
        1745  +
GET
        1746  +
//
        1747  +
        1748  +
host:example.amazonaws.com
        1749  +
x-amz-date:20150830T123600Z
        1750  +
        1751  +
host;x-amz-date
        1752  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2070   1753   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 2071   1754   
new file mode 100644
 2072   1755   
index 0000000..8310471
 2073         -
-- /dev/null
        1756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 2074   1757   
@@ -0,0 +1 @@
        1758  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 2075   1759   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 2076   1760   
new file mode 100644
 2077   1761   
index 0000000..2a7afef
 2078         -
-- /dev/null
        1762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 2079   1763   
@@ -0,0 +1,5 @@
        1764  +
GET // HTTP/1.1
        1765  +
Host:example.amazonaws.com
        1766  +
X-Amz-Date:20150830T123600Z
        1767  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1768  +
 2080   1769   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 2081   1770   
new file mode 100644
 2082   1771   
index 0000000..06059dd
 2083         -
-- /dev/null
        1772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 2084   1773   
@@ -0,0 +1,4 @@
        1774  +
AWS4-HMAC-SHA256
        1775  +
20150830T123600Z
        1776  +
20150830/us-east-1/service/aws4_request
        1777  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 2085   1778   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 2086   1779   
new file mode 100644
 2087   1780   
index 0000000..6d63aef
 2088         -
-- /dev/null
        1781  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 2089   1782   
@@ -0,0 +1,7 @@
        1783  +
GET
        1784  +
//
        1785  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1786  +
host:example.amazonaws.com
        1787  +
        1788  +
host
        1789  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2090   1790   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 2091   1791   
new file mode 100644
 2092   1792   
index 0000000..e5b7b6c
 2093         -
-- /dev/null
        1793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 2094   1794   
@@ -0,0 +1 @@
        1795  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 2095   1796   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 2096   1797   
new file mode 100644
 2097   1798   
index 0000000..46fe3fd
 2098         -
-- /dev/null
        1799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 2099   1800   
@@ -0,0 +1,3 @@
        1801  +
GET //?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd HTTP/1.1
        1802  +
Host:example.amazonaws.com
        1803  +
 2100   1804   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 2101   1805   
new file mode 100644
 2102   1806   
index 0000000..ea79940
 2103         -
-- /dev/null
        1807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 2104   1808   
@@ -0,0 +1,4 @@
        1809  +
AWS4-HMAC-SHA256
        1810  +
20150830T123600Z
        1811  +
20150830/us-east-1/service/aws4_request
        1812  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 2105   1813   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 2106   1814   
similarity index 100%
 2107   1815   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 2108   1816   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 2109   1817   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 2110   1818   
new file mode 100644
 2111   1819   
index 0000000..0468d80
 2112         -
-- /dev/null
        1820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 2113   1821   
@@ -0,0 +1,12 @@
        1822  +
{
        1823  +
    "credentials": {
        1824  +
        "access_key_id": "AKIDEXAMPLE",
        1825  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1826  +
    },
        1827  +
    "expiration_in_seconds": 3600,
        1828  +
    "normalize": true,
        1829  +
    "region": "us-east-1",
        1830  +
    "service": "service",
        1831  +
    "sign_body": false,
        1832  +
    "timestamp": "2015-08-30T12:36:00Z"
        1833  +
}
              \
 No newline at end of file
 2114   1834   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 2115   1835   
similarity index 100%
 2116   1836   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 2117   1837   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 2118   1838   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 2119   1839   
new file mode 100644
 2120   1840   
index 0000000..71c7bac
 2121         -
-- /dev/null
        1841  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 2122   1842   
@@ -0,0 +1 @@
        1843  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 2123   1844   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 2124   1845   
new file mode 100644
 2125   1846   
index 0000000..0add1f1
 2126         -
-- /dev/null
        1847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 2127   1848   
@@ -0,0 +1,5 @@
        1849  +
GET //example// HTTP/1.1
        1850  +
Host:example.amazonaws.com
        1851  +
X-Amz-Date:20150830T123600Z
        1852  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1853  +
 2128   1854   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 2129   1855   
similarity index 100%
 2130   1856   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 2131   1857   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 2132   1858   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 2133   1859   
new file mode 100644
 2134   1860   
index 0000000..ce72510
 2135         -
-- /dev/null
        1861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 2136   1862   
@@ -0,0 +1,7 @@
        1863  +
GET
        1864  +
/example/
        1865  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1866  +
host:example.amazonaws.com
        1867  +
        1868  +
host
        1869  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2137   1870   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 2138   1871   
new file mode 100644
 2139   1872   
index 0000000..265f387
 2140         -
-- /dev/null
        1873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 2141   1874   
@@ -0,0 +1 @@
        1875  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 2142   1876   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 2143   1877   
new file mode 100644
 2144   1878   
index 0000000..e1fcb2e
 2145         -
-- /dev/null
        1879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 2146   1880   
@@ -0,0 +1,3 @@
        1881  +
GET //example//?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082 HTTP/1.1
        1882  +
Host:example.amazonaws.com
        1883  +
 2147   1884   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 2148   1885   
new file mode 100644
 2149   1886   
index 0000000..a14de61
 2150         -
-- /dev/null
        1887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 2151   1888   
@@ -0,0 +1,4 @@
        1889  +
AWS4-HMAC-SHA256
        1890  +
20150830T123600Z
        1891  +
20150830/us-east-1/service/aws4_request
        1892  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 2152   1893   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 2153   1894   
similarity index 100%
 2154   1895   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 2155   1896   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 2156   1897   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 2157   1898   
new file mode 100644
 2158   1899   
index 0000000..7bee5c7
 2159         -
-- /dev/null
        1900  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 2160   1901   
@@ -0,0 +1,12 @@
        1902  +
{
        1903  +
    "credentials": {
        1904  +
        "access_key_id": "AKIDEXAMPLE",
        1905  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1906  +
    },
        1907  +
    "expiration_in_seconds": 3600,
        1908  +
    "normalize": false,
        1909  +
    "region": "us-east-1",
        1910  +
    "service": "service",
        1911  +
    "sign_body": false,
        1912  +
    "timestamp": "2015-08-30T12:36:00Z"
        1913  +
}
              \
 No newline at end of file
 2161   1914   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 2162   1915   
new file mode 100644
 2163   1916   
index 0000000..dfffaaf
 2164         -
-- /dev/null
        1917  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 2165   1918   
@@ -0,0 +1,8 @@
        1919  +
GET
        1920  +
//example//
        1921  +
        1922  +
host:example.amazonaws.com
        1923  +
x-amz-date:20150830T123600Z
        1924  +
        1925  +
host;x-amz-date
        1926  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2166   1927   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 2167   1928   
new file mode 100644
 2168   1929   
index 0000000..edbcc0d
 2169         -
-- /dev/null
        1930  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 2170   1931   
@@ -0,0 +1 @@
        1932  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 2171   1933   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 2172   1934   
new file mode 100644
 2173   1935   
index 0000000..4cc12dd
 2174         -
-- /dev/null
        1936  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 2175   1937   
@@ -0,0 +1,5 @@
        1938  +
GET //example// HTTP/1.1
        1939  +
Host:example.amazonaws.com
        1940  +
X-Amz-Date:20150830T123600Z
        1941  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1942  +
 2176   1943   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 2177   1944   
new file mode 100644
 2178   1945   
index 0000000..3eba390
 2179         -
-- /dev/null
        1946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 2180   1947   
@@ -0,0 +1,4 @@
        1948  +
AWS4-HMAC-SHA256
        1949  +
20150830T123600Z
        1950  +
20150830/us-east-1/service/aws4_request
        1951  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 2181   1952   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 2182   1953   
new file mode 100644
 2183   1954   
index 0000000..f7844e3
 2184         -
-- /dev/null
        1955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 2185   1956   
@@ -0,0 +1,7 @@
        1957  +
GET
        1958  +
//example//
        1959  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1960  +
host:example.amazonaws.com
        1961  +
        1962  +
host
        1963  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2186   1964   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 2187   1965   
new file mode 100644
 2188   1966   
index 0000000..a8d6b96
 2189         -
-- /dev/null
        1967  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 2190   1968   
@@ -0,0 +1 @@
        1969  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 2191   1970   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 2192   1971   
new file mode 100644
 2193   1972   
index 0000000..a8322c6
 2194         -
-- /dev/null
        1973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 2195   1974   
@@ -0,0 +1,3 @@
        1975  +
GET //example//?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2 HTTP/1.1
        1976  +
Host:example.amazonaws.com
        1977  +
 2196   1978   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 2197   1979   
new file mode 100644
 2198   1980   
index 0000000..068724d
 2199         -
-- /dev/null
        1981  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 2200   1982   
@@ -0,0 +1,4 @@
        1983  +
AWS4-HMAC-SHA256
        1984  +
20150830T123600Z
        1985  +
20150830/us-east-1/service/aws4_request
        1986  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 2201   1987   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 2202   1988   
similarity index 100%
 2203   1989   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 2204   1990   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 2205   1991   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 2206   1992   
new file mode 100644
 2207   1993   
index 0000000..0468d80
 2208         -
-- /dev/null
        1994  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 2209   1995   
@@ -0,0 +1,12 @@
        1996  +
{
        1997  +
    "credentials": {
        1998  +
        "access_key_id": "AKIDEXAMPLE",
        1999  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2000  +
    },
        2001  +
    "expiration_in_seconds": 3600,
        2002  +
    "normalize": true,
        2003  +
    "region": "us-east-1",
        2004  +
    "service": "service",
        2005  +
    "sign_body": false,
        2006  +
    "timestamp": "2015-08-30T12:36:00Z"
        2007  +
}
              \
 No newline at end of file
 2210   2008   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 2211   2009   
similarity index 100%
 2212   2010   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 2213   2011   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 2214   2012   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 2215   2013   
new file mode 100644
 2216   2014   
index 0000000..f63892b
 2217         -
-- /dev/null
        2015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 2218   2016   
@@ -0,0 +1 @@
        2017  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2219   2018   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 2220   2019   
new file mode 100644
 2221   2020   
index 0000000..19cd5cb
 2222         -
-- /dev/null
        2021  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 2223   2022   
@@ -0,0 +1,5 @@
        2023  +
GET /example space/ HTTP/1.1
        2024  +
Host:example.amazonaws.com
        2025  +
X-Amz-Date:20150830T123600Z
        2026  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        2027  +
 2224   2028   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 2225   2029   
similarity index 100%
 2226   2030   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 2227   2031   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 2228   2032   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 2229   2033   
new file mode 100644
 2230   2034   
index 0000000..fa3d3e2
 2231         -
-- /dev/null
        2035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 2232   2036   
@@ -0,0 +1,7 @@
        2037  +
GET
        2038  +
/example%20space/
        2039  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2040  +
host:example.amazonaws.com
        2041  +
        2042  +
host
        2043  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2233   2044   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 2234   2045   
new file mode 100644
 2235   2046   
index 0000000..5b2e204
 2236         -
-- /dev/null
        2047  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 2237   2048   
@@ -0,0 +1 @@
        2049  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2238   2050   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 2239   2051   
new file mode 100644
 2240   2052   
index 0000000..93ca1d0
 2241         -
-- /dev/null
        2053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 2242   2054   
@@ -0,0 +1,3 @@
        2055  +
GET /example space/?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6 HTTP/1.1
        2056  +
Host:example.amazonaws.com
        2057  +
 2243   2058   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 2244   2059   
new file mode 100644
 2245   2060   
index 0000000..b4cb789
 2246         -
-- /dev/null
        2061  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 2247   2062   
@@ -0,0 +1,4 @@
        2063  +
AWS4-HMAC-SHA256
        2064  +
20150830T123600Z
        2065  +
20150830/us-east-1/service/aws4_request
        2066  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2248   2067   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 2249   2068   
new file mode 100644
 2250   2069   
index 0000000..860a277
 2251         -
-- /dev/null
        2070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 2252   2071   
@@ -0,0 +1,2 @@
        2072  +
GET /example%20space/ HTTP/1.1
        2073  +
Host:example.amazonaws.com
 2253   2074   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 2254   2075   
new file mode 100644
 2255   2076   
index 0000000..7bee5c7
 2256         -
-- /dev/null
        2077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 2257   2078   
@@ -0,0 +1,12 @@
        2079  +
{
        2080  +
    "credentials": {
        2081  +
        "access_key_id": "AKIDEXAMPLE",
        2082  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2083  +
    },
        2084  +
    "expiration_in_seconds": 3600,
        2085  +
    "normalize": false,
        2086  +
    "region": "us-east-1",
        2087  +
    "service": "service",
        2088  +
    "sign_body": false,
        2089  +
    "timestamp": "2015-08-30T12:36:00Z"
        2090  +
}
              \
 No newline at end of file
 2258   2091   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2259   2092   
similarity index 66%
 2260   2093   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.creq
 2261   2094   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2262   2095   
index 71dc981..124a709 100644
 2263         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.creq
        2096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2264   2097   
@@ -1,9 +1,8 @@
 2265         -
POST
 2266         -
/
        2098  +
GET
        2099  +
/example%20space/
 2267   2100   
 2268         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 2269   2101   
host:example.amazonaws.com
 2270   2102   
x-amz-date:20150830T123600Z
 2271   2103   
 2272   2104   
host;x-amz-date
 2273   2105   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2274   2106   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 2275   2107   
new file mode 100644
 2276   2108   
index 0000000..f63892b
 2277         -
-- /dev/null
        2109  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 2278   2110   
@@ -0,0 +1 @@
        2111  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2279   2112   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 2280   2113   
new file mode 100644
 2281   2114   
index 0000000..19cd5cb
 2282         -
-- /dev/null
        2115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 2283   2116   
@@ -0,0 +1,5 @@
        2117  +
GET /example space/ HTTP/1.1
        2118  +
Host:example.amazonaws.com
        2119  +
X-Amz-Date:20150830T123600Z
        2120  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        2121  +
 2284   2122   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 2285   2123   
new file mode 100644
 2286   2124   
index 0000000..a633f0c
 2287         -
-- /dev/null
        2125  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 2288   2126   
@@ -0,0 +1,4 @@
        2127  +
AWS4-HMAC-SHA256
        2128  +
20150830T123600Z
        2129  +
20150830/us-east-1/service/aws4_request
        2130  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 2289   2131   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 2290   2132   
new file mode 100644
 2291   2133   
index 0000000..fa3d3e2
 2292         -
-- /dev/null
        2134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 2293   2135   
@@ -0,0 +1,7 @@
        2136  +
GET
        2137  +
/example%20space/
        2138  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2139  +
host:example.amazonaws.com
        2140  +
        2141  +
host
        2142  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2294   2143   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 2295   2144   
new file mode 100644
 2296   2145   
index 0000000..5b2e204
 2297         -
-- /dev/null
        2146  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 2298   2147   
@@ -0,0 +1 @@
        2148  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2299   2149   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 2300   2150   
new file mode 100644
 2301   2151   
index 0000000..93ca1d0
 2302         -
-- /dev/null
        2152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 2303   2153   
@@ -0,0 +1,3 @@
        2154  +
GET /example space/?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6 HTTP/1.1
        2155  +
Host:example.amazonaws.com
        2156  +
 2304   2157   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 2305   2158   
new file mode 100644
 2306   2159   
index 0000000..b4cb789
 2307         -
-- /dev/null
        2160  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 2308   2161   
@@ -0,0 +1,4 @@
        2162  +
AWS4-HMAC-SHA256
        2163  +
20150830T123600Z
        2164  +
20150830/us-east-1/service/aws4_request
        2165  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2309   2166   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2310   2167   
similarity index 67%
 2311   2168   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 2312   2169   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2313   2170   
index b7d5e8b..ab509ab 100644
 2314         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        2171  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2315   2172   
@@ -1,3 +1,2 @@
 2316   2173   
GET /example space/ HTTP/1.1
 2317   2174   
Host:example.amazonaws.com
 2318         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2319   2175   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 2320   2176   
new file mode 100644
 2321   2177   
index 0000000..0468d80
 2322         -
-- /dev/null
        2178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 2323   2179   
@@ -0,0 +1,12 @@
        2180  +
{
        2181  +
    "credentials": {
        2182  +
        "access_key_id": "AKIDEXAMPLE",
        2183  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2184  +
    },
        2185  +
    "expiration_in_seconds": 3600,
        2186  +
    "normalize": true,
        2187  +
    "region": "us-east-1",
        2188  +
    "service": "service",
        2189  +
    "sign_body": false,
        2190  +
    "timestamp": "2015-08-30T12:36:00Z"
        2191  +
}
              \
 No newline at end of file
 2324   2192   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2325   2193   
similarity index 100%
 2326   2194   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 2327   2195   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2328   2196   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2329   2197   
new file mode 100644
 2330   2198   
index 0000000..e503354
 2331         -
-- /dev/null
        2199  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2332   2200   
@@ -0,0 +1 @@
        2201  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 2333   2202   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2334   2203   
new file mode 100644
 2335   2204   
index 0000000..4367892
 2336         -
-- /dev/null
        2205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2337   2206   
@@ -0,0 +1,5 @@
        2207  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        2208  +
Host:example.amazonaws.com
        2209  +
X-Amz-Date:20150830T123600Z
        2210  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        2211  +
 2338   2212   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2339   2213   
similarity index 100%
 2340   2214   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 2341   2215   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2342   2216   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2343   2217   
new file mode 100644
 2344   2218   
index 0000000..d7f0696
 2345         -
-- /dev/null
        2219  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2346   2220   
@@ -0,0 +1,7 @@
        2221  +
GET
        2222  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        2223  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2224  +
host:example.amazonaws.com
        2225  +
        2226  +
host
        2227  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2347   2228   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2348   2229   
new file mode 100644
 2349   2230   
index 0000000..509e972
 2350         -
-- /dev/null
        2231  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2351   2232   
@@ -0,0 +1 @@
        2233  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 2352   2234   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2353   2235   
new file mode 100644
 2354   2236   
index 0000000..79aad36
 2355         -
-- /dev/null
        2237  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2356   2238   
@@ -0,0 +1,3 @@
        2239  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005 HTTP/1.1
        2240  +
Host:example.amazonaws.com
        2241  +
 2357   2242   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2358   2243   
new file mode 100644
 2359   2244   
index 0000000..e8068b3
 2360         -
-- /dev/null
        2245  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2361   2246   
@@ -0,0 +1,4 @@
        2247  +
AWS4-HMAC-SHA256
        2248  +
20150830T123600Z
        2249  +
20150830/us-east-1/service/aws4_request
        2250  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 2362   2251   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2363   2252   
similarity index 100%
 2364   2253   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 2365   2254   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2366   2255   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2367   2256   
new file mode 100644
 2368   2257   
index 0000000..0468d80
 2369         -
-- /dev/null
        2258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2370   2259   
@@ -0,0 +1,12 @@
        2260  +
{
        2261  +
    "credentials": {
        2262  +
        "access_key_id": "AKIDEXAMPLE",
        2263  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2264  +
    },
        2265  +
    "expiration_in_seconds": 3600,
        2266  +
    "normalize": true,
        2267  +
    "region": "us-east-1",
        2268  +
    "service": "service",
        2269  +
    "sign_body": false,
        2270  +
    "timestamp": "2015-08-30T12:36:00Z"
        2271  +
}
              \
 No newline at end of file
 2371   2272   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2372   2273   
similarity index 100%
 2373   2274   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 2374   2275   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2375   2276   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2376   2277   
new file mode 100644
 2377   2278   
index 0000000..9a13676
 2378         -
-- /dev/null
        2279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2379   2280   
@@ -0,0 +1 @@
        2281  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 2380   2282   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2381   2283   
new file mode 100644
 2382   2284   
index 0000000..5aaf47c
 2383         -
-- /dev/null
        2285  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2384   2286   
@@ -0,0 +1,5 @@
        2287  +
GET /ሴ HTTP/1.1
        2288  +
Host:example.amazonaws.com
        2289  +
X-Amz-Date:20150830T123600Z
        2290  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2291  +
 2385   2292   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2386   2293   
similarity index 100%
 2387   2294   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 2388   2295   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2389   2296   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2390   2297   
new file mode 100644
 2391   2298   
index 0000000..bdb77c9
 2392         -
-- /dev/null
        2299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2393   2300   
@@ -0,0 +1,7 @@
        2301  +
GET
        2302  +
/%E1%88%B4
        2303  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2304  +
host:example.amazonaws.com
        2305  +
        2306  +
host
        2307  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2394   2308   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2395   2309   
new file mode 100644
 2396   2310   
index 0000000..21342b3
 2397         -
-- /dev/null
        2311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2398   2312   
@@ -0,0 +1 @@
        2313  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2399   2314   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2400   2315   
new file mode 100644
 2401   2316   
index 0000000..368c2ff
 2402         -
-- /dev/null
        2317  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2403   2318   
@@ -0,0 +1,3 @@
        2319  +
GET /ሴ?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44 HTTP/1.1
        2320  +
Host:example.amazonaws.com
        2321  +
 2404   2322   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2405   2323   
new file mode 100644
 2406   2324   
index 0000000..56b8fbf
 2407         -
-- /dev/null
        2325  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2408   2326   
@@ -0,0 +1,4 @@
        2327  +
AWS4-HMAC-SHA256
        2328  +
20150830T123600Z
        2329  +
20150830/us-east-1/service/aws4_request
        2330  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2409   2331   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2410   2332   
similarity index 62%
 2411   2333   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2412   2334   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2413   2335   
index da4808d..9e273f6 100644
 2414         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2336  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2415   2337   
@@ -1,3 +1,2 @@
 2416   2338   
GET /ሴ HTTP/1.1
 2417   2339   
Host:example.amazonaws.com
 2418         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2419   2340   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2420   2341   
new file mode 100644
 2421   2342   
index 0000000..0468d80
 2422         -
-- /dev/null
        2343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2423   2344   
@@ -0,0 +1,12 @@
        2345  +
{
        2346  +
    "credentials": {
        2347  +
        "access_key_id": "AKIDEXAMPLE",
        2348  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2349  +
    },
        2350  +
    "expiration_in_seconds": 3600,
        2351  +
    "normalize": true,
        2352  +
    "region": "us-east-1",
        2353  +
    "service": "service",
        2354  +
    "sign_body": false,
        2355  +
    "timestamp": "2015-08-30T12:36:00Z"
        2356  +
}
              \
 No newline at end of file
 2424   2357   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2425   2358   
similarity index 100%
 2426   2359   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.creq
 2427   2360   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2428   2361   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2429   2362   
new file mode 100644
 2430   2363   
index 0000000..d7f1c1c
 2431         -
-- /dev/null
        2364  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2432   2365   
@@ -0,0 +1 @@
        2366  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2433   2367   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2434   2368   
new file mode 100644
 2435   2369   
index 0000000..1c60790
 2436         -
-- /dev/null
        2370  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2437   2371   
@@ -0,0 +1,5 @@
        2372  +
GET /?Param1=value1 HTTP/1.1
        2373  +
Host:example.amazonaws.com
        2374  +
X-Amz-Date:20150830T123600Z
        2375  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2376  +
 2438   2377   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-string-to-sign.txt
 2439   2378   
similarity index 100%
 2440   2379   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.sts
 2441   2380   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-string-to-sign.txt
 2442   2381   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2443   2382   
new file mode 100644
 2444   2383   
index 0000000..6a823ed
 2445         -
-- /dev/null
        2384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2446   2385   
@@ -0,0 +1,7 @@
        2386  +
GET
        2387  +
/
        2388  +
Param1=value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2389  +
host:example.amazonaws.com
        2390  +
        2391  +
host
        2392  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2447   2393   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2448   2394   
new file mode 100644
 2449   2395   
index 0000000..8c77136
 2450         -
-- /dev/null
        2396  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2451   2397   
@@ -0,0 +1 @@
        2398  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2452   2399   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2453   2400   
new file mode 100644
 2454   2401   
index 0000000..2d337d8
 2455         -
-- /dev/null
        2402  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2456   2403   
@@ -0,0 +1,3 @@
        2404  +
GET /?Param1=value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de HTTP/1.1
        2405  +
Host:example.amazonaws.com
        2406  +
 2457   2407   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2458   2408   
new file mode 100644
 2459   2409   
index 0000000..191a484
 2460         -
-- /dev/null
        2410  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2461   2411   
@@ -0,0 +1,4 @@
        2412  +
AWS4-HMAC-SHA256
        2413  +
20150830T123600Z
        2414  +
20150830/us-east-1/service/aws4_request
        2415  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2462   2416   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2463   2417   
similarity index 100%
 2464   2418   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2465   2419   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2466   2420   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2467   2421   
new file mode 100644
 2468   2422   
index 0000000..0468d80
 2469         -
-- /dev/null
        2423  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2470   2424   
@@ -0,0 +1,12 @@
        2425  +
{
        2426  +
    "credentials": {
        2427  +
        "access_key_id": "AKIDEXAMPLE",
        2428  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2429  +
    },
        2430  +
    "expiration_in_seconds": 3600,
        2431  +
    "normalize": true,
        2432  +
    "region": "us-east-1",
        2433  +
    "service": "service",
        2434  +
    "sign_body": false,
        2435  +
    "timestamp": "2015-08-30T12:36:00Z"
        2436  +
}
              \
 No newline at end of file
 2471   2437   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2472   2438   
new file mode 100644
 2473   2439   
index 0000000..0c8ba21
 2474         -
-- /dev/null
        2440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2475   2441   
@@ -0,0 +1,8 @@
        2442  +
GET
        2443  +
/
        2444  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2445  +
host:example.amazonaws.com
        2446  +
x-amz-date:20150830T123600Z
        2447  +
        2448  +
host;x-amz-date
        2449  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2476   2450   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2477   2451   
new file mode 100644
 2478   2452   
index 0000000..9ab65ed
 2479         -
-- /dev/null
        2453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2480   2454   
@@ -0,0 +1 @@
        2455  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2481   2456   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2482   2457   
new file mode 100644
 2483   2458   
index 0000000..0bcdf98
 2484         -
-- /dev/null
        2459  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2485   2460   
@@ -0,0 +1,5 @@
        2461  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2462  +
Host:example.amazonaws.com
        2463  +
X-Amz-Date:20150830T123600Z
        2464  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2465  +
 2486   2466   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2487   2467   
new file mode 100644
 2488   2468   
index 0000000..bf674ad
 2489         -
-- /dev/null
        2469  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2490   2470   
@@ -0,0 +1,4 @@
        2471  +
AWS4-HMAC-SHA256
        2472  +
20150830T123600Z
        2473  +
20150830/us-east-1/service/aws4_request
        2474  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2491   2475   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2492   2476   
new file mode 100644
 2493   2477   
index 0000000..3f590a4
 2494         -
-- /dev/null
        2478  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2495   2479   
@@ -0,0 +1,7 @@
        2480  +
GET
        2481  +
/
        2482  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2483  +
host:example.amazonaws.com
        2484  +
        2485  +
host
        2486  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2496   2487   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2497   2488   
new file mode 100644
 2498   2489   
index 0000000..e225eab
 2499         -
-- /dev/null
        2490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2500   2491   
@@ -0,0 +1 @@
        2492  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2501   2493   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2502   2494   
new file mode 100644
 2503   2495   
index 0000000..6206719
 2504         -
-- /dev/null
        2496  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2505   2497   
@@ -0,0 +1,3 @@
        2498  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787 HTTP/1.1
        2499  +
Host:example.amazonaws.com
        2500  +
 2506   2501   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2507   2502   
new file mode 100644
 2508   2503   
index 0000000..81a4210
 2509         -
-- /dev/null
        2504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2510   2505   
@@ -0,0 +1,4 @@
        2506  +
AWS4-HMAC-SHA256
        2507  +
20150830T123600Z
        2508  +
20150830/us-east-1/service/aws4_request
        2509  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2511   2510   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2512   2511   
new file mode 100644
 2513   2512   
index 0000000..368c6e3
 2514         -
-- /dev/null
        2513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2515   2514   
@@ -0,0 +1,2 @@
        2515  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2516  +
Host:example.amazonaws.com
 2516   2517   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2517   2518   
new file mode 100644
 2518   2519   
index 0000000..0468d80
 2519         -
-- /dev/null
        2520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2520   2521   
@@ -0,0 +1,12 @@
        2522  +
{
        2523  +
    "credentials": {
        2524  +
        "access_key_id": "AKIDEXAMPLE",
        2525  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2526  +
    },
        2527  +
    "expiration_in_seconds": 3600,
        2528  +
    "normalize": true,
        2529  +
    "region": "us-east-1",
        2530  +
    "service": "service",
        2531  +
    "sign_body": false,
        2532  +
    "timestamp": "2015-08-30T12:36:00Z"
        2533  +
}
              \
 No newline at end of file
 2521   2534   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-canonical-request.txt
 2522   2535   
similarity index 100%
 2523   2536   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.creq
 2524   2537   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-canonical-request.txt
 2525   2538   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2526   2539   
new file mode 100644
 2527   2540   
index 0000000..6a8cb9d
 2528         -
-- /dev/null
        2541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2529   2542   
@@ -0,0 +1 @@
        2543  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2530   2544   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2531   2545   
new file mode 100644
 2532   2546   
index 0000000..f78a9d2
 2533         -
-- /dev/null
        2547  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2534   2548   
@@ -0,0 +1,5 @@
        2549  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2550  +
Host:example.amazonaws.com
        2551  +
X-Amz-Date:20150830T123600Z
        2552  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2553  +
 2535   2554   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-string-to-sign.txt
 2536   2555   
similarity index 100%
 2537   2556   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.sts
 2538   2557   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-string-to-sign.txt
 2539   2558   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2540   2559   
new file mode 100644
 2541   2560   
index 0000000..a6e1bc7
 2542         -
-- /dev/null
        2561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2543   2562   
@@ -0,0 +1,7 @@
        2563  +
GET
        2564  +
/
        2565  +
Param1=value1&Param2=value2&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2566  +
host:example.amazonaws.com
        2567  +
        2568  +
host
        2569  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2544   2570   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2545   2571   
new file mode 100644
 2546   2572   
index 0000000..d6e6a88
 2547         -
-- /dev/null
        2573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2548   2574   
@@ -0,0 +1 @@
        2575  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2549   2576   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2550   2577   
new file mode 100644
 2551   2578   
index 0000000..538e2f0
 2552         -
-- /dev/null
        2579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2553   2580   
@@ -0,0 +1,3 @@
        2581  +
GET /?Param2=value2&Param1=value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5 HTTP/1.1
        2582  +
Host:example.amazonaws.com
        2583  +
 2554   2584   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-string-to-sign.txt
 2555   2585   
new file mode 100644
 2556   2586   
index 0000000..e696085
 2557         -
-- /dev/null
        2587  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-string-to-sign.txt
 2558   2588   
@@ -0,0 +1,4 @@
        2589  +
AWS4-HMAC-SHA256
        2590  +
20150830T123600Z
        2591  +
20150830/us-east-1/service/aws4_request
        2592  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2559   2593   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2560   2594   
similarity index 100%
 2561   2595   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2562   2596   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2563   2597   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2564   2598   
new file mode 100644
 2565   2599   
index 0000000..0468d80
 2566         -
-- /dev/null
        2600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2567   2601   
@@ -0,0 +1,12 @@
        2602  +
{
        2603  +
    "credentials": {
        2604  +
        "access_key_id": "AKIDEXAMPLE",
        2605  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2606  +
    },
        2607  +
    "expiration_in_seconds": 3600,
        2608  +
    "normalize": true,
        2609  +
    "region": "us-east-1",
        2610  +
    "service": "service",
        2611  +
    "sign_body": false,
        2612  +
    "timestamp": "2015-08-30T12:36:00Z"
        2613  +
}
              \
 No newline at end of file
 2568   2614   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2569   2615   
similarity index 100%
 2570   2616   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2571   2617   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2572   2618   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2573   2619   
new file mode 100644
 2574   2620   
index 0000000..876a64b
 2575         -
-- /dev/null
        2621  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2576   2622   
@@ -0,0 +1 @@
        2623  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2577   2624   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2578   2625   
similarity index 50%
 2579   2626   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2580   2627   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2581   2628   
index ba1ef40..9d0d993 100644
 2582         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2583   2630   
@@ -1,4 +1,5 @@
 2584   2631   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2585   2632   
Host:example.amazonaws.com
 2586   2633   
X-Amz-Date:20150830T123600Z
 2587         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
        2634  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2635  +
 2588   2636   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2589   2637   
similarity index 100%
 2590   2638   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2591   2639   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2592   2640   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2593   2641   
new file mode 100644
 2594   2642   
index 0000000..a1bac59
 2595         -
-- /dev/null
        2643  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2596   2644   
@@ -0,0 +1,7 @@
        2645  +
GET
        2646  +
/
        2647  +
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2648  +
host:example.amazonaws.com
        2649  +
        2650  +
host
        2651  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2597   2652   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2598   2653   
new file mode 100644
 2599   2654   
index 0000000..41881e9
 2600         -
-- /dev/null
        2655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2601   2656   
@@ -0,0 +1 @@
        2657  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2602   2658   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2603   2659   
new file mode 100644
 2604   2660   
index 0000000..3179076
 2605         -
-- /dev/null
        2661  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2606   2662   
@@ -0,0 +1,3 @@
        2663  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf HTTP/1.1
        2664  +
Host:example.amazonaws.com
        2665  +
 2607   2666   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2608   2667   
new file mode 100644
 2609   2668   
index 0000000..6d675fc
 2610         -
-- /dev/null
        2669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2611   2670   
@@ -0,0 +1,4 @@
        2671  +
AWS4-HMAC-SHA256
        2672  +
20150830T123600Z
        2673  +
20150830/us-east-1/service/aws4_request
        2674  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2612   2675   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2613   2676   
similarity index 100%
 2614   2677   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2615   2678   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2616   2679   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2617   2680   
new file mode 100644
 2618   2681   
index 0000000..0468d80
 2619         -
-- /dev/null
        2682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2620   2683   
@@ -0,0 +1,12 @@
        2684  +
{
        2685  +
    "credentials": {
        2686  +
        "access_key_id": "AKIDEXAMPLE",
        2687  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2688  +
    },
        2689  +
    "expiration_in_seconds": 3600,
        2690  +
    "normalize": true,
        2691  +
    "region": "us-east-1",
        2692  +
    "service": "service",
        2693  +
    "sign_body": false,
        2694  +
    "timestamp": "2015-08-30T12:36:00Z"
        2695  +
}
              \
 No newline at end of file
 2621   2696   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2622   2697   
similarity index 100%
 2623   2698   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.creq
 2624   2699   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2625   2700   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2626   2701   
new file mode 100644
 2627   2702   
index 0000000..87f295f
 2628         -
-- /dev/null
        2703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2629   2704   
@@ -0,0 +1 @@
        2705  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2630   2706   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2631   2707   
new file mode 100644
 2632   2708   
index 0000000..36b86e7
 2633         -
-- /dev/null
        2709  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2634   2710   
@@ -0,0 +1,5 @@
        2711  +
GET / HTTP/1.1
        2712  +
Host:example.amazonaws.com
        2713  +
X-Amz-Date:20150830T123600Z
        2714  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2715  +
 2635   2716   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2636   2717   
similarity index 100%
 2637   2718   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.sts
 2638   2719   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2639   2720   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2640   2721   
new file mode 100644
 2641   2722   
index 0000000..fb2420d
 2642         -
-- /dev/null
        2723  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2643   2724   
@@ -0,0 +1,7 @@
        2725  +
GET
        2726  +
/
        2727  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2728  +
host:example.amazonaws.com
        2729  +
        2730  +
host
        2731  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2644   2732   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2645   2733   
new file mode 100644
 2646   2734   
index 0000000..da5c905
 2647         -
-- /dev/null
        2735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2648   2736   
@@ -0,0 +1 @@
        2737  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2649   2738   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2650   2739   
new file mode 100644
 2651   2740   
index 0000000..eeb7a8f
 2652         -
-- /dev/null
        2741  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2653   2742   
@@ -0,0 +1,3 @@
        2743  +
GET /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d HTTP/1.1
        2744  +
Host:example.amazonaws.com
        2745  +
 2654   2746   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2655   2747   
new file mode 100644
 2656   2748   
index 0000000..d837e67
 2657         -
-- /dev/null
        2749  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2658   2750   
@@ -0,0 +1,4 @@
        2751  +
AWS4-HMAC-SHA256
        2752  +
20150830T123600Z
        2753  +
20150830/us-east-1/service/aws4_request
        2754  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2659   2755   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2660   2756   
similarity index 100%
 2661   2757   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2662   2758   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2663   2759   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2664   2760   
new file mode 100644
 2665   2761   
index 0000000..0468d80
 2666         -
-- /dev/null
        2762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2667   2763   
@@ -0,0 +1,12 @@
        2764  +
{
        2765  +
    "credentials": {
        2766  +
        "access_key_id": "AKIDEXAMPLE",
        2767  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2768  +
    },
        2769  +
    "expiration_in_seconds": 3600,
        2770  +
    "normalize": true,
        2771  +
    "region": "us-east-1",
        2772  +
    "service": "service",
        2773  +
    "sign_body": false,
        2774  +
    "timestamp": "2015-08-30T12:36:00Z"
        2775  +
}
              \
 No newline at end of file
 2668   2776   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2669   2777   
similarity index 100%
 2670   2778   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2671   2779   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2672   2780   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2673   2781   
new file mode 100644
 2674   2782   
index 0000000..19a2cc9
 2675         -
-- /dev/null
        2783  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2676   2784   
@@ -0,0 +1 @@
        2785  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2677   2786   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2678   2787   
new file mode 100644
 2679   2788   
index 0000000..acb13ee
 2680         -
-- /dev/null
        2789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2681   2790   
@@ -0,0 +1,5 @@
        2791  +
GET /?ሴ=bar HTTP/1.1
        2792  +
Host:example.amazonaws.com
        2793  +
X-Amz-Date:20150830T123600Z
        2794  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2795  +
 2682   2796   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2683   2797   
similarity index 100%
 2684   2798   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2685   2799   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2686   2800   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2687   2801   
new file mode 100644
 2688   2802   
index 0000000..92cee62
 2689         -
-- /dev/null
        2803  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2690   2804   
@@ -0,0 +1,7 @@
        2805  +
GET
        2806  +
/
        2807  +
%E1%88%B4=bar&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2808  +
host:example.amazonaws.com
        2809  +
        2810  +
host
        2811  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2691   2812   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2692   2813   
new file mode 100644
 2693   2814   
index 0000000..c9e49de
 2694         -
-- /dev/null
        2815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2695   2816   
@@ -0,0 +1 @@
        2817  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2696   2818   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2697   2819   
new file mode 100644
 2698   2820   
index 0000000..8f4d8d0
 2699         -
-- /dev/null
        2821  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2700   2822   
@@ -0,0 +1,3 @@
        2823  +
GET /?ሴ=bar&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600 HTTP/1.1
        2824  +
Host:example.amazonaws.com
        2825  +
 2701   2826   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2702   2827   
new file mode 100644
 2703   2828   
index 0000000..a6181dc
 2704         -
-- /dev/null
        2829  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2705   2830   
@@ -0,0 +1,4 @@
        2831  +
AWS4-HMAC-SHA256
        2832  +
20150830T123600Z
        2833  +
20150830/us-east-1/service/aws4_request
        2834  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2706   2835   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2707   2836   
similarity index 64%
 2708   2837   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2709   2838   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2710   2839   
index cc2757e..aff333a 100644
 2711         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2840  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2712   2841   
@@ -1,3 +1,2 @@
 2713   2842   
GET /?ሴ=bar HTTP/1.1
 2714   2843   
Host:example.amazonaws.com
 2715         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2716   2844   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2717   2845   
similarity index 99%
 2718   2846   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2719   2847   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2720   2848   
index a457c8a..a334e18 100644
 2721         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
        2849  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2722   2850   
@@ -1,13 +1,13 @@
 2723   2851   
{
 2724   2852   
    "credentials": {
 2725   2853   
        "access_key_id": "AKIDEXAMPLE",
 2726   2854   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
 2727   2855   
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
 2728   2856   
    },
 2729   2857   
    "expiration_in_seconds": 3600,
 2730   2858   
    "normalize": true,
 2731   2859   
    "region": "us-east-1",
 2732   2860   
    "service": "service",
 2733   2861   
    "sign_body": false,
 2734   2862   
    "timestamp": "2015-08-30T12:36:00Z"
 2735         -
}
        2863  +
}
              \
 No newline at end of file
 2736   2864   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2737   2865   
new file mode 100644
 2738   2866   
index 0000000..ccacdeb
 2739         -
-- /dev/null
        2867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2740   2868   
@@ -0,0 +1,9 @@
        2869  +
GET
        2870  +
/
        2871  +
        2872  +
host:example.amazonaws.com
        2873  +
x-amz-date:20150830T123600Z
        2874  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2875  +
        2876  +
host;x-amz-date;x-amz-security-token
        2877  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2741   2878   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2742   2879   
new file mode 100644
 2743   2880   
index 0000000..083e30d
 2744         -
-- /dev/null
        2881  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2745   2882   
@@ -0,0 +1 @@
        2883  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2746   2884   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2747   2885   
new file mode 100644
 2748   2886   
index 0000000..5287932
 2749         -
-- /dev/null
        2887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2750   2888   
@@ -0,0 +1,6 @@
        2889  +
GET / HTTP/1.1
        2890  +
Host:example.amazonaws.com
        2891  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2892  +
X-Amz-Date:20150830T123600Z
        2893  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2894  +
 2751   2895   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2752   2896   
new file mode 100644
 2753   2897   
index 0000000..742b880
 2754         -
-- /dev/null
        2898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2755   2899   
@@ -0,0 +1,4 @@
        2900  +
AWS4-HMAC-SHA256
        2901  +
20150830T123600Z
        2902  +
20150830/us-east-1/service/aws4_request
        2903  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2756   2904   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2757   2905   
new file mode 100644
 2758   2906   
index 0000000..5e75179
 2759         -
-- /dev/null
        2907  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2760   2908   
@@ -0,0 +1,7 @@
        2909  +
GET
        2910  +
/
        2911  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Security-Token=6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267&X-Amz-SignedHeaders=host
        2912  +
host:example.amazonaws.com
        2913  +
        2914  +
host
        2915  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2761   2916   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2762   2917   
new file mode 100644
 2763   2918   
index 0000000..50b947f
 2764         -
-- /dev/null
        2919  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2765   2920   
@@ -0,0 +1 @@
        2921  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2766   2922   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2767   2923   
new file mode 100644
 2768   2924   
index 0000000..aee910b
 2769         -
-- /dev/null
        2925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2770   2926   
@@ -0,0 +1,3 @@
        2927  +
GET /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Security-Token=6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267&X-Amz-Signature=7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c HTTP/1.1
        2928  +
Host:example.amazonaws.com
        2929  +
 2771   2930   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2772   2931   
new file mode 100644
 2773   2932   
index 0000000..04a6c17
 2774         -
-- /dev/null
        2933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2775   2934   
@@ -0,0 +1,4 @@
        2935  +
AWS4-HMAC-SHA256
        2936  +
20150830T123600Z
        2937  +
20150830/us-east-1/service/aws4_request
        2938  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2776   2939   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2777   2940   
similarity index 100%
 2778   2941   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2779   2942   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2780   2943   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2781   2944   
new file mode 100644
 2782   2945   
index 0000000..0468d80
 2783         -
-- /dev/null
        2946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2784   2947   
@@ -0,0 +1,12 @@
        2948  +
{
        2949  +
    "credentials": {
        2950  +
        "access_key_id": "AKIDEXAMPLE",
        2951  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2952  +
    },
        2953  +
    "expiration_in_seconds": 3600,
        2954  +
    "normalize": true,
        2955  +
    "region": "us-east-1",
        2956  +
    "service": "service",
        2957  +
    "sign_body": false,
        2958  +
    "timestamp": "2015-08-30T12:36:00Z"
        2959  +
}
              \
 No newline at end of file
 2785   2960   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2786   2961   
similarity index 100%
 2787   2962   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2788   2963   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2789   2964   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2790   2965   
new file mode 100644
 2791   2966   
index 0000000..87f295f
 2792         -
-- /dev/null
        2967  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2793   2968   
@@ -0,0 +1 @@
        2969  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2794   2970   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2795   2971   
new file mode 100644
 2796   2972   
index 0000000..36b86e7
 2797         -
-- /dev/null
        2973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2798   2974   
@@ -0,0 +1,5 @@
        2975  +
GET / HTTP/1.1
        2976  +
Host:example.amazonaws.com
        2977  +
X-Amz-Date:20150830T123600Z
        2978  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2979  +
 2799   2980   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2800   2981   
similarity index 100%
 2801   2982   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2802   2983   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2803   2984   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2804   2985   
new file mode 100644
 2805   2986   
index 0000000..fb2420d
 2806         -
-- /dev/null
        2987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2807   2988   
@@ -0,0 +1,7 @@
        2989  +
GET
        2990  +
/
        2991  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2992  +
host:example.amazonaws.com
        2993  +
        2994  +
host
        2995  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2808   2996   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2809   2997   
new file mode 100644
 2810   2998   
index 0000000..da5c905
 2811         -
-- /dev/null
        2999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2812   3000   
@@ -0,0 +1 @@
        3001  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2813   3002   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2814   3003   
new file mode 100644
 2815   3004   
index 0000000..eeb7a8f
 2816         -
-- /dev/null
        3005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2817   3006   
@@ -0,0 +1,3 @@
        3007  +
GET /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d HTTP/1.1
        3008  +
Host:example.amazonaws.com
        3009  +
 2818   3010   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2819   3011   
new file mode 100644
 2820   3012   
index 0000000..d837e67
 2821         -
-- /dev/null
        3013  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2822   3014   
@@ -0,0 +1,4 @@
        3015  +
AWS4-HMAC-SHA256
        3016  +
20150830T123600Z
        3017  +
20150830/us-east-1/service/aws4_request
        3018  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2823   3019   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2824   3020   
similarity index 100%
 2825   3021   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2826   3022   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2827   3023   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2828   3024   
new file mode 100644
 2829   3025   
index 0000000..0468d80
 2830         -
-- /dev/null
        3026  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2831   3027   
@@ -0,0 +1,12 @@
        3028  +
{
        3029  +
    "credentials": {
        3030  +
        "access_key_id": "AKIDEXAMPLE",
        3031  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3032  +
    },
        3033  +
    "expiration_in_seconds": 3600,
        3034  +
    "normalize": true,
        3035  +
    "region": "us-east-1",
        3036  +
    "service": "service",
        3037  +
    "sign_body": false,
        3038  +
    "timestamp": "2015-08-30T12:36:00Z"
        3039  +
}
              \
 No newline at end of file
 2832   3040   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2833   3041   
similarity index 100%
 2834   3042   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2835   3043   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2836   3044   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2837   3045   
new file mode 100644
 2838   3046   
index 0000000..629487f
 2839         -
-- /dev/null
        3047  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2840   3048   
@@ -0,0 +1 @@
        3049  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2841   3050   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2842   3051   
new file mode 100644
 2843   3052   
index 0000000..0d99b1c
 2844         -
-- /dev/null
        3053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2845   3054   
@@ -0,0 +1,5 @@
        3055  +
POST / HTTP/1.1
        3056  +
Host:example.amazonaws.com
        3057  +
X-Amz-Date:20150830T123600Z
        3058  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3059  +
 2846   3060   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2847   3061   
similarity index 100%
 2848   3062   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2849   3063   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2850   3064   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2851   3065   
new file mode 100644
 2852   3066   
index 0000000..d3341e7
 2853         -
-- /dev/null
        3067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2854   3068   
@@ -0,0 +1,7 @@
        3069  +
POST
        3070  +
/
        3071  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        3072  +
host:example.amazonaws.com
        3073  +
        3074  +
host
        3075  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2855   3076   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2856   3077   
new file mode 100644
 2857   3078   
index 0000000..79f7e0d
 2858         -
-- /dev/null
        3079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2859   3080   
@@ -0,0 +1 @@
        3081  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2860   3082   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2861   3083   
new file mode 100644
 2862   3084   
index 0000000..94f1b21
 2863         -
-- /dev/null
        3085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2864   3086   
@@ -0,0 +1,3 @@
        3087  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b HTTP/1.1
        3088  +
Host:example.amazonaws.com
        3089  +
 2865   3090   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2866   3091   
new file mode 100644
 2867   3092   
index 0000000..e8f335b
 2868         -
-- /dev/null
        3093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2869   3094   
@@ -0,0 +1,4 @@
        3095  +
AWS4-HMAC-SHA256
        3096  +
20150830T123600Z
        3097  +
20150830/us-east-1/service/aws4_request
        3098  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2870   3099   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2871   3100   
similarity index 100%
 2872   3101   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2873   3102   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2874   3103   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2875   3104   
new file mode 100644
 2876   3105   
index 0000000..0468d80
 2877         -
-- /dev/null
        3106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2878   3107   
@@ -0,0 +1,12 @@
        3108  +
{
        3109  +
    "credentials": {
        3110  +
        "access_key_id": "AKIDEXAMPLE",
        3111  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3112  +
    },
        3113  +
    "expiration_in_seconds": 3600,
        3114  +
    "normalize": true,
        3115  +
    "region": "us-east-1",
        3116  +
    "service": "service",
        3117  +
    "sign_body": false,
        3118  +
    "timestamp": "2015-08-30T12:36:00Z"
        3119  +
}
              \
 No newline at end of file
 2879   3120   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2880   3121   
similarity index 100%
 2881   3122   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2882   3123   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2883   3124   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2884   3125   
new file mode 100644
 2885   3126   
index 0000000..e4e6428
 2886         -
-- /dev/null
        3127  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2887   3128   
@@ -0,0 +1 @@
        3129  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2888   3130   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2889   3131   
new file mode 100644
 2890   3132   
index 0000000..e3778f5
 2891         -
-- /dev/null
        3133  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2892   3134   
@@ -0,0 +1,6 @@
        3135  +
POST / HTTP/1.1
        3136  +
Host:example.amazonaws.com
        3137  +
My-Header1:value1
        3138  +
X-Amz-Date:20150830T123600Z
        3139  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        3140  +
 2893   3141   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2894   3142   
similarity index 100%
 2895   3143   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2896   3144   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2897   3145   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2898   3146   
new file mode 100644
 2899   3147   
index 0000000..bd7c937
 2900         -
-- /dev/null
        3148  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2901   3149   
@@ -0,0 +1,8 @@
        3150  +
POST
        3151  +
/
        3152  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host%3Bmy-header1
        3153  +
host:example.amazonaws.com
        3154  +
my-header1:value1
        3155  +
        3156  +
host;my-header1
        3157  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2902   3158   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2903   3159   
new file mode 100644
 2904   3160   
index 0000000..0416f13
 2905         -
-- /dev/null
        3161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2906   3162   
@@ -0,0 +1 @@
        3163  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2907   3164   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2908   3165   
new file mode 100644
 2909   3166   
index 0000000..5e6522f
 2910         -
-- /dev/null
        3167  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2911   3168   
@@ -0,0 +1,4 @@
        3169  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Signature=c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7 HTTP/1.1
        3170  +
Host:example.amazonaws.com
        3171  +
My-Header1:value1
        3172  +
 2912   3173   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2913   3174   
new file mode 100644
 2914   3175   
index 0000000..d06d1df
 2915         -
-- /dev/null
        3176  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2916   3177   
@@ -0,0 +1,4 @@
        3178  +
AWS4-HMAC-SHA256
        3179  +
20150830T123600Z
        3180  +
20150830/us-east-1/service/aws4_request
        3181  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2917   3182   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2918   3183   
similarity index 100%
 2919   3184   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2920   3185   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2921   3186   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2922   3187   
new file mode 100644
 2923   3188   
index 0000000..0468d80
 2924         -
-- /dev/null
        3189  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2925   3190   
@@ -0,0 +1,12 @@
        3191  +
{
        3192  +
    "credentials": {
        3193  +
        "access_key_id": "AKIDEXAMPLE",
        3194  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3195  +
    },
        3196  +
    "expiration_in_seconds": 3600,
        3197  +
    "normalize": true,
        3198  +
    "region": "us-east-1",
        3199  +
    "service": "service",
        3200  +
    "sign_body": false,
        3201  +
    "timestamp": "2015-08-30T12:36:00Z"
        3202  +
}
              \
 No newline at end of file
 2926   3203   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2927   3204   
similarity index 100%
 2928   3205   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2929   3206   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2930   3207   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2931   3208   
new file mode 100644
 2932   3209   
index 0000000..bb3809c
 2933         -
-- /dev/null
        3210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2934   3211   
@@ -0,0 +1 @@
        3212  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2935   3213   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2936   3214   
new file mode 100644
 2937   3215   
index 0000000..10f6761
 2938         -
-- /dev/null
        3216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2939   3217   
@@ -0,0 +1,6 @@
        3218  +
POST / HTTP/1.1
        3219  +
Host:example.amazonaws.com
        3220  +
My-Header1:VALUE1
        3221  +
X-Amz-Date:20150830T123600Z
        3222  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        3223  +
 2940   3224   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2941   3225   
similarity index 100%
 2942   3226   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2943   3227   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2944   3228   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2945   3229   
new file mode 100644
 2946   3230   
index 0000000..f84856f
 2947         -
-- /dev/null
        3231  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2948   3232   
@@ -0,0 +1,8 @@
        3233  +
POST
        3234  +
/
        3235  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host%3Bmy-header1
        3236  +
host:example.amazonaws.com
        3237  +
my-header1:VALUE1
        3238  +
        3239  +
host;my-header1
        3240  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2949   3241   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2950   3242   
new file mode 100644
 2951   3243   
index 0000000..a9d3cac
 2952         -
-- /dev/null
        3244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2953   3245   
@@ -0,0 +1 @@
        3246  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2954   3247   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2955   3248   
new file mode 100644
 2956   3249   
index 0000000..cf96c7c
 2957         -
-- /dev/null
        3250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2958   3251   
@@ -0,0 +1,4 @@
        3252  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Signature=0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed HTTP/1.1
        3253  +
Host:example.amazonaws.com
        3254  +
My-Header1:VALUE1
        3255  +
 2959   3256   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2960   3257   
new file mode 100644
 2961   3258   
index 0000000..47ef566
 2962         -
-- /dev/null
        3259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2963   3260   
@@ -0,0 +1,4 @@
        3261  +
AWS4-HMAC-SHA256
        3262  +
20150830T123600Z
        3263  +
20150830/us-east-1/service/aws4_request
        3264  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2964   3265   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2965   3266   
similarity index 100%
 2966   3267   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2967   3268   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2968   3269   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2969   3270   
similarity index 100%
 2970   3271   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2971   3272   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2972   3273   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2973   3274   
similarity index 100%
 2974   3275   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.creq
 2975   3276   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2976   3277   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2977   3278   
new file mode 100644
 2978   3279   
index 0000000..629487f
 2979         -
-- /dev/null
        3280  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2980   3281   
@@ -0,0 +1 @@
        3282  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2981   3283   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2982   3284   
similarity index 67%
 2983   3285   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.sreq
 2984   3286   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2985   3287   
index 291ed07..f96ff9e 100644
 2986         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.sreq
        3288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2987   3289   
@@ -1,5 +1,6 @@
 2988   3290   
POST / HTTP/1.1
 2989   3291   
Host:example.amazonaws.com
 2990         -
X-Amz-Date:20150830T123600Z
 2991   3292   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2992         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
        3293  +
X-Amz-Date:20150830T123600Z
        3294  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3295  +
 2993   3296   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2994   3297   
similarity index 100%
 2995   3298   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.sts
 2996   3299   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2997   3300   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2998   3301   
new file mode 100644
 2999   3302   
index 0000000..d3341e7
 3000         -
-- /dev/null
        3303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 3001   3304   
@@ -0,0 +1,7 @@
        3305  +
POST
        3306  +
/
        3307  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        3308  +
host:example.amazonaws.com
        3309  +
        3310  +
host
        3311  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3002   3312   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 3003   3313   
new file mode 100644
 3004   3314   
index 0000000..79f7e0d
 3005         -
-- /dev/null
        3315  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 3006   3316   
@@ -0,0 +1 @@
        3317  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 3007   3318   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 3008   3319   
new file mode 100644
 3009   3320   
index 0000000..4983268
 3010         -
-- /dev/null
        3321  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 3011   3322   
@@ -0,0 +1,3 @@
        3323  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-Signature=2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b HTTP/1.1
        3324  +
Host:example.amazonaws.com
        3325  +
 3012   3326   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 3013   3327   
new file mode 100644
 3014   3328   
index 0000000..e8f335b
 3015         -
-- /dev/null
        3329  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 3016   3330   
@@ -0,0 +1,4 @@
        3331  +
AWS4-HMAC-SHA256
        3332  +
20150830T123600Z
        3333  +
20150830/us-east-1/service/aws4_request
        3334  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 3017   3335   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 3018   3336   
similarity index 100%
 3019   3337   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 3020   3338   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 3021   3339   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 3022   3340   
similarity index 100%
 3023   3341   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 3024   3342   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 3025   3343   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 3026   3344   
similarity index 100%
 3027   3345   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.creq
 3028   3346   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 3029   3347   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 3030   3348   
new file mode 100644
 3031   3349   
index 0000000..85a7c29
 3032         -
-- /dev/null
        3350  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 3033   3351   
@@ -0,0 +1 @@
        3352  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 3034   3353   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 3035   3354   
similarity index 65%
 3036   3355   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.sreq
 3037   3356   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 3038   3357   
index 37b2f04..4d0b143 100644
 3039         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.sreq
        3358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 3040   3359   
@@ -1,5 +1,6 @@
 3041   3360   
POST / HTTP/1.1
 3042   3361   
Host:example.amazonaws.com
 3043         -
X-Amz-Date:20150830T123600Z
 3044   3362   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 3045         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
        3363  +
X-Amz-Date:20150830T123600Z
        3364  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3365  +
 3046   3366   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 3047   3367   
similarity index 100%
 3048   3368   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.sts
 3049   3369   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 3050   3370   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 3051   3371   
new file mode 100644
 3052   3372   
index 0000000..57a7bc3
 3053         -
-- /dev/null
        3373  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 3054   3374   
@@ -0,0 +1,7 @@
        3375  +
POST
        3376  +
/
        3377  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-SignedHeaders=host
        3378  +
host:example.amazonaws.com
        3379  +
        3380  +
host
        3381  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3055   3382   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 3056   3383   
new file mode 100644
 3057   3384   
index 0000000..eb905d2
 3058         -
-- /dev/null
        3385  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 3059   3386   
@@ -0,0 +1 @@
        3387  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 3060   3388   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 3061   3389   
new file mode 100644
 3062   3390   
index 0000000..1d80ec0
 3063         -
-- /dev/null
        3391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 3064   3392   
@@ -0,0 +1,3 @@
        3393  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-Signature=46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c HTTP/1.1
        3394  +
Host:example.amazonaws.com
        3395  +
 3065   3396   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 3066   3397   
new file mode 100644
 3067   3398   
index 0000000..bd0239a
 3068         -
-- /dev/null
        3399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 3069   3400   
@@ -0,0 +1,4 @@
        3401  +
AWS4-HMAC-SHA256
        3402  +
20150830T123600Z
        3403  +
20150830/us-east-1/service/aws4_request
        3404  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 3070   3405   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 3071   3406   
similarity index 100%
 3072   3407   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 3073   3408   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 3074   3409   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 3075   3410   
new file mode 100644
 3076   3411   
index 0000000..0468d80
 3077         -
-- /dev/null
        3412  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 3078   3413   
@@ -0,0 +1,12 @@
        3414  +
{
        3415  +
    "credentials": {
        3416  +
        "access_key_id": "AKIDEXAMPLE",
        3417  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3418  +
    },
        3419  +
    "expiration_in_seconds": 3600,
        3420  +
    "normalize": true,
        3421  +
    "region": "us-east-1",
        3422  +
    "service": "service",
        3423  +
    "sign_body": false,
        3424  +
    "timestamp": "2015-08-30T12:36:00Z"
        3425  +
}
              \
 No newline at end of file
 3079   3426   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 3080   3427   
similarity index 100%
 3081   3428   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.creq
 3082   3429   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 3083   3430   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 3084   3431   
new file mode 100644
 3085   3432   
index 0000000..80ed433
 3086         -
-- /dev/null
        3433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 3087   3434   
@@ -0,0 +1 @@
        3435  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 3088   3436   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 3089   3437   
new file mode 100644
 3090   3438   
index 0000000..4e614f8
 3091         -
-- /dev/null
        3439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 3092   3440   
@@ -0,0 +1,5 @@
        3441  +
POST /?Param1=value1 HTTP/1.1
        3442  +
Host:example.amazonaws.com
        3443  +
X-Amz-Date:20150830T123600Z
        3444  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3445  +
 3093   3446   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-string-to-sign.txt
 3094   3447   
similarity index 100%
 3095   3448   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.sts
 3096   3449   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-string-to-sign.txt
 3097   3450   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 3098   3451   
new file mode 100644
 3099   3452   
index 0000000..be66403
 3100         -
-- /dev/null
        3453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 3101   3454   
@@ -0,0 +1,7 @@
        3455  +
POST
        3456  +
/
        3457  +
Param1=value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        3458  +
host:example.amazonaws.com
        3459  +
        3460  +
host
        3461  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3102   3462   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 3103   3463   
new file mode 100644
 3104   3464   
index 0000000..20fd32b
 3105         -
-- /dev/null
        3465  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 3106   3466   
@@ -0,0 +1 @@
        3467  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 3107   3468   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 3108   3469   
new file mode 100644
 3109   3470   
index 0000000..d1148d0
 3110         -
-- /dev/null
        3471  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 3111   3472   
@@ -0,0 +1,3 @@
        3473  +
POST /?Param1=value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682 HTTP/1.1
        3474  +
Host:example.amazonaws.com
        3475  +
 3112   3476   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 3113   3477   
new file mode 100644
 3114   3478   
index 0000000..1a77103
 3115         -
-- /dev/null
        3479  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 3116   3480   
@@ -0,0 +1,4 @@
        3481  +
AWS4-HMAC-SHA256
        3482  +
20150830T123600Z
        3483  +
20150830/us-east-1/service/aws4_request
        3484  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 3117   3485   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 3118   3486   
similarity index 100%
 3119   3487   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 3120   3488   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 3121   3489   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 3122   3490   
new file mode 100644
 3123   3491   
index 0000000..0468d80
 3124         -
-- /dev/null
        3492  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 3125   3493   
@@ -0,0 +1,12 @@
        3494  +
{
        3495  +
    "credentials": {
        3496  +
        "access_key_id": "AKIDEXAMPLE",
        3497  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3498  +
    },
        3499  +
    "expiration_in_seconds": 3600,
        3500  +
    "normalize": true,
        3501  +
    "region": "us-east-1",
        3502  +
    "service": "service",
        3503  +
    "sign_body": false,
        3504  +
    "timestamp": "2015-08-30T12:36:00Z"
        3505  +
}
              \
 No newline at end of file
 3126   3506   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 3127   3507   
similarity index 100%
 3128   3508   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 3129   3509   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 3130   3510   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 3131   3511   
new file mode 100644
 3132   3512   
index 0000000..80ed433
 3133         -
-- /dev/null
        3513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 3134   3514   
@@ -0,0 +1 @@
        3515  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 3135   3516   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 3136   3517   
new file mode 100644
 3137   3518   
index 0000000..4e614f8
 3138         -
-- /dev/null
        3519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 3139   3520   
@@ -0,0 +1,5 @@
        3521  +
POST /?Param1=value1 HTTP/1.1
        3522  +
Host:example.amazonaws.com
        3523  +
X-Amz-Date:20150830T123600Z
        3524  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3525  +
 3140   3526   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 3141   3527   
similarity index 100%
 3142   3528   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 3143   3529   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 3144   3530   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 3145   3531   
new file mode 100644
 3146   3532   
index 0000000..be66403
 3147         -
-- /dev/null
        3533  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 3148   3534   
@@ -0,0 +1,7 @@
        3535  +
POST
        3536  +
/
        3537  +
Param1=value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        3538  +
host:example.amazonaws.com
        3539  +
        3540  +
host
        3541  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3149   3542   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 3150   3543   
new file mode 100644
 3151   3544   
index 0000000..20fd32b
 3152         -
-- /dev/null
        3545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 3153   3546   
@@ -0,0 +1 @@
        3547  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 3154   3548   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 3155   3549   
new file mode 100644
 3156   3550   
index 0000000..d1148d0
 3157         -
-- /dev/null
        3551  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 3158   3552   
@@ -0,0 +1,3 @@
        3553  +
POST /?Param1=value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682 HTTP/1.1
        3554  +
Host:example.amazonaws.com
        3555  +
 3159   3556   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 3160   3557   
new file mode 100644
 3161   3558   
index 0000000..1a77103
 3162         -
-- /dev/null
        3559  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 3163   3560   
@@ -0,0 +1,4 @@
        3561  +
AWS4-HMAC-SHA256
        3562  +
20150830T123600Z
        3563  +
20150830/us-east-1/service/aws4_request
        3564  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 3164   3565   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 3165   3566   
similarity index 100%
 3166   3567   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 3167   3568   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 3168   3569   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 3169   3570   
new file mode 100644
 3170   3571   
index 0000000..0468d80
 3171         -
-- /dev/null
        3572  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 3172   3573   
@@ -0,0 +1,12 @@
        3574  +
{
        3575  +
    "credentials": {
        3576  +
        "access_key_id": "AKIDEXAMPLE",
        3577  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3578  +
    },
        3579  +
    "expiration_in_seconds": 3600,
        3580  +
    "normalize": true,
        3581  +
    "region": "us-east-1",
        3582  +
    "service": "service",
        3583  +
    "sign_body": false,
        3584  +
    "timestamp": "2015-08-30T12:36:00Z"
        3585  +
}
              \
 No newline at end of file
 3173   3586   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 3174   3587   
similarity index 100%
 3175   3588   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 3176   3589   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 3177   3590   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 3178   3591   
new file mode 100644
 3179   3592   
index 0000000..629487f
 3180         -
-- /dev/null
        3593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 3181   3594   
@@ -0,0 +1 @@
        3595  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 3182   3596   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 3183   3597   
new file mode 100644
 3184   3598   
index 0000000..0d99b1c
 3185         -
-- /dev/null
        3599  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 3186   3600   
@@ -0,0 +1,5 @@
        3601  +
POST / HTTP/1.1
        3602  +
Host:example.amazonaws.com
        3603  +
X-Amz-Date:20150830T123600Z
        3604  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3605  +
 3187   3606   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 3188   3607   
similarity index 100%
 3189   3608   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 3190   3609   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 3191   3610   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 3192   3611   
new file mode 100644
 3193   3612   
index 0000000..d3341e7
 3194         -
-- /dev/null
        3613  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 3195   3614   
@@ -0,0 +1,7 @@
        3615  +
POST
        3616  +
/
        3617  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        3618  +
host:example.amazonaws.com
        3619  +
        3620  +
host
        3621  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3196   3622   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 3197   3623   
new file mode 100644
 3198   3624   
index 0000000..79f7e0d
 3199         -
-- /dev/null
        3625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 3200   3626   
@@ -0,0 +1 @@
        3627  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 3201   3628   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 3202   3629   
new file mode 100644
 3203   3630   
index 0000000..94f1b21
 3204         -
-- /dev/null
        3631  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 3205   3632   
@@ -0,0 +1,3 @@
        3633  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b HTTP/1.1
        3634  +
Host:example.amazonaws.com
        3635  +
 3206   3636   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 3207   3637   
new file mode 100644
 3208   3638   
index 0000000..e8f335b
 3209         -
-- /dev/null
        3639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 3210   3640   
@@ -0,0 +1,4 @@
        3641  +
AWS4-HMAC-SHA256
        3642  +
20150830T123600Z
        3643  +
20150830/us-east-1/service/aws4_request
        3644  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 3211   3645   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 3212   3646   
similarity index 100%
 3213   3647   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 3214   3648   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 3215   3649   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 3216   3650   
similarity index 99%
 3217   3651   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 3218   3652   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 3219   3653   
index fc4bce6..0db1df1 100644
 3220         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
        3654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 3221   3655   
@@ -1,12 +1,12 @@
 3222   3656   
{
 3223   3657   
    "credentials": {
 3224   3658   
        "access_key_id": "AKIDEXAMPLE",
 3225   3659   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 3226   3660   
    },
 3227   3661   
    "expiration_in_seconds": 3600,
 3228   3662   
    "normalize": true,
 3229   3663   
    "region": "us-east-1",
 3230   3664   
    "service": "service",
 3231   3665   
    "sign_body": true,
 3232   3666   
    "timestamp": "2015-08-30T12:36:00Z"
 3233         -
}
        3667  +
}
              \
 No newline at end of file
 3234   3668   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 3235   3669   
new file mode 100644
 3236   3670   
index 0000000..c218fdf
 3237         -
-- /dev/null
        3671  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 3238   3672   
@@ -0,0 +1,11 @@
        3673  +
POST
        3674  +
/
        3675  +
        3676  +
content-length:13
        3677  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3678  +
host:example.amazonaws.com
        3679  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3680  +
x-amz-date:20150830T123600Z
        3681  +
        3682  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3683  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3239   3684   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 3240   3685   
new file mode 100644
 3241   3686   
index 0000000..836aa8b
 3242         -
-- /dev/null
        3687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 3243   3688   
@@ -0,0 +1 @@
        3689  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 3244   3690   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 3245   3691   
new file mode 100644
 3246   3692   
index 0000000..9262d53
 3247         -
-- /dev/null
        3693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 3248   3694   
@@ -0,0 +1,9 @@
        3695  +
POST / HTTP/1.1
        3696  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3697  +
Host:example.amazonaws.com
        3698  +
Content-Length:13
        3699  +
X-Amz-Date:20150830T123600Z
        3700  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3701  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-content-sha256;x-amz-date, Signature=328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
        3702  +
        3703  +
Param1=value1
              \
 No newline at end of file
 3249   3704   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt
 3250   3705   
new file mode 100644
 3251   3706   
index 0000000..ddbdccc
 3252         -
-- /dev/null
        3707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt
 3253   3708   
@@ -0,0 +1,4 @@
        3709  +
AWS4-HMAC-SHA256
        3710  +
20150830T123600Z
        3711  +
20150830/us-east-1/service/aws4_request
        3712  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 3254   3713   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 3255   3714   
new file mode 100644
 3256   3715   
index 0000000..596a579
 3257         -
-- /dev/null
        3716  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 3258   3717   
@@ -0,0 +1,9 @@
        3718  +
POST
        3719  +
/
        3720  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost
        3721  +
content-length:13
        3722  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3723  +
host:example.amazonaws.com
        3724  +
        3725  +
content-length;content-type;host
        3726  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3259   3727   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 3260   3728   
new file mode 100644
 3261   3729   
index 0000000..bc85cd8
 3262         -
-- /dev/null
        3730  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 3263   3731   
@@ -0,0 +1 @@
        3732  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 3264   3733   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 3265   3734   
new file mode 100644
 3266   3735   
index 0000000..16b59e5
 3267         -
-- /dev/null
        3736  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 3268   3737   
@@ -0,0 +1,6 @@
        3738  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost&X-Amz-Expires=3600&X-Amz-Signature=0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d HTTP/1.1
        3739  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3740  +
Host:example.amazonaws.com
        3741  +
Content-Length:13
        3742  +
        3743  +
Param1=value1
              \
 No newline at end of file
 3269   3744   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt
 3270   3745   
new file mode 100644
 3271   3746   
index 0000000..50074af
 3272         -
-- /dev/null
        3747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt
 3273   3748   
@@ -0,0 +1,4 @@
        3749  +
AWS4-HMAC-SHA256
        3750  +
20150830T123600Z
        3751  +
20150830/us-east-1/service/aws4_request
        3752  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 3274   3753   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3275   3754   
similarity index 89%
 3276   3755   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 3277   3756   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3278   3757   
index b711c25..8289eaa 100644
 3279         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
        3758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3280   3759   
@@ -1,6 +1,6 @@
 3281   3760   
POST / HTTP/1.1
 3282   3761   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 3283   3762   
Host:example.amazonaws.com
 3284   3763   
Content-Length:13
 3285   3764   
 3286         -
Param1=value1
        3765  +
Param1=value1
              \
 No newline at end of file
 3287   3766   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3288   3767   
similarity index 99%
 3289   3768   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 3290   3769   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3291   3770   
index fc4bce6..0db1df1 100644
 3292         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
        3771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3293   3772   
@@ -1,12 +1,12 @@
 3294   3773   
{
 3295   3774   
    "credentials": {
 3296   3775   
        "access_key_id": "AKIDEXAMPLE",
 3297   3776   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 3298   3777   
    },
 3299   3778   
    "expiration_in_seconds": 3600,
 3300   3779   
    "normalize": true,
 3301   3780   
    "region": "us-east-1",
 3302   3781   
    "service": "service",
 3303   3782   
    "sign_body": true,
 3304   3783   
    "timestamp": "2015-08-30T12:36:00Z"
 3305         -
}
        3784  +
}
              \
 No newline at end of file
 3306   3785   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 3307   3786   
new file mode 100644
 3308   3787   
index 0000000..4d116a5
 3309         -
-- /dev/null
        3788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 3310   3789   
@@ -0,0 +1,11 @@
        3790  +
POST
        3791  +
/
        3792  +
        3793  +
content-length:13
        3794  +
content-type:application/x-www-form-urlencoded
        3795  +
host:example.amazonaws.com
        3796  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3797  +
x-amz-date:20150830T123600Z
        3798  +
        3799  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3800  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3311   3801   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 3312   3802   
new file mode 100644
 3313   3803   
index 0000000..0d2ac37
 3314         -
-- /dev/null
        3804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 3315   3805   
@@ -0,0 +1 @@
        3806  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 3316   3807   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 3317   3808   
new file mode 100644
 3318   3809   
index 0000000..bd5e49c
 3319         -
-- /dev/null
        3810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 3320   3811   
@@ -0,0 +1,9 @@
        3812  +
POST / HTTP/1.1
        3813  +
Content-Type:application/x-www-form-urlencoded
        3814  +
Host:example.amazonaws.com
        3815  +
Content-Length:13
        3816  +
X-Amz-Date:20150830T123600Z
        3817  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3818  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-content-sha256;x-amz-date, Signature=d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
        3819  +
        3820  +
Param1=value1
              \
 No newline at end of file
 3321   3821   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 3322   3822   
new file mode 100644
 3323   3823   
index 0000000..f1c599c
 3324         -
-- /dev/null
        3824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 3325   3825   
@@ -0,0 +1,4 @@
        3826  +
AWS4-HMAC-SHA256
        3827  +
20150830T123600Z
        3828  +
20150830/us-east-1/service/aws4_request
        3829  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 3326   3830   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 3327   3831   
new file mode 100644
 3328   3832   
index 0000000..1fc1bb7
 3329         -
-- /dev/null
        3833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 3330   3834   
@@ -0,0 +1,9 @@
        3835  +
POST
        3836  +
/
        3837  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost
        3838  +
content-length:13
        3839  +
content-type:application/x-www-form-urlencoded
        3840  +
host:example.amazonaws.com
        3841  +
        3842  +
content-length;content-type;host
        3843  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3331   3844   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 3332   3845   
new file mode 100644
 3333   3846   
index 0000000..98c91b3
 3334         -
-- /dev/null
        3847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 3335   3848   
@@ -0,0 +1 @@
        3849  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 3336   3850   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 3337   3851   
new file mode 100644
 3338   3852   
index 0000000..055cd7a
 3339         -
-- /dev/null
        3853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 3340   3854   
@@ -0,0 +1,6 @@
        3855  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost&X-Amz-Expires=3600&X-Amz-Signature=89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9 HTTP/1.1
        3856  +
Content-Type:application/x-www-form-urlencoded
        3857  +
Host:example.amazonaws.com
        3858  +
Content-Length:13
        3859  +
        3860  +
Param1=value1
              \
 No newline at end of file
 3341   3861   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 3342   3862   
new file mode 100644
 3343   3863   
index 0000000..db7fc27
 3344         -
-- /dev/null
        3864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 3345   3865   
@@ -0,0 +1,4 @@
        3866  +
AWS4-HMAC-SHA256
        3867  +
20150830T123600Z
        3868  +
20150830/us-east-1/service/aws4_request
        3869  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 3346   3870   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3347   3871   
similarity index 88%
 3348   3872   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 3349   3873   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3350   3874   
index 0091102..760b2d3 100644
 3351         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
        3875  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3352   3876   
@@ -1,6 +1,6 @@
 3353   3877   
POST / HTTP/1.1
 3354   3878   
Content-Type:application/x-www-form-urlencoded
 3355   3879   
Host:example.amazonaws.com
 3356   3880   
Content-Length:13
 3357   3881   
 3358         -
Param1=value1
        3882  +
Param1=value1
              \
 No newline at end of file
 3359   3883   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 3360   3884   
new file mode 100644
 3361   3885   
index 0000000..0468d80
 3362         -
-- /dev/null
        3886  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 3363   3887   
@@ -0,0 +1,12 @@
        3888  +
{
        3889  +
    "credentials": {
        3890  +
        "access_key_id": "AKIDEXAMPLE",
        3891  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3892  +
    },
        3893  +
    "expiration_in_seconds": 3600,
        3894  +
    "normalize": true,
        3895  +
    "region": "us-east-1",
        3896  +
    "service": "service",
        3897  +
    "sign_body": false,
        3898  +
    "timestamp": "2015-08-30T12:36:00Z"
        3899  +
}
              \
 No newline at end of file
 3364   3900   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3365   3901   
similarity index 99%
 3366   3902   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 3367   3903   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3368   3904   
index ccb5f43..1bc448e 100644
 3369         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
        3905  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3370   3906   
@@ -1,10 +1,10 @@
 3371   3907   
GET
 3372   3908   
/
 3373   3909   
 3374   3910   
host:example.amazonaws.com
 3375   3911   
my-header1:value2,value2,value1
 3376   3912   
x-amz-date:20150830T123600Z
 3377   3913   
x-amz-region-set:us-east-1
 3378   3914   
 3379   3915   
host;my-header1;x-amz-date;x-amz-region-set
 3380         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3916  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3381   3917   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 3382   3918   
new file mode 100644
 3383   3919   
index 0000000..489c182
 3384         -
-- /dev/null
        3920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 3385   3921   
@@ -0,0 +1 @@
        3922  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 3386   3923   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 3387   3924   
new file mode 100644
 3388   3925   
index 0000000..e1b8dbf
 3389         -
-- /dev/null
        3926  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 3390   3927   
@@ -0,0 +1,9 @@
        3928  +
GET / HTTP/1.1
        3929  +
Host:example.amazonaws.com
        3930  +
My-Header1:value2
        3931  +
My-Header1:value2
        3932  +
My-Header1:value1
        3933  +
X-Amz-Date:20150830T123600Z
        3934  +
X-Amz-Region-Set:us-east-1
        3935  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3936  +
 3391   3937   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3392   3938   
similarity index 99%
 3393   3939   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 3394   3940   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3395   3941   
index 8783461..bfc4619 100644
 3396         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
        3942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3397   3943   
@@ -1,4 +1,4 @@
 3398   3944   
AWS4-ECDSA-P256-SHA256
 3399   3945   
20150830T123600Z
 3400   3946   
20150830/service/aws4_request
 3401         -
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
        3947  +
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
              \
 No newline at end of file
 3402   3948   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3403   3949   
new file mode 100644
 3404   3950   
index 0000000..379dcb2
 3405         -
-- /dev/null
        3951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3406   3952   
@@ -0,0 +1,4 @@
        3953  +
{
        3954  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3955  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3956  +
}
 3407   3957   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3408   3958   
similarity index 99%
 3409   3959   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3410   3960   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3411   3961   
index 9561297..c05c3f5 100644
 3412         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
        3962  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3413   3963   
@@ -1,8 +1,8 @@
 3414   3964   
GET
 3415   3965   
/
 3416   3966   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host%3Bmy-header1
 3417   3967   
host:example.amazonaws.com
 3418   3968   
my-header1:value2,value2,value1
 3419   3969   
 3420   3970   
host;my-header1
 3421         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3971  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3422   3972   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3423   3973   
new file mode 100644
 3424   3974   
index 0000000..de9a4c3
 3425         -
-- /dev/null
        3975  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3426   3976   
@@ -0,0 +1 @@
        3977  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3427   3978   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3428   3979   
new file mode 100644
 3429   3980   
index 0000000..6c6b8c4
 3430         -
-- /dev/null
        3981  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3431   3982   
@@ -0,0 +1,6 @@
        3983  +
GET /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3045022100b6fa5712e476c23f411995e85747f62e9a25bdd718aac8692b3744dba106e1720220331a1e84a25e69c1ef07e63b3b76e1e78100f2ee020a3e66f127240901468912 HTTP/1.1
        3984  +
Host:example.amazonaws.com
        3985  +
My-Header1:value2
        3986  +
My-Header1:value2
        3987  +
My-Header1:value1
        3988  +
 3432   3989   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3433   3990   
similarity index 99%
 3434   3991   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3435   3992   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3436   3993   
index 3140f6f..4eef106 100644
 3437         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
        3994  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3438   3995   
@@ -1,4 +1,4 @@
 3439   3996   
AWS4-ECDSA-P256-SHA256
 3440   3997   
20150830T123600Z
 3441   3998   
20150830/service/aws4_request
 3442         -
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
        3999  +
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
              \
 No newline at end of file
 3443   4000   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3444   4001   
similarity index 78%
 3445   4002   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3446   4003   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3447   4004   
index 08a0364..40455ce 100644
 3448         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        4005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3449   4006   
@@ -1,6 +1,5 @@
 3450   4007   
GET / HTTP/1.1
 3451   4008   
Host:example.amazonaws.com
 3452   4009   
My-Header1:value2
 3453   4010   
My-Header1:value2
 3454   4011   
My-Header1:value1
 3455         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3456   4012   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3457   4013   
new file mode 100644
 3458   4014   
index 0000000..0468d80
 3459         -
-- /dev/null
        4015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3460   4016   
@@ -0,0 +1,12 @@
        4017  +
{
        4018  +
    "credentials": {
        4019  +
        "access_key_id": "AKIDEXAMPLE",
        4020  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4021  +
    },
        4022  +
    "expiration_in_seconds": 3600,
        4023  +
    "normalize": true,
        4024  +
    "region": "us-east-1",
        4025  +
    "service": "service",
        4026  +
    "sign_body": false,
        4027  +
    "timestamp": "2015-08-30T12:36:00Z"
        4028  +
}
              \
 No newline at end of file
 3461   4029   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3462   4030   
new file mode 100644
 3463   4031   
index 0000000..69526cd
 3464         -
-- /dev/null
        4032  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3465   4033   
@@ -0,0 +1,10 @@
        4034  +
GET
        4035  +
/
        4036  +
        4037  +
host:example.amazonaws.com
        4038  +
my-header1:value1 value2 value3
        4039  +
x-amz-date:20150830T123600Z
        4040  +
x-amz-region-set:us-east-1
        4041  +
        4042  +
host;my-header1;x-amz-date;x-amz-region-set
        4043  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3466   4044   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3467   4045   
new file mode 100644
 3468   4046   
index 0000000..d51b4f3
 3469         -
-- /dev/null
        4047  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3470   4048   
@@ -0,0 +1 @@
        4049  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3471   4050   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3472   4051   
new file mode 100644
 3473   4052   
index 0000000..8131420
 3474         -
-- /dev/null
        4053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3475   4054   
@@ -0,0 +1,9 @@
        4055  +
GET / HTTP/1.1
        4056  +
Host:example.amazonaws.com
        4057  +
My-Header1:value1
        4058  +
  value2
        4059  +
     value3
        4060  +
X-Amz-Date:20150830T123600Z
        4061  +
X-Amz-Region-Set:us-east-1
        4062  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        4063  +
 3476   4064   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3477   4065   
new file mode 100644
 3478   4066   
index 0000000..e4d99fa
 3479         -
-- /dev/null
        4067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3480   4068   
@@ -0,0 +1,4 @@
        4069  +
AWS4-ECDSA-P256-SHA256
        4070  +
20150830T123600Z
        4071  +
20150830/service/aws4_request
        4072  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3481   4073   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3482   4074   
new file mode 100644
 3483   4075   
index 0000000..379dcb2
 3484         -
-- /dev/null
        4076  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3485   4077   
@@ -0,0 +1,4 @@
        4078  +
{
        4079  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4080  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4081  +
}
 3486   4082   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3487   4083   
new file mode 100644
 3488   4084   
index 0000000..3c4d52f
 3489         -
-- /dev/null
        4085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3490   4086   
@@ -0,0 +1,8 @@
        4087  +
GET
        4088  +
/
        4089  +
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host%3Bmy-header1
        4090  +
host:example.amazonaws.com
        4091  +
my-header1:value1 value2 value3
        4092  +
        4093  +
host;my-header1
        4094  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3491   4095   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3492   4096   
new file mode 100644
 3493   4097   
index 0000000..4e63f9a
 3494         -
-- /dev/null
        4098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3495   4099   
@@ -0,0 +1 @@
        4100  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3496   4101   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3497   4102   
new file mode 100644
 3498   4103   
index 0000000..adf1f09
 3499         -
-- /dev/null
        4104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3500   4105   
@@ -0,0 +1,6 @@
        4106  +
GET /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3045022039c91f52792bd02ebcd8959326e022c60a8a7f4febed58dbea23cb295df8dc9e022100b95d4fcdd93090a54badb5ccb0ec5d38e7b20ff81204f48ceda327b9b155c14d HTTP/1.1
        4107  +
Host:example.amazonaws.com
        4108  +
My-Header1:value1
        4109  +
  value2
        4110  +
     value3
        4111  +
 3501   4112   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3502   4113   
new file mode 100644
 3503   4114   
index 0000000..e085407
 3504         -
-- /dev/null
        4115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3505   4116   
@@ -0,0 +1,4 @@
        4117  +
AWS4-ECDSA-P256-SHA256
        4118  +
20150830T123600Z
        4119  +
20150830/service/aws4_request
        4120  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3506   4121   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3507   4122   
new file mode 100644
 3508   4123   
index 0000000..b5026cd
 3509         -
-- /dev/null
        4124  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3510   4125   
@@ -0,0 +1,5 @@
        4126  +
GET / HTTP/1.1
        4127  +
Host:example.amazonaws.com
        4128  +
My-Header1:value1
        4129  +
  value2
        4130  +
     value3
 3511   4131   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3512   4132   
new file mode 100644
 3513   4133   
index 0000000..0468d80
 3514         -
-- /dev/null
        4134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3515   4135   
@@ -0,0 +1,12 @@
        4136  +
{
        4137  +
    "credentials": {
        4138  +
        "access_key_id": "AKIDEXAMPLE",
        4139  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4140  +
    },
        4141  +
    "expiration_in_seconds": 3600,
        4142  +
    "normalize": true,
        4143  +
    "region": "us-east-1",
        4144  +
    "service": "service",
        4145  +
    "sign_body": false,
        4146  +
    "timestamp": "2015-08-30T12:36:00Z"
        4147  +
}
              \
 No newline at end of file
 3516   4148   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3517   4149   
similarity index 99%
 3518   4150   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3519   4151   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3520   4152   
index 9375193..533afdb 100644
 3521         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
        4153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3522   4154   
@@ -1,10 +1,10 @@
 3523   4155   
GET
 3524   4156   
/
 3525   4157   
 3526   4158   
host:example.amazonaws.com
 3527   4159   
my-header1:value4,value1,value3,value2
 3528   4160   
x-amz-date:20150830T123600Z
 3529   4161   
x-amz-region-set:us-east-1
 3530   4162   
 3531   4163   
host;my-header1;x-amz-date;x-amz-region-set
 3532         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4164  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3533   4165   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3534   4166   
new file mode 100644
 3535   4167   
index 0000000..057b426
 3536         -
-- /dev/null
        4168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3537   4169   
@@ -0,0 +1 @@
        4170  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3538   4171   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3539   4172   
new file mode 100644
 3540   4173   
index 0000000..4e4ccf0
 3541         -
-- /dev/null
        4174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3542   4175   
@@ -0,0 +1,10 @@
        4176  +
GET / HTTP/1.1
        4177  +
Host:example.amazonaws.com
        4178  +
My-Header1:value4
        4179  +
My-Header1:value1
        4180  +
My-Header1:value3
        4181  +
My-Header1:value2
        4182  +
X-Amz-Date:20150830T123600Z
        4183  +
X-Amz-Region-Set:us-east-1
        4184  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        4185  +
 3543   4186   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3544   4187   
similarity index 99%
 3545   4188   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3546   4189   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3547   4190   
index 6400baf..e68c952 100644
 3548         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
        4191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3549   4192   
@@ -1,4 +1,4 @@
 3550   4193   
AWS4-ECDSA-P256-SHA256
 3551   4194   
20150830T123600Z
 3552   4195   
20150830/service/aws4_request
 3553         -
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
        4196  +
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
              \
 No newline at end of file
 3554   4197   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3555   4198   
new file mode 100644
 3556   4199   
index 0000000..379dcb2
 3557         -
-- /dev/null
        4200  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3558   4201   
@@ -0,0 +1,4 @@
        4202  +
{
        4203  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4204  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4205  +
}
 3559   4206   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3560   4207   
similarity index 99%
 3561   4208   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3562   4209   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3563   4210   
index ecf494a..68450fe 100644
 3564         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
        4211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3565   4212   
@@ -1,8 +1,8 @@
 3566   4213   
GET
 3567   4214   
/
 3568   4215   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host%3Bmy-header1
 3569   4216   
host:example.amazonaws.com
 3570   4217   
my-header1:value4,value1,value3,value2
 3571   4218   
 3572   4219   
host;my-header1
 3573         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4220  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3574   4221   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3575   4222   
new file mode 100644
 3576   4223   
index 0000000..9df2eb3
 3577         -
-- /dev/null
        4224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3578   4225   
@@ -0,0 +1 @@
        4226  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3579   4227   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3580   4228   
new file mode 100644
 3581   4229   
index 0000000..62f8cb7
 3582         -
-- /dev/null
        4230  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3583   4231   
@@ -0,0 +1,7 @@
        4232  +
GET /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402200c9f3470f63b573d7c7b8838d3acd8c527e4e5c3b990050c786f074107b12cf70220021b788568d7947e6ad6044e7cc6488dcdb4ff08f15e162ebd2537cc292ed168 HTTP/1.1
        4233  +
Host:example.amazonaws.com
        4234  +
My-Header1:value4
        4235  +
My-Header1:value1
        4236  +
My-Header1:value3
        4237  +
My-Header1:value2
        4238  +
 3584   4239   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3585   4240   
similarity index 99%
 3586   4241   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3587   4242   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3588   4243   
index b584179..2bcf7b1 100644
 3589         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
        4244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3590   4245   
@@ -1,4 +1,4 @@
 3591   4246   
AWS4-ECDSA-P256-SHA256
 3592   4247   
20150830T123600Z
 3593   4248   
20150830/service/aws4_request
 3594         -
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
        4249  +
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
              \
 No newline at end of file
 3595   4250   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3596   4251   
similarity index 80%
 3597   4252   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3598   4253   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3599   4254   
index f7bd9e6..2c6f49d 100644
 3600         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        4255  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3601   4256   
@@ -1,7 +1,6 @@
 3602   4257   
GET / HTTP/1.1
 3603   4258   
Host:example.amazonaws.com
 3604   4259   
My-Header1:value4
 3605   4260   
My-Header1:value1
 3606   4261   
My-Header1:value3
 3607   4262   
My-Header1:value2
 3608         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3609   4263   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3610   4264   
new file mode 100644
 3611   4265   
index 0000000..0468d80
 3612         -
-- /dev/null
        4266  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3613   4267   
@@ -0,0 +1,12 @@
        4268  +
{
        4269  +
    "credentials": {
        4270  +
        "access_key_id": "AKIDEXAMPLE",
        4271  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4272  +
    },
        4273  +
    "expiration_in_seconds": 3600,
        4274  +
    "normalize": true,
        4275  +
    "region": "us-east-1",
        4276  +
    "service": "service",
        4277  +
    "sign_body": false,
        4278  +
    "timestamp": "2015-08-30T12:36:00Z"
        4279  +
}
              \
 No newline at end of file
 3614   4280   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3615   4281   
similarity index 99%
 3616   4282   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3617   4283   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3618   4284   
index e91e952..94b6be5 100644
 3619         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
        4285  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3620   4286   
@@ -1,11 +1,11 @@
 3621   4287   
GET
 3622   4288   
/
 3623   4289   
 3624   4290   
host:example.amazonaws.com
 3625   4291   
my-header1:value1
 3626   4292   
my-header2:"a b c"
 3627   4293   
x-amz-date:20150830T123600Z
 3628   4294   
x-amz-region-set:us-east-1
 3629   4295   
 3630   4296   
host;my-header1;my-header2;x-amz-date;x-amz-region-set
 3631         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4297  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3632   4298   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3633   4299   
new file mode 100644
 3634   4300   
index 0000000..bf8c3cb
 3635         -
-- /dev/null
        4301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3636   4302   
@@ -0,0 +1 @@
        4303  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3637   4304   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3638   4305   
new file mode 100644
 3639   4306   
index 0000000..f7f054d
 3640         -
-- /dev/null
        4307  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3641   4308   
@@ -0,0 +1,8 @@
        4309  +
GET / HTTP/1.1
        4310  +
Host:example.amazonaws.com
        4311  +
My-Header1: value1
        4312  +
My-Header2: "a   b   c"
        4313  +
X-Amz-Date:20150830T123600Z
        4314  +
X-Amz-Region-Set:us-east-1
        4315  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date;x-amz-region-set, Signature=3046022100ce72c874a80cea45e3c5b7cbe76178f8577870e1f97ee1730f57cff45c3d398b022100e4ea7b870335abab5ca57fa740d20b3c5aba2739cf96dd7fa671fc11cf6c3341
        4316  +
 3642   4317   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3643   4318   
similarity index 99%
 3644   4319   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3645   4320   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3646   4321   
index 0e407d8..a2c9c05 100644
 3647         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
        4322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3648   4323   
@@ -1,4 +1,4 @@
 3649   4324   
AWS4-ECDSA-P256-SHA256
 3650   4325   
20150830T123600Z
 3651   4326   
20150830/service/aws4_request
 3652         -
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
        4327  +
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
              \
 No newline at end of file
 3653   4328   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3654   4329   
new file mode 100644
 3655   4330   
index 0000000..379dcb2
 3656         -
-- /dev/null
        4331  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3657   4332   
@@ -0,0 +1,4 @@
        4333  +
{
        4334  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4335  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4336  +
}
 3658   4337   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3659   4338   
similarity index 99%
 3660   4339   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3661   4340   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3662   4341   
index 8a3b042..3a51150 100644
 3663         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
        4342  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3664   4343   
@@ -1,9 +1,9 @@
 3665   4344   
GET
 3666   4345   
/
 3667   4346   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host%3Bmy-header1%3Bmy-header2
 3668   4347   
host:example.amazonaws.com
 3669   4348   
my-header1:value1
 3670   4349   
my-header2:"a b c"
 3671   4350   
 3672   4351   
host;my-header1;my-header2
 3673         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4352  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3674   4353   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3675   4354   
new file mode 100644
 3676   4355   
index 0000000..0033053
 3677         -
-- /dev/null
        4356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3678   4357   
@@ -0,0 +1 @@
        4358  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3679   4359   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3680   4360   
new file mode 100644
 3681   4361   
index 0000000..1537888
 3682         -
-- /dev/null
        4362  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3683   4363   
@@ -0,0 +1,5 @@
        4364  +
GET /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1%3Bmy-header2&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304502210085dc6b963562f7d443e0c35819c752a39ab744a6a8820ec4718a2aaf6d9acbae02202053d5ec6fcd892c09ce485b169b94590f805a05348ade664bbe3e06a7c62edb HTTP/1.1
        4365  +
Host:example.amazonaws.com
        4366  +
My-Header1: value1
        4367  +
My-Header2: "a   b   c"
        4368  +
 3684   4369   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3685   4370   
similarity index 99%
 3686   4371   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3687   4372   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3688   4373   
index 5eead25..633dc1f 100644
 3689         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
        4374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3690   4375   
@@ -1,4 +1,4 @@
 3691   4376   
AWS4-ECDSA-P256-SHA256
 3692   4377   
20150830T123600Z
 3693   4378   
20150830/service/aws4_request
 3694         -
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
        4379  +
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
              \
 No newline at end of file
 3695   4380   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3696   4381   
similarity index 75%
 3697   4382   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3698   4383   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3699   4384   
index 901f36c..ad1ea98 100644
 3700         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4385  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3701   4386   
@@ -1,5 +1,4 @@
 3702   4387   
GET / HTTP/1.1
 3703   4388   
Host:example.amazonaws.com
 3704   4389   
My-Header1: value1
 3705   4390   
My-Header2: "a   b   c"
 3706         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3707   4391   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3708   4392   
new file mode 100644
 3709   4393   
index 0000000..0468d80
 3710         -
-- /dev/null
        4394  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3711   4395   
@@ -0,0 +1,12 @@
        4396  +
{
        4397  +
    "credentials": {
        4398  +
        "access_key_id": "AKIDEXAMPLE",
        4399  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4400  +
    },
        4401  +
    "expiration_in_seconds": 3600,
        4402  +
    "normalize": true,
        4403  +
    "region": "us-east-1",
        4404  +
    "service": "service",
        4405  +
    "sign_body": false,
        4406  +
    "timestamp": "2015-08-30T12:36:00Z"
        4407  +
}
              \
 No newline at end of file
 3712   4408   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3713   4409   
similarity index 99%
 3714   4410   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3715   4411   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3716   4412   
index 47e7128..76db73d 100644
 3717         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
        4413  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3718   4414   
@@ -1,9 +1,9 @@
 3719   4415   
GET
 3720   4416   
/
 3721   4417   
 3722   4418   
host:example.amazonaws.com
 3723   4419   
x-amz-date:20150830T123600Z
 3724   4420   
x-amz-region-set:us-east-1
 3725   4421   
 3726   4422   
host;x-amz-date;x-amz-region-set
 3727         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4423  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3728   4424   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3729   4425   
new file mode 100644
 3730   4426   
index 0000000..cbd6ae2
 3731         -
-- /dev/null
        4427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3732   4428   
@@ -0,0 +1 @@
        4429  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3733   4430   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3734   4431   
new file mode 100644
 3735   4432   
index 0000000..a343fcf
 3736         -
-- /dev/null
        4433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3737   4434   
@@ -0,0 +1,6 @@
        4435  +
GET /example/.. HTTP/1.1
        4436  +
Host:example.amazonaws.com
        4437  +
X-Amz-Date:20150830T123600Z
        4438  +
X-Amz-Region-Set:us-east-1
        4439  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4440  +
 3738   4441   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3739   4442   
similarity index 99%
 3740   4443   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3741   4444   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3742   4445   
index 95d7219..600f1d8 100644
 3743         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
        4446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3744   4447   
@@ -1,4 +1,4 @@
 3745   4448   
AWS4-ECDSA-P256-SHA256
 3746   4449   
20150830T123600Z
 3747   4450   
20150830/service/aws4_request
 3748         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4451  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3749   4452   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3750   4453   
new file mode 100644
 3751   4454   
index 0000000..379dcb2
 3752         -
-- /dev/null
        4455  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3753   4456   
@@ -0,0 +1,4 @@
        4457  +
{
        4458  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4459  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4460  +
}
 3754   4461   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3755   4462   
similarity index 99%
 3756   4463   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3757   4464   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3758   4465   
index a34ea26..779c51c 100644
 3759         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
        4466  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3760   4467   
@@ -1,7 +1,7 @@
 3761   4468   
GET
 3762   4469   
/
 3763   4470   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 3764   4471   
host:example.amazonaws.com
 3765   4472   
 3766   4473   
host
 3767         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4474  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3768   4475   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3769   4476   
new file mode 100644
 3770   4477   
index 0000000..3cc88e6
 3771         -
-- /dev/null
        4478  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3772   4479   
@@ -0,0 +1 @@
        4480  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3773   4481   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3774   4482   
new file mode 100644
 3775   4483   
index 0000000..f68dde8
 3776         -
-- /dev/null
        4484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3777   4485   
@@ -0,0 +1,3 @@
        4486  +
GET /example/..?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3045022100be82e63cce1729590924a36bd6902036fe392d1b6196cffc2bf9620c8c5488b40220029a31d7cbb60816e40c0a00a53520db7d7928296b4236c2d0ada59c08b85bc4 HTTP/1.1
        4487  +
Host:example.amazonaws.com
        4488  +
 3778   4489   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3779   4490   
similarity index 99%
 3780   4491   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3781   4492   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3782   4493   
index 48f855c..6e29a7e 100644
 3783         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
        4494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3784   4495   
@@ -1,4 +1,4 @@
 3785   4496   
AWS4-ECDSA-P256-SHA256
 3786   4497   
20150830T123600Z
 3787   4498   
20150830/service/aws4_request
 3788         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4499  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3789   4500   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3790   4501   
similarity index 65%
 3791   4502   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3792   4503   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3793   4504   
index 9d6d7ca..6aa9f99 100644
 3794         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3795   4506   
@@ -1,3 +1,2 @@
 3796   4507   
GET /example/.. HTTP/1.1
 3797   4508   
Host:example.amazonaws.com
 3798         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3799   4509   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3800   4510   
new file mode 100644
 3801   4511   
index 0000000..0468d80
 3802         -
-- /dev/null
        4512  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3803   4513   
@@ -0,0 +1,12 @@
        4514  +
{
        4515  +
    "credentials": {
        4516  +
        "access_key_id": "AKIDEXAMPLE",
        4517  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4518  +
    },
        4519  +
    "expiration_in_seconds": 3600,
        4520  +
    "normalize": true,
        4521  +
    "region": "us-east-1",
        4522  +
    "service": "service",
        4523  +
    "sign_body": false,
        4524  +
    "timestamp": "2015-08-30T12:36:00Z"
        4525  +
}
              \
 No newline at end of file
 3804   4526   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3805   4527   
similarity index 99%
 3806   4528   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3807   4529   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3808   4530   
index 47e7128..76db73d 100644
 3809         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
        4531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3810   4532   
@@ -1,9 +1,9 @@
 3811   4533   
GET
 3812   4534   
/
 3813   4535   
 3814   4536   
host:example.amazonaws.com
 3815   4537   
x-amz-date:20150830T123600Z
 3816   4538   
x-amz-region-set:us-east-1
 3817   4539   
 3818   4540   
host;x-amz-date;x-amz-region-set
 3819         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4541  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3820   4542   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3821   4543   
new file mode 100644
 3822   4544   
index 0000000..f7a7ebe
 3823         -
-- /dev/null
        4545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3824   4546   
@@ -0,0 +1 @@
        4547  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3825   4548   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3826   4549   
new file mode 100644
 3827   4550   
index 0000000..9d2c50d
 3828         -
-- /dev/null
        4551  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3829   4552   
@@ -0,0 +1,6 @@
        4553  +
GET /example1/example2/../.. HTTP/1.1
        4554  +
Host:example.amazonaws.com
        4555  +
X-Amz-Date:20150830T123600Z
        4556  +
X-Amz-Region-Set:us-east-1
        4557  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4558  +
 3830   4559   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3831   4560   
similarity index 99%
 3832   4561   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-string-to-sign.txt
 3833   4562   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3834   4563   
index 95d7219..600f1d8 100644
 3835         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-string-to-sign.txt
        4564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3836   4565   
@@ -1,4 +1,4 @@
 3837   4566   
AWS4-ECDSA-P256-SHA256
 3838   4567   
20150830T123600Z
 3839   4568   
20150830/service/aws4_request
 3840         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4569  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3841   4570   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3842   4571   
new file mode 100644
 3843   4572   
index 0000000..379dcb2
 3844         -
-- /dev/null
        4573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3845   4574   
@@ -0,0 +1,4 @@
        4575  +
{
        4576  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4577  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4578  +
}
 3846   4579   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3847   4580   
similarity index 99%
 3848   4581   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3849   4582   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3850   4583   
index a34ea26..779c51c 100644
 3851         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
        4584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3852   4585   
@@ -1,7 +1,7 @@
 3853   4586   
GET
 3854   4587   
/
 3855   4588   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 3856   4589   
host:example.amazonaws.com
 3857   4590   
 3858   4591   
host
 3859         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4592  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3860   4593   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3861   4594   
new file mode 100644
 3862   4595   
index 0000000..45ef286
 3863         -
-- /dev/null
        4596  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3864   4597   
@@ -0,0 +1 @@
        4598  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3865   4599   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3866   4600   
new file mode 100644
 3867   4601   
index 0000000..0d16f66
 3868         -
-- /dev/null
        4602  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3869   4603   
@@ -0,0 +1,3 @@
        4604  +
GET /example1/example2/../..?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304502202eec946a96e06beaaf22963e2051d0f9200ffdcbe9e179761a0c324142cd5291022100af3d0044ff5a67452342aa457aa7d5646f5f834a9458b147ba4152bb658f0727 HTTP/1.1
        4605  +
Host:example.amazonaws.com
        4606  +
 3870   4607   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3871   4608   
similarity index 99%
 3872   4609   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-string-to-sign.txt
 3873   4610   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3874   4611   
index 48f855c..6e29a7e 100644
 3875         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-string-to-sign.txt
        4612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3876   4613   
@@ -1,4 +1,4 @@
 3877   4614   
AWS4-ECDSA-P256-SHA256
 3878   4615   
20150830T123600Z
 3879   4616   
20150830/service/aws4_request
 3880         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4617  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3881   4618   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3882   4619   
similarity index 70%
 3883   4620   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3884   4621   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3885   4622   
index cfd4e8b..a856c10 100644
 3886         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3887   4624   
@@ -1,3 +1,2 @@
 3888   4625   
GET /example1/example2/../.. HTTP/1.1
 3889   4626   
Host:example.amazonaws.com
 3890         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3891   4627   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3892   4628   
new file mode 100644
 3893   4629   
index 0000000..7bee5c7
 3894         -
-- /dev/null
        4630  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3895   4631   
@@ -0,0 +1,12 @@
        4632  +
{
        4633  +
    "credentials": {
        4634  +
        "access_key_id": "AKIDEXAMPLE",
        4635  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4636  +
    },
        4637  +
    "expiration_in_seconds": 3600,
        4638  +
    "normalize": false,
        4639  +
    "region": "us-east-1",
        4640  +
    "service": "service",
        4641  +
    "sign_body": false,
        4642  +
    "timestamp": "2015-08-30T12:36:00Z"
        4643  +
}
              \
 No newline at end of file
 3896   4644   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3897   4645   
similarity index 99%
 3898   4646   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3899   4647   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3900   4648   
index 5e1d1cf..e4e6d57 100644
 3901         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
        4649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3902   4650   
@@ -1,9 +1,9 @@
 3903   4651   
GET
 3904   4652   
/example1/example2/../..
 3905   4653   
 3906   4654   
host:example.amazonaws.com
 3907   4655   
x-amz-date:20150830T123600Z
 3908   4656   
x-amz-region-set:us-east-1
 3909   4657   
 3910   4658   
host;x-amz-date;x-amz-region-set
 3911         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4659  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3912   4660   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3913   4661   
new file mode 100644
 3914   4662   
index 0000000..2d1b47c
 3915         -
-- /dev/null
        4663  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3916   4664   
@@ -0,0 +1 @@
        4665  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3917   4666   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3918   4667   
new file mode 100644
 3919   4668   
index 0000000..7158179
 3920         -
-- /dev/null
        4669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3921   4670   
@@ -0,0 +1,6 @@
        4671  +
GET /example1/example2/../.. HTTP/1.1
        4672  +
Host:example.amazonaws.com
        4673  +
X-Amz-Date:20150830T123600Z
        4674  +
X-Amz-Region-Set:us-east-1
        4675  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4676  +
 3922   4677   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3923   4678   
similarity index 99%
 3924   4679   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3925   4680   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3926   4681   
index 1cca6cf..db60c8e 100644
 3927         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
        4682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3928   4683   
@@ -1,4 +1,4 @@
 3929   4684   
AWS4-ECDSA-P256-SHA256
 3930   4685   
20150830T123600Z
 3931   4686   
20150830/service/aws4_request
 3932         -
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
        4687  +
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
              \
 No newline at end of file
 3933   4688   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3934   4689   
new file mode 100644
 3935   4690   
index 0000000..379dcb2
 3936         -
-- /dev/null
        4691  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3937   4692   
@@ -0,0 +1,4 @@
        4693  +
{
        4694  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4695  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4696  +
}
 3938   4697   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3939   4698   
similarity index 99%
 3940   4699   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3941   4700   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3942   4701   
index 95dc104..0d963ba 100644
 3943         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
        4702  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3944   4703   
@@ -1,7 +1,7 @@
 3945   4704   
GET
 3946   4705   
/example1/example2/../..
 3947   4706   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 3948   4707   
host:example.amazonaws.com
 3949   4708   
 3950   4709   
host
 3951         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4710  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3952   4711   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3953   4712   
new file mode 100644
 3954   4713   
index 0000000..ae774e4
 3955         -
-- /dev/null
        4714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3956   4715   
@@ -0,0 +1 @@
        4716  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3957   4717   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3958   4718   
new file mode 100644
 3959   4719   
index 0000000..be6b86e
 3960         -
-- /dev/null
        4720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3961   4721   
@@ -0,0 +1,3 @@
        4722  +
GET /example1/example2/../..?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3046022100dfbb77a9369c87af1e00ef8b4da3761849080372576a86e0d1ae0363b135f8f6022100fac80ba02cc33852349f6b19b8fc066724557186b1efe82421e73fb85bfbddef HTTP/1.1
        4723  +
Host:example.amazonaws.com
        4724  +
 3962   4725   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3963   4726   
similarity index 99%
 3964   4727   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3965   4728   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3966   4729   
index 50edce6..fcc70cd 100644
 3967         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
        4730  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3968   4731   
@@ -1,4 +1,4 @@
 3969   4732   
AWS4-ECDSA-P256-SHA256
 3970   4733   
20150830T123600Z
 3971   4734   
20150830/service/aws4_request
 3972         -
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
        4735  +
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
              \
 No newline at end of file
 3973   4736   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3974   4737   
new file mode 100644
 3975   4738   
index 0000000..a856c10
 3976         -
-- /dev/null
        4739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3977   4740   
@@ -0,0 +1,2 @@
        4741  +
GET /example1/example2/../.. HTTP/1.1
        4742  +
Host:example.amazonaws.com
 3978   4743   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3979   4744   
new file mode 100644
 3980   4745   
index 0000000..7bee5c7
 3981         -
-- /dev/null
        4746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3982   4747   
@@ -0,0 +1,12 @@
        4748  +
{
        4749  +
    "credentials": {
        4750  +
        "access_key_id": "AKIDEXAMPLE",
        4751  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4752  +
    },
        4753  +
    "expiration_in_seconds": 3600,
        4754  +
    "normalize": false,
        4755  +
    "region": "us-east-1",
        4756  +
    "service": "service",
        4757  +
    "sign_body": false,
        4758  +
    "timestamp": "2015-08-30T12:36:00Z"
        4759  +
}
              \
 No newline at end of file
 3983   4760   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3984   4761   
similarity index 99%
 3985   4762   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3986   4763   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3987   4764   
index d6a0abe..22def1a 100644
 3988         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
        4765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3989   4766   
@@ -1,9 +1,9 @@
 3990   4767   
GET
 3991   4768   
/example/..
 3992   4769   
 3993   4770   
host:example.amazonaws.com
 3994   4771   
x-amz-date:20150830T123600Z
 3995   4772   
x-amz-region-set:us-east-1
 3996   4773   
 3997   4774   
host;x-amz-date;x-amz-region-set
 3998         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4775  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3999   4776   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 4000   4777   
new file mode 100644
 4001   4778   
index 0000000..9251bad
 4002         -
-- /dev/null
        4779  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 4003   4780   
@@ -0,0 +1 @@
        4781  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 4004   4782   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 4005   4783   
new file mode 100644
 4006   4784   
index 0000000..f1bb60f
 4007         -
-- /dev/null
        4785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 4008   4786   
@@ -0,0 +1,6 @@
        4787  +
GET /example/.. HTTP/1.1
        4788  +
Host:example.amazonaws.com
        4789  +
X-Amz-Date:20150830T123600Z
        4790  +
X-Amz-Region-Set:us-east-1
        4791  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4792  +
 4009   4793   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 4010   4794   
similarity index 99%
 4011   4795   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 4012   4796   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 4013   4797   
index 4a34e93..5673a20 100644
 4014         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
        4798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 4015   4799   
@@ -1,4 +1,4 @@
 4016   4800   
AWS4-ECDSA-P256-SHA256
 4017   4801   
20150830T123600Z
 4018   4802   
20150830/service/aws4_request
 4019         -
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
        4803  +
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
              \
 No newline at end of file
 4020   4804   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 4021   4805   
new file mode 100644
 4022   4806   
index 0000000..379dcb2
 4023         -
-- /dev/null
        4807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 4024   4808   
@@ -0,0 +1,4 @@
        4809  +
{
        4810  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4811  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4812  +
}
 4025   4813   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 4026   4814   
similarity index 99%
 4027   4815   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 4028   4816   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 4029   4817   
index b1d123e..a1c22e0 100644
 4030         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
        4818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 4031   4819   
@@ -1,7 +1,7 @@
 4032   4820   
GET
 4033   4821   
/example/..
 4034   4822   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4035   4823   
host:example.amazonaws.com
 4036   4824   
 4037   4825   
host
 4038         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4826  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4039   4827   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 4040   4828   
new file mode 100644
 4041   4829   
index 0000000..9f0f686
 4042         -
-- /dev/null
        4830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 4043   4831   
@@ -0,0 +1 @@
        4832  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 4044   4833   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 4045   4834   
new file mode 100644
 4046   4835   
index 0000000..d1d451a
 4047         -
-- /dev/null
        4836  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 4048   4837   
@@ -0,0 +1,3 @@
        4838  +
GET /example/..?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3045022029b3d53b5fdc8a5c0f769c2cf41221d06b6f88e941e92e11c47009b2f768908c022100b979fc4142576a3328bf28172fcd71d47556f06d90a55a2f19c7b0f9b946c7f2 HTTP/1.1
        4839  +
Host:example.amazonaws.com
        4840  +
 4049   4841   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 4050   4842   
similarity index 99%
 4051   4843   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 4052   4844   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 4053   4845   
index a17f5ab..81b41e8 100644
 4054         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
        4846  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 4055   4847   
@@ -1,4 +1,4 @@
 4056   4848   
AWS4-ECDSA-P256-SHA256
 4057   4849   
20150830T123600Z
 4058   4850   
20150830/service/aws4_request
 4059         -
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
        4851  +
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
              \
 No newline at end of file
 4060   4852   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 4061   4853   
new file mode 100644
 4062   4854   
index 0000000..6aa9f99
 4063         -
-- /dev/null
        4855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 4064   4856   
@@ -0,0 +1,2 @@
        4857  +
GET /example/.. HTTP/1.1
        4858  +
Host:example.amazonaws.com
 4065   4859   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 4066   4860   
new file mode 100644
 4067   4861   
index 0000000..0468d80
 4068         -
-- /dev/null
        4862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 4069   4863   
@@ -0,0 +1,12 @@
        4864  +
{
        4865  +
    "credentials": {
        4866  +
        "access_key_id": "AKIDEXAMPLE",
        4867  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4868  +
    },
        4869  +
    "expiration_in_seconds": 3600,
        4870  +
    "normalize": true,
        4871  +
    "region": "us-east-1",
        4872  +
    "service": "service",
        4873  +
    "sign_body": false,
        4874  +
    "timestamp": "2015-08-30T12:36:00Z"
        4875  +
}
              \
 No newline at end of file
 4070   4876   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 4071   4877   
similarity index 99%
 4072   4878   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 4073   4879   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 4074   4880   
index 47e7128..76db73d 100644
 4075         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
        4881  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 4076   4882   
@@ -1,9 +1,9 @@
 4077   4883   
GET
 4078   4884   
/
 4079   4885   
 4080   4886   
host:example.amazonaws.com
 4081   4887   
x-amz-date:20150830T123600Z
 4082   4888   
x-amz-region-set:us-east-1
 4083   4889   
 4084   4890   
host;x-amz-date;x-amz-region-set
 4085         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4891  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4086   4892   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 4087   4893   
new file mode 100644
 4088   4894   
index 0000000..ca6e84e
 4089         -
-- /dev/null
        4895  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 4090   4896   
@@ -0,0 +1 @@
        4897  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 4091   4898   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 4092   4899   
new file mode 100644
 4093   4900   
index 0000000..a7c764c
 4094         -
-- /dev/null
        4901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 4095   4902   
@@ -0,0 +1,6 @@
        4903  +
GET /./ HTTP/1.1
        4904  +
Host:example.amazonaws.com
        4905  +
X-Amz-Date:20150830T123600Z
        4906  +
X-Amz-Region-Set:us-east-1
        4907  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4908  +
 4096   4909   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-string-to-sign.txt
 4097   4910   
similarity index 99%
 4098   4911   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 4099   4912   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-string-to-sign.txt
 4100   4913   
index 95d7219..600f1d8 100644
 4101         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
        4914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-string-to-sign.txt
 4102   4915   
@@ -1,4 +1,4 @@
 4103   4916   
AWS4-ECDSA-P256-SHA256
 4104   4917   
20150830T123600Z
 4105   4918   
20150830/service/aws4_request
 4106         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4919  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4107   4920   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 4108   4921   
new file mode 100644
 4109   4922   
index 0000000..379dcb2
 4110         -
-- /dev/null
        4923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 4111   4924   
@@ -0,0 +1,4 @@
        4925  +
{
        4926  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4927  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4928  +
}
 4112   4929   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 4113   4930   
similarity index 99%
 4114   4931   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 4115   4932   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 4116   4933   
index a34ea26..779c51c 100644
 4117         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
        4934  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 4118   4935   
@@ -1,7 +1,7 @@
 4119   4936   
GET
 4120   4937   
/
 4121   4938   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4122   4939   
host:example.amazonaws.com
 4123   4940   
 4124   4941   
host
 4125         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4942  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4126   4943   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 4127   4944   
new file mode 100644
 4128   4945   
index 0000000..4b6ed09
 4129         -
-- /dev/null
        4946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 4130   4947   
@@ -0,0 +1 @@
        4948  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 4131   4949   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 4132   4950   
new file mode 100644
 4133   4951   
index 0000000..d6c7176
 4134         -
-- /dev/null
        4952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 4135   4953   
@@ -0,0 +1,3 @@
        4954  +
GET /./?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3046022100d44a1214b0389964d48bf1ea73df6649f6dbd213421986ce9c2fae6397c9a866022100e54a0895ed71289a7b38282fbbf57ab4bdf6558bec6bff5b05c0d2b1a4f9b7e2 HTTP/1.1
        4955  +
Host:example.amazonaws.com
        4956  +
 4136   4957   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-string-to-sign.txt
 4137   4958   
similarity index 99%
 4138   4959   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 4139   4960   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-string-to-sign.txt
 4140   4961   
index 48f855c..6e29a7e 100644
 4141         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
        4962  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-string-to-sign.txt
 4142   4963   
@@ -1,4 +1,4 @@
 4143   4964   
AWS4-ECDSA-P256-SHA256
 4144   4965   
20150830T123600Z
 4145   4966   
20150830/service/aws4_request
 4146         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4967  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4147   4968   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 4148   4969   
similarity index 61%
 4149   4970   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.req
 4150   4971   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 4151   4972   
index f3537b7..2c5ff38 100644
 4152         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.req
        4973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 4153   4974   
@@ -1,3 +1,2 @@
 4154   4975   
GET /./ HTTP/1.1
 4155   4976   
Host:example.amazonaws.com
 4156         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4157   4977   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 4158   4978   
new file mode 100644
 4159   4979   
index 0000000..7bee5c7
 4160         -
-- /dev/null
        4980  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 4161   4981   
@@ -0,0 +1,12 @@
        4982  +
{
        4983  +
    "credentials": {
        4984  +
        "access_key_id": "AKIDEXAMPLE",
        4985  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4986  +
    },
        4987  +
    "expiration_in_seconds": 3600,
        4988  +
    "normalize": false,
        4989  +
    "region": "us-east-1",
        4990  +
    "service": "service",
        4991  +
    "sign_body": false,
        4992  +
    "timestamp": "2015-08-30T12:36:00Z"
        4993  +
}
              \
 No newline at end of file
 4162   4994   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 4163   4995   
similarity index 99%
 4164   4996   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 4165   4997   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 4166   4998   
index d05303d..9257ac4 100644
 4167         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
        4999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 4168   5000   
@@ -1,9 +1,9 @@
 4169   5001   
GET
 4170   5002   
/./
 4171   5003   
 4172   5004   
host:example.amazonaws.com
 4173   5005   
x-amz-date:20150830T123600Z
 4174   5006   
x-amz-region-set:us-east-1
 4175   5007   
 4176   5008   
host;x-amz-date;x-amz-region-set
 4177         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5009  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4178   5010   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 4179   5011   
new file mode 100644
 4180   5012   
index 0000000..2eb1aa5
 4181         -
-- /dev/null
        5013  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 4182   5014   
@@ -0,0 +1 @@
        5015  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 4183   5016   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 4184   5017   
new file mode 100644
 4185   5018   
index 0000000..df3b1da
 4186         -
-- /dev/null
        5019  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 4187   5020   
@@ -0,0 +1,6 @@
        5021  +
GET /./ HTTP/1.1
        5022  +
Host:example.amazonaws.com
        5023  +
X-Amz-Date:20150830T123600Z
        5024  +
X-Amz-Region-Set:us-east-1
        5025  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        5026  +
 4188   5027   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 4189   5028   
similarity index 99%
 4190   5029   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 4191   5030   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 4192   5031   
index e1bfb39..754b3ed 100644
 4193         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
        5032  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 4194   5033   
@@ -1,4 +1,4 @@
 4195   5034   
AWS4-ECDSA-P256-SHA256
 4196   5035   
20150830T123600Z
 4197   5036   
20150830/service/aws4_request
 4198         -
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
        5037  +
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
              \
 No newline at end of file
 4199   5038   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 4200   5039   
new file mode 100644
 4201   5040   
index 0000000..379dcb2
 4202         -
-- /dev/null
        5041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 4203   5042   
@@ -0,0 +1,4 @@
        5043  +
{
        5044  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5045  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5046  +
}
 4204   5047   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4205   5048   
similarity index 99%
 4206   5049   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4207   5050   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4208   5051   
index f048d0f..c8edce3 100644
 4209         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
        5052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4210   5053   
@@ -1,7 +1,7 @@
 4211   5054   
GET
 4212   5055   
/./
 4213   5056   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4214   5057   
host:example.amazonaws.com
 4215   5058   
 4216   5059   
host
 4217         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5060  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4218   5061   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 4219   5062   
new file mode 100644
 4220   5063   
index 0000000..d3af3b8
 4221         -
-- /dev/null
        5064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 4222   5065   
@@ -0,0 +1 @@
        5066  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 4223   5067   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 4224   5068   
new file mode 100644
 4225   5069   
index 0000000..eb38155
 4226         -
-- /dev/null
        5070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 4227   5071   
@@ -0,0 +1,3 @@
        5072  +
GET /./?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304502210089daa43b189bd9fba8fc67a3b03b4dce6e29e0aff0bd40a6ce7df7e0c8f890e1022016592a48b323a176064eecf203863be8e3de057d3ff0d7736c121a9cf88ccb85 HTTP/1.1
        5073  +
Host:example.amazonaws.com
        5074  +
 4228   5075   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 4229   5076   
similarity index 99%
 4230   5077   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 4231   5078   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 4232   5079   
index bfcf245..4f20b8f 100644
 4233         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
        5080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 4234   5081   
@@ -1,4 +1,4 @@
 4235   5082   
AWS4-ECDSA-P256-SHA256
 4236   5083   
20150830T123600Z
 4237   5084   
20150830/service/aws4_request
 4238         -
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
        5085  +
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
              \
 No newline at end of file
 4239   5086   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 4240   5087   
new file mode 100644
 4241   5088   
index 0000000..2c5ff38
 4242         -
-- /dev/null
        5089  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 4243   5090   
@@ -0,0 +1,2 @@
        5091  +
GET /./ HTTP/1.1
        5092  +
Host:example.amazonaws.com
 4244   5093   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 4245   5094   
new file mode 100644
 4246   5095   
index 0000000..0468d80
 4247         -
-- /dev/null
        5096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 4248   5097   
@@ -0,0 +1,12 @@
        5098  +
{
        5099  +
    "credentials": {
        5100  +
        "access_key_id": "AKIDEXAMPLE",
        5101  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5102  +
    },
        5103  +
    "expiration_in_seconds": 3600,
        5104  +
    "normalize": true,
        5105  +
    "region": "us-east-1",
        5106  +
    "service": "service",
        5107  +
    "sign_body": false,
        5108  +
    "timestamp": "2015-08-30T12:36:00Z"
        5109  +
}
              \
 No newline at end of file
 4249   5110   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 4250   5111   
similarity index 99%
 4251   5112   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 4252   5113   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 4253   5114   
index 47e7128..76db73d 100644
 4254         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
        5115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 4255   5116   
@@ -1,9 +1,9 @@
 4256   5117   
GET
 4257   5118   
/
 4258   5119   
 4259   5120   
host:example.amazonaws.com
 4260   5121   
x-amz-date:20150830T123600Z
 4261   5122   
x-amz-region-set:us-east-1
 4262   5123   
 4263   5124   
host;x-amz-date;x-amz-region-set
 4264         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5125  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4265   5126   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 4266   5127   
new file mode 100644
 4267   5128   
index 0000000..0c049ca
 4268         -
-- /dev/null
        5129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 4269   5130   
@@ -0,0 +1 @@
        5131  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 4270   5132   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 4271   5133   
new file mode 100644
 4272   5134   
index 0000000..f4bb1e1
 4273         -
-- /dev/null
        5135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 4274   5136   
@@ -0,0 +1,6 @@
        5137  +
GET // HTTP/1.1
        5138  +
Host:example.amazonaws.com
        5139  +
X-Amz-Date:20150830T123600Z
        5140  +
X-Amz-Region-Set:us-east-1
        5141  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        5142  +
 4275   5143   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4276   5144   
similarity index 99%
 4277   5145   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 4278   5146   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4279   5147   
index 95d7219..600f1d8 100644
 4280         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
        5148  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4281   5149   
@@ -1,4 +1,4 @@
 4282   5150   
AWS4-ECDSA-P256-SHA256
 4283   5151   
20150830T123600Z
 4284   5152   
20150830/service/aws4_request
 4285         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        5153  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4286   5154   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 4287   5155   
new file mode 100644
 4288   5156   
index 0000000..379dcb2
 4289         -
-- /dev/null
        5157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 4290   5158   
@@ -0,0 +1,4 @@
        5159  +
{
        5160  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5161  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5162  +
}
 4291   5163   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4292   5164   
similarity index 99%
 4293   5165   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 4294   5166   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4295   5167   
index a34ea26..779c51c 100644
 4296         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
        5168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4297   5169   
@@ -1,7 +1,7 @@
 4298   5170   
GET
 4299   5171   
/
 4300   5172   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4301   5173   
host:example.amazonaws.com
 4302   5174   
 4303   5175   
host
 4304         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5176  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4305   5177   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 4306   5178   
new file mode 100644
 4307   5179   
index 0000000..ca52293
 4308         -
-- /dev/null
        5180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 4309   5181   
@@ -0,0 +1 @@
        5182  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 4310   5183   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 4311   5184   
new file mode 100644
 4312   5185   
index 0000000..4a212a9
 4313         -
-- /dev/null
        5186  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 4314   5187   
@@ -0,0 +1,3 @@
        5188  +
GET //?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402207e412e67f6164f6f3bdae2cc5af21bc5747106274a61a531b61275846a81a4f6022036260958080b0447f67df63ba3dbda6fe97dbffe54073491dc884ae4da43c83e HTTP/1.1
        5189  +
Host:example.amazonaws.com
        5190  +
 4315   5191   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4316   5192   
similarity index 99%
 4317   5193   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 4318   5194   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4319   5195   
index 48f855c..6e29a7e 100644
 4320         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
        5196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4321   5197   
@@ -1,4 +1,4 @@
 4322   5198   
AWS4-ECDSA-P256-SHA256
 4323   5199   
20150830T123600Z
 4324   5200   
20150830/service/aws4_request
 4325         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        5201  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4326   5202   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4327   5203   
similarity index 61%
 4328   5204   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 4329   5205   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4330   5206   
index ede8e3c..25bc21e 100644
 4331         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        5207  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4332   5208   
@@ -1,3 +1,2 @@
 4333   5209   
GET // HTTP/1.1
 4334   5210   
Host:example.amazonaws.com
 4335         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4336   5211   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 4337   5212   
new file mode 100644
 4338   5213   
index 0000000..0468d80
 4339         -
-- /dev/null
        5214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 4340   5215   
@@ -0,0 +1,12 @@
        5216  +
{
        5217  +
    "credentials": {
        5218  +
        "access_key_id": "AKIDEXAMPLE",
        5219  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5220  +
    },
        5221  +
    "expiration_in_seconds": 3600,
        5222  +
    "normalize": true,
        5223  +
    "region": "us-east-1",
        5224  +
    "service": "service",
        5225  +
    "sign_body": false,
        5226  +
    "timestamp": "2015-08-30T12:36:00Z"
        5227  +
}
              \
 No newline at end of file
 4341   5228   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4342   5229   
similarity index 99%
 4343   5230   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4344   5231   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4345   5232   
index 2e36c20..a51f1ba 100644
 4346         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
        5233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4347   5234   
@@ -1,9 +1,9 @@
 4348   5235   
GET
 4349   5236   
/example
 4350   5237   
 4351   5238   
host:example.amazonaws.com
 4352   5239   
x-amz-date:20150830T123600Z
 4353   5240   
x-amz-region-set:us-east-1
 4354   5241   
 4355   5242   
host;x-amz-date;x-amz-region-set
 4356         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5243  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4357   5244   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 4358   5245   
new file mode 100644
 4359   5246   
index 0000000..f5c871f
 4360         -
-- /dev/null
        5247  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 4361   5248   
@@ -0,0 +1 @@
        5249  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 4362   5250   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 4363   5251   
new file mode 100644
 4364   5252   
index 0000000..bda4718
 4365         -
-- /dev/null
        5253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 4366   5254   
@@ -0,0 +1,6 @@
        5255  +
GET /./example HTTP/1.1
        5256  +
Host:example.amazonaws.com
        5257  +
X-Amz-Date:20150830T123600Z
        5258  +
X-Amz-Region-Set:us-east-1
        5259  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        5260  +
 4367   5261   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 4368   5262   
similarity index 99%
 4369   5263   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 4370   5264   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 4371   5265   
index cd30e8b..2ffe879 100644
 4372         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-string-to-sign.txt
        5266  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 4373   5267   
@@ -1,4 +1,4 @@
 4374   5268   
AWS4-ECDSA-P256-SHA256
 4375   5269   
20150830T123600Z
 4376   5270   
20150830/service/aws4_request
 4377         -
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
        5271  +
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
              \
 No newline at end of file
 4378   5272   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 4379   5273   
new file mode 100644
 4380   5274   
index 0000000..379dcb2
 4381         -
-- /dev/null
        5275  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 4382   5276   
@@ -0,0 +1,4 @@
        5277  +
{
        5278  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5279  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5280  +
}
 4383   5281   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4384   5282   
similarity index 99%
 4385   5283   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4386   5284   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4387   5285   
index 77cf28d..45151ea 100644
 4388         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
        5286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4389   5287   
@@ -1,7 +1,7 @@
 4390   5288   
GET
 4391   5289   
/example
 4392   5290   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4393   5291   
host:example.amazonaws.com
 4394   5292   
 4395   5293   
host
 4396         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5294  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4397   5295   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 4398   5296   
new file mode 100644
 4399   5297   
index 0000000..11ad7bf
 4400         -
-- /dev/null
        5298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 4401   5299   
@@ -0,0 +1 @@
        5300  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 4402   5301   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 4403   5302   
new file mode 100644
 4404   5303   
index 0000000..a7537b1
 4405         -
-- /dev/null
        5304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 4406   5305   
@@ -0,0 +1,3 @@
        5306  +
GET /./example?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3045022100ae36c4ce9d4e0026419e57d4cac9d2d4fd487f2aa3e8520ef43d1d4b8b0e96f002202a4b135ab4cb49cc35dd756dd40f02ce96271d32f2f5ae2d671ccf535139a4b3 HTTP/1.1
        5307  +
Host:example.amazonaws.com
        5308  +
 4407   5309   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 4408   5310   
similarity index 99%
 4409   5311   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 4410   5312   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 4411   5313   
index 49d9b24..b486672 100644
 4412         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-string-to-sign.txt
        5314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 4413   5315   
@@ -1,4 +1,4 @@
 4414   5316   
AWS4-ECDSA-P256-SHA256
 4415   5317   
20150830T123600Z
 4416   5318   
20150830/service/aws4_request
 4417         -
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
        5319  +
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
              \
 No newline at end of file
 4418   5320   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4419   5321   
similarity index 65%
 4420   5322   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.req
 4421   5323   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4422   5324   
index 3c91071..5d919c9 100644
 4423         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.req
        5325  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4424   5326   
@@ -1,3 +1,2 @@
 4425   5327   
GET /./example HTTP/1.1
 4426   5328   
Host:example.amazonaws.com
 4427         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4428   5329   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 4429   5330   
new file mode 100644
 4430   5331   
index 0000000..7bee5c7
 4431         -
-- /dev/null
        5332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 4432   5333   
@@ -0,0 +1,12 @@
        5334  +
{
        5335  +
    "credentials": {
        5336  +
        "access_key_id": "AKIDEXAMPLE",
        5337  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5338  +
    },
        5339  +
    "expiration_in_seconds": 3600,
        5340  +
    "normalize": false,
        5341  +
    "region": "us-east-1",
        5342  +
    "service": "service",
        5343  +
    "sign_body": false,
        5344  +
    "timestamp": "2015-08-30T12:36:00Z"
        5345  +
}
              \
 No newline at end of file
 4433   5346   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4434   5347   
similarity index 99%
 4435   5348   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4436   5349   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4437   5350   
index 4444842..2355a69 100644
 4438         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
        5351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4439   5352   
@@ -1,9 +1,9 @@
 4440   5353   
GET
 4441   5354   
/./example
 4442   5355   
 4443   5356   
host:example.amazonaws.com
 4444   5357   
x-amz-date:20150830T123600Z
 4445   5358   
x-amz-region-set:us-east-1
 4446   5359   
 4447   5360   
host;x-amz-date;x-amz-region-set
 4448         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5361  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4449   5362   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 4450   5363   
new file mode 100644
 4451   5364   
index 0000000..9c8f737
 4452         -
-- /dev/null
        5365  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 4453   5366   
@@ -0,0 +1 @@
        5367  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 4454   5368   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 4455   5369   
new file mode 100644
 4456   5370   
index 0000000..aa5980d
 4457         -
-- /dev/null
        5371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 4458   5372   
@@ -0,0 +1,6 @@
        5373  +
GET /./example HTTP/1.1
        5374  +
Host:example.amazonaws.com
        5375  +
X-Amz-Date:20150830T123600Z
        5376  +
X-Amz-Region-Set:us-east-1
        5377  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        5378  +
 4459   5379   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 4460   5380   
similarity index 99%
 4461   5381   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 4462   5382   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 4463   5383   
index cc63510..d056816 100644
 4464         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
        5384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 4465   5385   
@@ -1,4 +1,4 @@
 4466   5386   
AWS4-ECDSA-P256-SHA256
 4467   5387   
20150830T123600Z
 4468   5388   
20150830/service/aws4_request
 4469         -
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
        5389  +
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
              \
 No newline at end of file
 4470   5390   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 4471   5391   
new file mode 100644
 4472   5392   
index 0000000..379dcb2
 4473         -
-- /dev/null
        5393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 4474   5394   
@@ -0,0 +1,4 @@
        5395  +
{
        5396  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5397  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5398  +
}
 4475   5399   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4476   5400   
similarity index 99%
 4477   5401   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4478   5402   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4479   5403   
index ed2cb2d..df9928e 100644
 4480         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
        5404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4481   5405   
@@ -1,7 +1,7 @@
 4482   5406   
GET
 4483   5407   
/./example
 4484   5408   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4485   5409   
host:example.amazonaws.com
 4486   5410   
 4487   5411   
host
 4488         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5412  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4489   5413   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 4490   5414   
new file mode 100644
 4491   5415   
index 0000000..bb4d86b
 4492         -
-- /dev/null
        5416  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 4493   5417   
@@ -0,0 +1 @@
        5418  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 4494   5419   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 4495   5420   
new file mode 100644
 4496   5421   
index 0000000..0061136
 4497         -
-- /dev/null
        5422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 4498   5423   
@@ -0,0 +1,3 @@
        5424  +
GET /./example?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304602210090227b15d2fecbf2acbaf7db1e17d678ee26f351546b2a4b29ca288b094f0056022100c1b386398e19ea14bd93082062eef901365946ca05dcb166a8bc9ca5c9d1dfec HTTP/1.1
        5425  +
Host:example.amazonaws.com
        5426  +
 4499   5427   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 4500   5428   
similarity index 99%
 4501   5429   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 4502   5430   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 4503   5431   
index c9f3b6d..418f2d6 100644
 4504         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
        5432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 4505   5433   
@@ -1,4 +1,4 @@
 4506   5434   
AWS4-ECDSA-P256-SHA256
 4507   5435   
20150830T123600Z
 4508   5436   
20150830/service/aws4_request
 4509         -
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
        5437  +
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
              \
 No newline at end of file
 4510   5438   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 4511   5439   
new file mode 100644
 4512   5440   
index 0000000..5d919c9
 4513         -
-- /dev/null
        5441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 4514   5442   
@@ -0,0 +1,2 @@
        5443  +
GET /./example HTTP/1.1
        5444  +
Host:example.amazonaws.com
 4515   5445   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 4516   5446   
new file mode 100644
 4517   5447   
index 0000000..7bee5c7
 4518         -
-- /dev/null
        5448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 4519   5449   
@@ -0,0 +1,12 @@
        5450  +
{
        5451  +
    "credentials": {
        5452  +
        "access_key_id": "AKIDEXAMPLE",
        5453  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5454  +
    },
        5455  +
    "expiration_in_seconds": 3600,
        5456  +
    "normalize": false,
        5457  +
    "region": "us-east-1",
        5458  +
    "service": "service",
        5459  +
    "sign_body": false,
        5460  +
    "timestamp": "2015-08-30T12:36:00Z"
        5461  +
}
              \
 No newline at end of file
 4520   5462   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4521   5463   
similarity index 99%
 4522   5464   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 4523   5465   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4524   5466   
index 8a4d33b..5f809da 100644
 4525         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
        5467  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4526   5468   
@@ -1,9 +1,9 @@
 4527   5469   
GET
 4528   5470   
//
 4529   5471   
 4530   5472   
host:example.amazonaws.com
 4531   5473   
x-amz-date:20150830T123600Z
 4532   5474   
x-amz-region-set:us-east-1
 4533   5475   
 4534   5476   
host;x-amz-date;x-amz-region-set
 4535         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5477  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4536   5478   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 4537   5479   
new file mode 100644
 4538   5480   
index 0000000..60179e9
 4539         -
-- /dev/null
        5481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 4540   5482   
@@ -0,0 +1 @@
        5483  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 4541   5484   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 4542   5485   
new file mode 100644
 4543   5486   
index 0000000..72bf1b7
 4544         -
-- /dev/null
        5487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 4545   5488   
@@ -0,0 +1,6 @@
        5489  +
GET // HTTP/1.1
        5490  +
Host:example.amazonaws.com
        5491  +
X-Amz-Date:20150830T123600Z
        5492  +
X-Amz-Region-Set:us-east-1
        5493  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        5494  +
 4546   5495   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4547   5496   
similarity index 99%
 4548   5497   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 4549   5498   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4550   5499   
index 874c01c..2b3bf67 100644
 4551         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
        5500  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4552   5501   
@@ -1,4 +1,4 @@
 4553   5502   
AWS4-ECDSA-P256-SHA256
 4554   5503   
20150830T123600Z
 4555   5504   
20150830/service/aws4_request
 4556         -
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
        5505  +
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
              \
 No newline at end of file
 4557   5506   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 4558   5507   
new file mode 100644
 4559   5508   
index 0000000..379dcb2
 4560         -
-- /dev/null
        5509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 4561   5510   
@@ -0,0 +1,4 @@
        5511  +
{
        5512  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5513  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5514  +
}
 4562   5515   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4563   5516   
similarity index 99%
 4564   5517   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 4565   5518   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4566   5519   
index 81d7b0b..d10ad29 100644
 4567         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
        5520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4568   5521   
@@ -1,7 +1,7 @@
 4569   5522   
GET
 4570   5523   
//
 4571   5524   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4572   5525   
host:example.amazonaws.com
 4573   5526   
 4574   5527   
host
 4575         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5528  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4576   5529   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 4577   5530   
new file mode 100644
 4578   5531   
index 0000000..d9bd824
 4579         -
-- /dev/null
        5532  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 4580   5533   
@@ -0,0 +1 @@
        5534  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 4581   5535   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 4582   5536   
new file mode 100644
 4583   5537   
index 0000000..19d1d46
 4584         -
-- /dev/null
        5538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 4585   5539   
@@ -0,0 +1,3 @@
        5540  +
GET //?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3046022100a3e0b71f92af44f8b58e94018ab4b3fddca86cacabaf94d4a100ab94f06c3bbf022100a6f920a313d8d01da331c95d6b12b4d51d90cad487a4a82c20eb5bb373d5f4d2 HTTP/1.1
        5541  +
Host:example.amazonaws.com
        5542  +
 4586   5543   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4587   5544   
similarity index 99%
 4588   5545   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 4589   5546   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4590   5547   
index 17e5279..24c8a5e 100644
 4591         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
        5548  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4592   5549   
@@ -1,4 +1,4 @@
 4593   5550   
AWS4-ECDSA-P256-SHA256
 4594   5551   
20150830T123600Z
 4595   5552   
20150830/service/aws4_request
 4596         -
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
        5553  +
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
              \
 No newline at end of file
 4597   5554   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 4598   5555   
new file mode 100644
 4599   5556   
index 0000000..25bc21e
 4600         -
-- /dev/null
        5557  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 4601   5558   
@@ -0,0 +1,2 @@
        5559  +
GET // HTTP/1.1
        5560  +
Host:example.amazonaws.com
 4602   5561   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 4603   5562   
new file mode 100644
 4604   5563   
index 0000000..0468d80
 4605         -
-- /dev/null
        5564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 4606   5565   
@@ -0,0 +1,12 @@
        5566  +
{
        5567  +
    "credentials": {
        5568  +
        "access_key_id": "AKIDEXAMPLE",
        5569  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5570  +
    },
        5571  +
    "expiration_in_seconds": 3600,
        5572  +
    "normalize": true,
        5573  +
    "region": "us-east-1",
        5574  +
    "service": "service",
        5575  +
    "sign_body": false,
        5576  +
    "timestamp": "2015-08-30T12:36:00Z"
        5577  +
}
              \
 No newline at end of file
 4607   5578   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4608   5579   
similarity index 99%
 4609   5580   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 4610   5581   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4611   5582   
index fdf9c48..a8e9e02 100644
 4612         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
        5583  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4613   5584   
@@ -1,9 +1,9 @@
 4614   5585   
GET
 4615   5586   
/example/
 4616   5587   
 4617   5588   
host:example.amazonaws.com
 4618   5589   
x-amz-date:20150830T123600Z
 4619   5590   
x-amz-region-set:us-east-1
 4620   5591   
 4621   5592   
host;x-amz-date;x-amz-region-set
 4622         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5593  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4623   5594   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 4624   5595   
new file mode 100644
 4625   5596   
index 0000000..ffe1b60
 4626         -
-- /dev/null
        5597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 4627   5598   
@@ -0,0 +1 @@
        5599  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 4628   5600   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 4629   5601   
new file mode 100644
 4630   5602   
index 0000000..3189f55
 4631         -
-- /dev/null
        5603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 4632   5604   
@@ -0,0 +1,6 @@
        5605  +
GET //example// HTTP/1.1
        5606  +
Host:example.amazonaws.com
        5607  +
X-Amz-Date:20150830T123600Z
        5608  +
X-Amz-Region-Set:us-east-1
        5609  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        5610  +
 4633   5611   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4634   5612   
similarity index 99%
 4635   5613   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 4636   5614   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4637   5615   
index 8f9c95e..430020e 100644
 4638         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
        5616  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4639   5617   
@@ -1,4 +1,4 @@
 4640   5618   
AWS4-ECDSA-P256-SHA256
 4641   5619   
20150830T123600Z
 4642   5620   
20150830/service/aws4_request
 4643         -
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
        5621  +
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
              \
 No newline at end of file
 4644   5622   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 4645   5623   
new file mode 100644
 4646   5624   
index 0000000..379dcb2
 4647         -
-- /dev/null
        5625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 4648   5626   
@@ -0,0 +1,4 @@
        5627  +
{
        5628  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5629  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5630  +
}
 4649   5631   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4650   5632   
similarity index 99%
 4651   5633   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 4652   5634   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4653   5635   
index 1046735..8d41e37 100644
 4654         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
        5636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4655   5637   
@@ -1,7 +1,7 @@
 4656   5638   
GET
 4657   5639   
/example/
 4658   5640   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4659   5641   
host:example.amazonaws.com
 4660   5642   
 4661   5643   
host
 4662         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5644  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4663   5645   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 4664   5646   
new file mode 100644
 4665   5647   
index 0000000..93a0fa4
 4666         -
-- /dev/null
        5648  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 4667   5649   
@@ -0,0 +1 @@
        5650  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 4668   5651   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 4669   5652   
new file mode 100644
 4670   5653   
index 0000000..65c8cb6
 4671         -
-- /dev/null
        5654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 4672   5655   
@@ -0,0 +1,3 @@
        5656  +
GET //example//?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3045022100ec452ebb2ae12447edb19c7c1824c5b5921650498ed70c3366d9bce4875f0095022007c29a38626d79722aa8f8882ea96003eaf2a135c4bed3394f24a068fded99f1 HTTP/1.1
        5657  +
Host:example.amazonaws.com
        5658  +
 4673   5659   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4674   5660   
similarity index 99%
 4675   5661   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 4676   5662   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4677   5663   
index b293cc2..0f4c4c5 100644
 4678         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
        5664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4679   5665   
@@ -1,4 +1,4 @@
 4680   5666   
AWS4-ECDSA-P256-SHA256
 4681   5667   
20150830T123600Z
 4682   5668   
20150830/service/aws4_request
 4683         -
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
        5669  +
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
              \
 No newline at end of file
 4684   5670   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4685   5671   
similarity index 65%
 4686   5672   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 4687   5673   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4688   5674   
index a4307ce..12e0931 100644
 4689         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        5675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4690   5676   
@@ -1,3 +1,2 @@
 4691   5677   
GET //example// HTTP/1.1
 4692   5678   
Host:example.amazonaws.com
 4693         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4694   5679   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 4695   5680   
new file mode 100644
 4696   5681   
index 0000000..7bee5c7
 4697         -
-- /dev/null
        5682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 4698   5683   
@@ -0,0 +1,12 @@
        5684  +
{
        5685  +
    "credentials": {
        5686  +
        "access_key_id": "AKIDEXAMPLE",
        5687  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5688  +
    },
        5689  +
    "expiration_in_seconds": 3600,
        5690  +
    "normalize": false,
        5691  +
    "region": "us-east-1",
        5692  +
    "service": "service",
        5693  +
    "sign_body": false,
        5694  +
    "timestamp": "2015-08-30T12:36:00Z"
        5695  +
}
              \
 No newline at end of file
 4699   5696   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4700   5697   
similarity index 99%
 4701   5698   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 4702   5699   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4703   5700   
index a9c55f6..76f55ed 100644
 4704         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
        5701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4705   5702   
@@ -1,9 +1,9 @@
 4706   5703   
GET
 4707   5704   
//example//
 4708   5705   
 4709   5706   
host:example.amazonaws.com
 4710   5707   
x-amz-date:20150830T123600Z
 4711   5708   
x-amz-region-set:us-east-1
 4712   5709   
 4713   5710   
host;x-amz-date;x-amz-region-set
 4714         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5711  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4715   5712   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 4716   5713   
new file mode 100644
 4717   5714   
index 0000000..de333b2
 4718         -
-- /dev/null
        5715  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 4719   5716   
@@ -0,0 +1 @@
        5717  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 4720   5718   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 4721   5719   
new file mode 100644
 4722   5720   
index 0000000..773ce63
 4723         -
-- /dev/null
        5721  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 4724   5722   
@@ -0,0 +1,6 @@
        5723  +
GET //example// HTTP/1.1
        5724  +
Host:example.amazonaws.com
        5725  +
X-Amz-Date:20150830T123600Z
        5726  +
X-Amz-Region-Set:us-east-1
        5727  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        5728  +
 4725   5729   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4726   5730   
similarity index 99%
 4727   5731   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 4728   5732   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4729   5733   
index 5c4c2cd..46c3265 100644
 4730         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
        5734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4731   5735   
@@ -1,4 +1,4 @@
 4732   5736   
AWS4-ECDSA-P256-SHA256
 4733   5737   
20150830T123600Z
 4734   5738   
20150830/service/aws4_request
 4735         -
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
        5739  +
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
              \
 No newline at end of file
 4736   5740   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 4737   5741   
new file mode 100644
 4738   5742   
index 0000000..379dcb2
 4739         -
-- /dev/null
        5743  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 4740   5744   
@@ -0,0 +1,4 @@
        5745  +
{
        5746  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5747  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5748  +
}
 4741   5749   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4742   5750   
similarity index 99%
 4743   5751   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 4744   5752   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4745   5753   
index c878ab4..6047ccf 100644
 4746         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
        5754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4747   5755   
@@ -1,7 +1,7 @@
 4748   5756   
GET
 4749   5757   
//example//
 4750   5758   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4751   5759   
host:example.amazonaws.com
 4752   5760   
 4753   5761   
host
 4754         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5762  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4755   5763   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 4756   5764   
new file mode 100644
 4757   5765   
index 0000000..d61fcd0
 4758         -
-- /dev/null
        5766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 4759   5767   
@@ -0,0 +1 @@
        5768  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 4760   5769   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 4761   5770   
new file mode 100644
 4762   5771   
index 0000000..3e37b5b
 4763         -
-- /dev/null
        5772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 4764   5773   
@@ -0,0 +1,3 @@
        5774  +
GET //example//?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3046022100b3e1640be9e64cd28d1ff4a1f157e9f3c751545d6e0a1f1c4e380fee08e8745b022100d9b667f2d38600993703f88b246b53ebb85faecfaf2de27cf39e43957e90d492 HTTP/1.1
        5775  +
Host:example.amazonaws.com
        5776  +
 4765   5777   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4766   5778   
similarity index 99%
 4767   5779   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 4768   5780   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4769   5781   
index 5f59645..2537d28 100644
 4770         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
        5782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4771   5783   
@@ -1,4 +1,4 @@
 4772   5784   
AWS4-ECDSA-P256-SHA256
 4773   5785   
20150830T123600Z
 4774   5786   
20150830/service/aws4_request
 4775         -
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
        5787  +
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
              \
 No newline at end of file
 4776   5788   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 4777   5789   
new file mode 100644
 4778   5790   
index 0000000..12e0931
 4779         -
-- /dev/null
        5791  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 4780   5792   
@@ -0,0 +1,2 @@
        5793  +
GET //example// HTTP/1.1
        5794  +
Host:example.amazonaws.com
 4781   5795   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 4782   5796   
new file mode 100644
 4783   5797   
index 0000000..0468d80
 4784         -
-- /dev/null
        5798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 4785   5799   
@@ -0,0 +1,12 @@
        5800  +
{
        5801  +
    "credentials": {
        5802  +
        "access_key_id": "AKIDEXAMPLE",
        5803  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5804  +
    },
        5805  +
    "expiration_in_seconds": 3600,
        5806  +
    "normalize": true,
        5807  +
    "region": "us-east-1",
        5808  +
    "service": "service",
        5809  +
    "sign_body": false,
        5810  +
    "timestamp": "2015-08-30T12:36:00Z"
        5811  +
}
              \
 No newline at end of file
 4786   5812   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 4787   5813   
new file mode 100644
 4788   5814   
index 0000000..0b2b616
 4789         -
-- /dev/null
        5815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 4790   5816   
@@ -0,0 +1,9 @@
        5817  +
GET
        5818  +
/example%20space/
        5819  +
        5820  +
host:example.amazonaws.com
        5821  +
x-amz-date:20150830T123600Z
        5822  +
x-amz-region-set:us-east-1
        5823  +
        5824  +
host;x-amz-date;x-amz-region-set
        5825  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4791   5826   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 4792   5827   
new file mode 100644
 4793   5828   
index 0000000..6e7841d
 4794         -
-- /dev/null
        5829  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 4795   5830   
@@ -0,0 +1 @@
        5831  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 4796   5832   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 4797   5833   
new file mode 100644
 4798   5834   
index 0000000..0969cd3
 4799         -
-- /dev/null
        5835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 4800   5836   
@@ -0,0 +1,6 @@
        5837  +
GET /example space/ HTTP/1.1
        5838  +
Host:example.amazonaws.com
        5839  +
X-Amz-Date:20150830T123600Z
        5840  +
X-Amz-Region-Set:us-east-1
        5841  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5842  +
 4801   5843   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4802   5844   
new file mode 100644
 4803   5845   
index 0000000..ddae6e2
 4804         -
-- /dev/null
        5846  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4805   5847   
@@ -0,0 +1,4 @@
        5848  +
AWS4-ECDSA-P256-SHA256
        5849  +
20150830T123600Z
        5850  +
20150830/service/aws4_request
        5851  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4806   5852   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4807   5853   
new file mode 100644
 4808   5854   
index 0000000..379dcb2
 4809         -
-- /dev/null
        5855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4810   5856   
@@ -0,0 +1,4 @@
        5857  +
{
        5858  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5859  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5860  +
}
 4811   5861   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4812   5862   
new file mode 100644
 4813   5863   
index 0000000..a66b3cb
 4814         -
-- /dev/null
        5864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4815   5865   
@@ -0,0 +1,7 @@
        5866  +
GET
        5867  +
/example%20space/
        5868  +
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
        5869  +
host:example.amazonaws.com
        5870  +
        5871  +
host
        5872  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4816   5873   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4817   5874   
new file mode 100644
 4818   5875   
index 0000000..b3253ae
 4819         -
-- /dev/null
        5876  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4820   5877   
@@ -0,0 +1 @@
        5878  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 4821   5879   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4822   5880   
new file mode 100644
 4823   5881   
index 0000000..9e335b2
 4824         -
-- /dev/null
        5882  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4825   5883   
@@ -0,0 +1,3 @@
        5884  +
GET /example space/?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402200bc73964284c5a0367aec4bc4c3e80c7425388c8f5ac963a3e0cc9437549bd2b022077b25c48bed62c31f1cc4bf78d56089953806d8132ccebf23907c9b4445db86c HTTP/1.1
        5885  +
Host:example.amazonaws.com
        5886  +
 4826   5887   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4827   5888   
new file mode 100644
 4828   5889   
index 0000000..b6ff6fb
 4829         -
-- /dev/null
        5890  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4830   5891   
@@ -0,0 +1,4 @@
        5892  +
AWS4-ECDSA-P256-SHA256
        5893  +
20150830T123600Z
        5894  +
20150830/service/aws4_request
        5895  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4831   5896   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4832   5897   
new file mode 100644
 4833   5898   
index 0000000..ab509ab
 4834         -
-- /dev/null
        5899  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4835   5900   
@@ -0,0 +1,2 @@
        5901  +
GET /example space/ HTTP/1.1
        5902  +
Host:example.amazonaws.com
 4836   5903   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4837   5904   
new file mode 100644
 4838   5905   
index 0000000..7bee5c7
 4839         -
-- /dev/null
        5906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4840   5907   
@@ -0,0 +1,12 @@
        5908  +
{
        5909  +
    "credentials": {
        5910  +
        "access_key_id": "AKIDEXAMPLE",
        5911  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5912  +
    },
        5913  +
    "expiration_in_seconds": 3600,
        5914  +
    "normalize": false,
        5915  +
    "region": "us-east-1",
        5916  +
    "service": "service",
        5917  +
    "sign_body": false,
        5918  +
    "timestamp": "2015-08-30T12:36:00Z"
        5919  +
}
              \
 No newline at end of file
 4841   5920   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4842   5921   
new file mode 100644
 4843   5922   
index 0000000..0b2b616
 4844         -
-- /dev/null
        5923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4845   5924   
@@ -0,0 +1,9 @@
        5925  +
GET
        5926  +
/example%20space/
        5927  +
        5928  +
host:example.amazonaws.com
        5929  +
x-amz-date:20150830T123600Z
        5930  +
x-amz-region-set:us-east-1
        5931  +
        5932  +
host;x-amz-date;x-amz-region-set
        5933  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4846   5934   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4847   5935   
new file mode 100644
 4848   5936   
index 0000000..e75ae08
 4849         -
-- /dev/null
        5937  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4850   5938   
@@ -0,0 +1 @@
        5939  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4851   5940   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4852   5941   
new file mode 100644
 4853   5942   
index 0000000..cb089db
 4854         -
-- /dev/null
        5943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4855   5944   
@@ -0,0 +1,6 @@
        5945  +
GET /example space/ HTTP/1.1
        5946  +
Host:example.amazonaws.com
        5947  +
X-Amz-Date:20150830T123600Z
        5948  +
X-Amz-Region-Set:us-east-1
        5949  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5950  +
 4856   5951   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4857   5952   
new file mode 100644
 4858   5953   
index 0000000..ddae6e2
 4859         -
-- /dev/null
        5954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4860   5955   
@@ -0,0 +1,4 @@
        5956  +
AWS4-ECDSA-P256-SHA256
        5957  +
20150830T123600Z
        5958  +
20150830/service/aws4_request
        5959  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4861   5960   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4862   5961   
new file mode 100644
 4863   5962   
index 0000000..379dcb2
 4864         -
-- /dev/null
        5963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4865   5964   
@@ -0,0 +1,4 @@
        5965  +
{
        5966  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5967  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5968  +
}
 4866   5969   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4867   5970   
new file mode 100644
 4868   5971   
index 0000000..a66b3cb
 4869         -
-- /dev/null
        5972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4870   5973   
@@ -0,0 +1,7 @@
        5974  +
GET
        5975  +
/example%20space/
        5976  +
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
        5977  +
host:example.amazonaws.com
        5978  +
        5979  +
host
        5980  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4871   5981   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4872   5982   
new file mode 100644
 4873   5983   
index 0000000..66a80c3
 4874         -
-- /dev/null
        5984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4875   5985   
@@ -0,0 +1 @@
        5986  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4876   5987   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4877   5988   
new file mode 100644
 4878   5989   
index 0000000..7d1b9d9
 4879         -
-- /dev/null
        5990  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4880   5991   
@@ -0,0 +1,3 @@
        5992  +
GET /example space/?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402207c82fe84466237eda8666f893df1d96a82da91509bb11252d82af8744bb2155702200405ec0f65fd883703a556c6d7d74cfb36a2cbbd3dabd884957809e6c6856325 HTTP/1.1
        5993  +
Host:example.amazonaws.com
        5994  +
 4881   5995   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4882   5996   
new file mode 100644
 4883   5997   
index 0000000..b6ff6fb
 4884         -
-- /dev/null
        5998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4885   5999   
@@ -0,0 +1,4 @@
        6000  +
AWS4-ECDSA-P256-SHA256
        6001  +
20150830T123600Z
        6002  +
20150830/service/aws4_request
        6003  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4886   6004   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4887   6005   
new file mode 100644
 4888   6006   
index 0000000..ab509ab
 4889         -
-- /dev/null
        6007  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4890   6008   
@@ -0,0 +1,2 @@
        6009  +
GET /example space/ HTTP/1.1
        6010  +
Host:example.amazonaws.com
 4891   6011   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4892   6012   
new file mode 100644
 4893   6013   
index 0000000..0468d80
 4894         -
-- /dev/null
        6014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4895   6015   
@@ -0,0 +1,12 @@
        6016  +
{
        6017  +
    "credentials": {
        6018  +
        "access_key_id": "AKIDEXAMPLE",
        6019  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6020  +
    },
        6021  +
    "expiration_in_seconds": 3600,
        6022  +
    "normalize": true,
        6023  +
    "region": "us-east-1",
        6024  +
    "service": "service",
        6025  +
    "sign_body": false,
        6026  +
    "timestamp": "2015-08-30T12:36:00Z"
        6027  +
}
              \
 No newline at end of file
 4896   6028   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4897   6029   
similarity index 99%
 4898   6030   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4899   6031   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4900   6032   
index b0db648..46d76bb 100644
 4901         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
        6033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4902   6034   
@@ -1,9 +1,9 @@
 4903   6035   
GET
 4904   6036   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4905   6037   
 4906   6038   
host:example.amazonaws.com
 4907   6039   
x-amz-date:20150830T123600Z
 4908   6040   
x-amz-region-set:us-east-1
 4909   6041   
 4910   6042   
host;x-amz-date;x-amz-region-set
 4911         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6043  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4912   6044   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4913   6045   
new file mode 100644
 4914   6046   
index 0000000..53c0cb6
 4915         -
-- /dev/null
        6047  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4916   6048   
@@ -0,0 +1 @@
        6049  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4917   6050   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4918   6051   
new file mode 100644
 4919   6052   
index 0000000..3bdb653
 4920         -
-- /dev/null
        6053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4921   6054   
@@ -0,0 +1,6 @@
        6055  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        6056  +
Host:example.amazonaws.com
        6057  +
X-Amz-Date:20150830T123600Z
        6058  +
X-Amz-Region-Set:us-east-1
        6059  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        6060  +
 4922   6061   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4923   6062   
similarity index 99%
 4924   6063   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4925   6064   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4926   6065   
index 20c7cd6..3b30173 100644
 4927         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
        6066  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4928   6067   
@@ -1,4 +1,4 @@
 4929   6068   
AWS4-ECDSA-P256-SHA256
 4930   6069   
20150830T123600Z
 4931   6070   
20150830/service/aws4_request
 4932         -
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
        6071  +
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
              \
 No newline at end of file
 4933   6072   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4934   6073   
new file mode 100644
 4935   6074   
index 0000000..379dcb2
 4936         -
-- /dev/null
        6075  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4937   6076   
@@ -0,0 +1,4 @@
        6077  +
{
        6078  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6079  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6080  +
}
 4938   6081   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4939   6082   
similarity index 99%
 4940   6083   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4941   6084   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4942   6085   
index f9fb726..7e93f58 100644
 4943         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
        6086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4944   6087   
@@ -1,7 +1,7 @@
 4945   6088   
GET
 4946   6089   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4947   6090   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4948   6091   
host:example.amazonaws.com
 4949   6092   
 4950   6093   
host
 4951         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6094  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4952   6095   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4953   6096   
new file mode 100644
 4954   6097   
index 0000000..48311a8
 4955         -
-- /dev/null
        6098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4956   6099   
@@ -0,0 +1 @@
        6100  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4957   6101   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4958   6102   
new file mode 100644
 4959   6103   
index 0000000..82da9be
 4960         -
-- /dev/null
        6104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4961   6105   
@@ -0,0 +1,3 @@
        6106  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3046022100e9480cf54bfa566c6225af6986818e36a79525af244316551c55f902494d774f0221008f15178ec18c589b3704ccfc9cd7daa410f148407f75bc5777afcca28470cfbb HTTP/1.1
        6107  +
Host:example.amazonaws.com
        6108  +
 4962   6109   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4963   6110   
similarity index 99%
 4964   6111   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4965   6112   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4966   6113   
index ef06e89..4aab9a2 100644
 4967         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
        6114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4968   6115   
@@ -1,4 +1,4 @@
 4969   6116   
AWS4-ECDSA-P256-SHA256
 4970   6117   
20150830T123600Z
 4971   6118   
20150830/service/aws4_request
 4972         -
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
        6119  +
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
              \
 No newline at end of file
 4973   6120   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4974   6121   
similarity index 80%
 4975   6122   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4976   6123   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4977   6124   
index da760cd..a149694 100644
 4978         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        6125  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4979   6126   
@@ -1,3 +1,2 @@
 4980   6127   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4981   6128   
Host:example.amazonaws.com
 4982         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4983   6129   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4984   6130   
new file mode 100644
 4985   6131   
index 0000000..0468d80
 4986         -
-- /dev/null
        6132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4987   6133   
@@ -0,0 +1,12 @@
        6134  +
{
        6135  +
    "credentials": {
        6136  +
        "access_key_id": "AKIDEXAMPLE",
        6137  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6138  +
    },
        6139  +
    "expiration_in_seconds": 3600,
        6140  +
    "normalize": true,
        6141  +
    "region": "us-east-1",
        6142  +
    "service": "service",
        6143  +
    "sign_body": false,
        6144  +
    "timestamp": "2015-08-30T12:36:00Z"
        6145  +
}
              \
 No newline at end of file
 4988   6146   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4989   6147   
new file mode 100644
 4990   6148   
index 0000000..0f1afe7
 4991         -
-- /dev/null
        6149  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4992   6150   
@@ -0,0 +1,9 @@
        6151  +
GET
        6152  +
/%E1%88%B4
        6153  +
        6154  +
host:example.amazonaws.com
        6155  +
x-amz-date:20150830T123600Z
        6156  +
x-amz-region-set:us-east-1
        6157  +
        6158  +
host;x-amz-date;x-amz-region-set
        6159  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4993   6160   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4994   6161   
new file mode 100644
 4995   6162   
index 0000000..4b9af6c
 4996         -
-- /dev/null
        6163  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4997   6164   
@@ -0,0 +1 @@
        6165  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4998   6166   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4999   6167   
new file mode 100644
 5000   6168   
index 0000000..d42d7b3
 5001         -
-- /dev/null
        6169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 5002   6170   
@@ -0,0 +1,6 @@
        6171  +
GET /ሴ HTTP/1.1
        6172  +
Host:example.amazonaws.com
        6173  +
X-Amz-Date:20150830T123600Z
        6174  +
X-Amz-Region-Set:us-east-1
        6175  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        6176  +
 5003   6177   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 5004   6178   
new file mode 100644
 5005   6179   
index 0000000..0827f62
 5006         -
-- /dev/null
        6180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 5007   6181   
@@ -0,0 +1,4 @@
        6182  +
AWS4-ECDSA-P256-SHA256
        6183  +
20150830T123600Z
        6184  +
20150830/service/aws4_request
        6185  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 5008   6186   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 5009   6187   
new file mode 100644
 5010   6188   
index 0000000..379dcb2
 5011         -
-- /dev/null
        6189  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 5012   6190   
@@ -0,0 +1,4 @@
        6191  +
{
        6192  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6193  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6194  +
}
 5013   6195   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 5014   6196   
new file mode 100644
 5015   6197   
index 0000000..a41a2f8
 5016         -
-- /dev/null
        6198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 5017   6199   
@@ -0,0 +1,7 @@
        6200  +
GET
        6201  +
/%E1%88%B4
        6202  +
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
        6203  +
host:example.amazonaws.com
        6204  +
        6205  +
host
        6206  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5018   6207   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 5019   6208   
new file mode 100644
 5020   6209   
index 0000000..a5c7f4f
 5021         -
-- /dev/null
        6210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 5022   6211   
@@ -0,0 +1 @@
        6212  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 5023   6213   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 5024   6214   
new file mode 100644
 5025   6215   
index 0000000..492ed33
 5026         -
-- /dev/null
        6216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 5027   6217   
@@ -0,0 +1,3 @@
        6218  +
GET /ሴ?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3045022100a6a54a9d29f463be9ee0822246866fdbf4d71ab2f0c1dd70da52bd3d4539ce6802204fb18b4ddab0e97af74ecb42e33d6d2f2ac2ae0cee9509f649506f1cd2954899 HTTP/1.1
        6219  +
Host:example.amazonaws.com
        6220  +
 5028   6221   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 5029   6222   
new file mode 100644
 5030   6223   
index 0000000..a93108f
 5031         -
-- /dev/null
        6224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 5032   6225   
@@ -0,0 +1,4 @@
        6226  +
AWS4-ECDSA-P256-SHA256
        6227  +
20150830T123600Z
        6228  +
20150830/service/aws4_request
        6229  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 5033   6230   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 5034   6231   
new file mode 100644
 5035   6232   
index 0000000..9e273f6
 5036         -
-- /dev/null
        6233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 5037   6234   
@@ -0,0 +1,2 @@
        6235  +
GET /ሴ HTTP/1.1
        6236  +
Host:example.amazonaws.com
 5038   6237   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 5039   6238   
new file mode 100644
 5040   6239   
index 0000000..0468d80
 5041         -
-- /dev/null
        6240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 5042   6241   
@@ -0,0 +1,12 @@
        6242  +
{
        6243  +
    "credentials": {
        6244  +
        "access_key_id": "AKIDEXAMPLE",
        6245  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6246  +
    },
        6247  +
    "expiration_in_seconds": 3600,
        6248  +
    "normalize": true,
        6249  +
    "region": "us-east-1",
        6250  +
    "service": "service",
        6251  +
    "sign_body": false,
        6252  +
    "timestamp": "2015-08-30T12:36:00Z"
        6253  +
}
              \
 No newline at end of file
 5043   6254   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 5044   6255   
similarity index 99%
 5045   6256   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 5046   6257   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 5047   6258   
index bb9d4bf..edc0bb4 100644
 5048         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
        6259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 5049   6260   
@@ -1,9 +1,9 @@
 5050   6261   
GET
 5051   6262   
/
 5052   6263   
Param1=value1
 5053   6264   
host:example.amazonaws.com
 5054   6265   
x-amz-date:20150830T123600Z
 5055   6266   
x-amz-region-set:us-east-1
 5056   6267   
 5057   6268   
host;x-amz-date;x-amz-region-set
 5058         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6269  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5059   6270   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 5060   6271   
new file mode 100644
 5061   6272   
index 0000000..ee9a272
 5062         -
-- /dev/null
        6273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 5063   6274   
@@ -0,0 +1 @@
        6275  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 5064   6276   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 5065   6277   
new file mode 100644
 5066   6278   
index 0000000..2090343
 5067         -
-- /dev/null
        6279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 5068   6280   
@@ -0,0 +1,6 @@
        6281  +
GET /?Param1=value1 HTTP/1.1
        6282  +
Host:example.amazonaws.com
        6283  +
X-Amz-Date:20150830T123600Z
        6284  +
X-Amz-Region-Set:us-east-1
        6285  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        6286  +
 5069   6287   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-string-to-sign.txt
 5070   6288   
similarity index 99%
 5071   6289   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-string-to-sign.txt
 5072   6290   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-string-to-sign.txt
 5073   6291   
index a176f1d..06ed74f 100644
 5074         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-string-to-sign.txt
        6292  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-string-to-sign.txt
 5075   6293   
@@ -1,4 +1,4 @@
 5076   6294   
AWS4-ECDSA-P256-SHA256
 5077   6295   
20150830T123600Z
 5078   6296   
20150830/service/aws4_request
 5079         -
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
        6297  +
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
              \
 No newline at end of file
 5080   6298   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 5081   6299   
new file mode 100644
 5082   6300   
index 0000000..379dcb2
 5083         -
-- /dev/null
        6301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 5084   6302   
@@ -0,0 +1,4 @@
        6303  +
{
        6304  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6305  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6306  +
}
 5085   6307   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 5086   6308   
similarity index 99%
 5087   6309   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 5088   6310   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 5089   6311   
index 344384b..a875d70 100644
 5090         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
        6312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 5091   6313   
@@ -1,7 +1,7 @@
 5092   6314   
GET
 5093   6315   
/
 5094   6316   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5095   6317   
host:example.amazonaws.com
 5096   6318   
 5097   6319   
host
 5098         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6320  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5099   6321   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 5100   6322   
new file mode 100644
 5101   6323   
index 0000000..ef93624
 5102         -
-- /dev/null
        6324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 5103   6325   
@@ -0,0 +1 @@
        6326  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 5104   6327   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 5105   6328   
new file mode 100644
 5106   6329   
index 0000000..92829f7
 5107         -
-- /dev/null
        6330  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 5108   6331   
@@ -0,0 +1,3 @@
        6332  +
GET /?Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3046022100d0e421c8dcfbc809d91211cb4588940f6567729d5f9542803c4121704ec85bf70221009bc7b39b796dc0b4436a08d0320e2e89a2a47724432a1060029a55ae05dc2e83 HTTP/1.1
        6333  +
Host:example.amazonaws.com
        6334  +
 5109   6335   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-string-to-sign.txt
 5110   6336   
similarity index 99%
 5111   6337   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-string-to-sign.txt
 5112   6338   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-string-to-sign.txt
 5113   6339   
index b625052..4ff9191 100644
 5114         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-string-to-sign.txt
        6340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-string-to-sign.txt
 5115   6341   
@@ -1,4 +1,4 @@
 5116   6342   
AWS4-ECDSA-P256-SHA256
 5117   6343   
20150830T123600Z
 5118   6344   
20150830/service/aws4_request
 5119         -
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
        6345  +
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
              \
 No newline at end of file
 5120   6346   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 5121   6347   
similarity index 67%
 5122   6348   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.req
 5123   6349   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 5124   6350   
index 970d0a0..f4a03bb 100644
 5125         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.req
        6351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 5126   6352   
@@ -1,3 +1,2 @@
 5127   6353   
GET /?Param1=value1 HTTP/1.1
 5128   6354   
Host:example.amazonaws.com
 5129         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5130   6355   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 5131   6356   
new file mode 100644
 5132   6357   
index 0000000..0468d80
 5133         -
-- /dev/null
        6358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 5134   6359   
@@ -0,0 +1,12 @@
        6360  +
{
        6361  +
    "credentials": {
        6362  +
        "access_key_id": "AKIDEXAMPLE",
        6363  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6364  +
    },
        6365  +
    "expiration_in_seconds": 3600,
        6366  +
    "normalize": true,
        6367  +
    "region": "us-east-1",
        6368  +
    "service": "service",
        6369  +
    "sign_body": false,
        6370  +
    "timestamp": "2015-08-30T12:36:00Z"
        6371  +
}
              \
 No newline at end of file
 5135   6372   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 5136   6373   
new file mode 100644
 5137   6374   
index 0000000..da07537
 5138         -
-- /dev/null
        6375  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 5139   6376   
@@ -0,0 +1,9 @@
        6377  +
GET
        6378  +
/
        6379  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        6380  +
host:example.amazonaws.com
        6381  +
x-amz-date:20150830T123600Z
        6382  +
x-amz-region-set:us-east-1
        6383  +
        6384  +
host;x-amz-date;x-amz-region-set
        6385  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5140   6386   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 5141   6387   
new file mode 100644
 5142   6388   
index 0000000..edb21e5
 5143         -
-- /dev/null
        6389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 5144   6390   
@@ -0,0 +1 @@
        6391  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 5145   6392   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 5146   6393   
new file mode 100644
 5147   6394   
index 0000000..e60394c
 5148         -
-- /dev/null
        6395  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 5149   6396   
@@ -0,0 +1,6 @@
        6397  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6398  +
Host:example.amazonaws.com
        6399  +
X-Amz-Date:20150830T123600Z
        6400  +
X-Amz-Region-Set:us-east-1
        6401  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        6402  +
 5150   6403   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 5151   6404   
new file mode 100644
 5152   6405   
index 0000000..1dfc886
 5153         -
-- /dev/null
        6406  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 5154   6407   
@@ -0,0 +1,4 @@
        6408  +
AWS4-ECDSA-P256-SHA256
        6409  +
20150830T123600Z
        6410  +
20150830/service/aws4_request
        6411  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 5155   6412   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 5156   6413   
new file mode 100644
 5157   6414   
index 0000000..379dcb2
 5158         -
-- /dev/null
        6415  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 5159   6416   
@@ -0,0 +1,4 @@
        6417  +
{
        6418  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6419  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6420  +
}
 5160   6421   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 5161   6422   
new file mode 100644
 5162   6423   
index 0000000..e94dc0c
 5163         -
-- /dev/null
        6424  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 5164   6425   
@@ -0,0 +1,7 @@
        6426  +
GET
        6427  +
/
        6428  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
        6429  +
host:example.amazonaws.com
        6430  +
        6431  +
host
        6432  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5165   6433   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 5166   6434   
new file mode 100644
 5167   6435   
index 0000000..7489437
 5168         -
-- /dev/null
        6436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 5169   6437   
@@ -0,0 +1 @@
        6438  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 5170   6439   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 5171   6440   
new file mode 100644
 5172   6441   
index 0000000..90c0e73
 5173         -
-- /dev/null
        6442  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 5174   6443   
@@ -0,0 +1,3 @@
        6444  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3046022100a1244805f7fd13f1c5f4824fe85052857f2c5b6820829562e3853715966a4f7102210091a4e9e79fd79fc7d4d580061730822d3228d15d584b7c5c16a4c490690740c5 HTTP/1.1
        6445  +
Host:example.amazonaws.com
        6446  +
 5175   6447   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 5176   6448   
new file mode 100644
 5177   6449   
index 0000000..ab8a711
 5178         -
-- /dev/null
        6450  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 5179   6451   
@@ -0,0 +1,4 @@
        6452  +
AWS4-ECDSA-P256-SHA256
        6453  +
20150830T123600Z
        6454  +
20150830/service/aws4_request
        6455  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 5180   6456   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 5181   6457   
new file mode 100644
 5182   6458   
index 0000000..368c6e3
 5183         -
-- /dev/null
        6459  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 5184   6460   
@@ -0,0 +1,2 @@
        6461  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6462  +
Host:example.amazonaws.com
 5185   6463   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 5186   6464   
new file mode 100644
 5187   6465   
index 0000000..0468d80
 5188         -
-- /dev/null
        6466  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 5189   6467   
@@ -0,0 +1,12 @@
        6468  +
{
        6469  +
    "credentials": {
        6470  +
        "access_key_id": "AKIDEXAMPLE",
        6471  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6472  +
    },
        6473  +
    "expiration_in_seconds": 3600,
        6474  +
    "normalize": true,
        6475  +
    "region": "us-east-1",
        6476  +
    "service": "service",
        6477  +
    "sign_body": false,
        6478  +
    "timestamp": "2015-08-30T12:36:00Z"
        6479  +
}
              \
 No newline at end of file
 5190   6480   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-canonical-request.txt
 5191   6481   
similarity index 99%
 5192   6482   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-canonical-request.txt
 5193   6483   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-canonical-request.txt
 5194   6484   
index 74f625a..3db56f7 100644
 5195         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-canonical-request.txt
        6485  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-canonical-request.txt
 5196   6486   
@@ -1,9 +1,9 @@
 5197   6487   
GET
 5198   6488   
/
 5199   6489   
Param1=value1&Param2=value2
 5200   6490   
host:example.amazonaws.com
 5201   6491   
x-amz-date:20150830T123600Z
 5202   6492   
x-amz-region-set:us-east-1
 5203   6493   
 5204   6494   
host;x-amz-date;x-amz-region-set
 5205         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6495  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5206   6496   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 5207   6497   
new file mode 100644
 5208   6498   
index 0000000..e6042bc
 5209         -
-- /dev/null
        6499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 5210   6500   
@@ -0,0 +1 @@
        6501  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 5211   6502   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 5212   6503   
new file mode 100644
 5213   6504   
index 0000000..5505969
 5214         -
-- /dev/null
        6505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 5215   6506   
@@ -0,0 +1,6 @@
        6507  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        6508  +
Host:example.amazonaws.com
        6509  +
X-Amz-Date:20150830T123600Z
        6510  +
X-Amz-Region-Set:us-east-1
        6511  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        6512  +
 5216   6513   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-string-to-sign.txt
 5217   6514   
similarity index 99%
 5218   6515   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-string-to-sign.txt
 5219   6516   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-string-to-sign.txt
 5220   6517   
index 44873b7..e8f5e31 100644
 5221         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-string-to-sign.txt
        6518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-string-to-sign.txt
 5222   6519   
@@ -1,4 +1,4 @@
 5223   6520   
AWS4-ECDSA-P256-SHA256
 5224   6521   
20150830T123600Z
 5225   6522   
20150830/service/aws4_request
 5226         -
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
        6523  +
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
              \
 No newline at end of file
 5227   6524   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 5228   6525   
new file mode 100644
 5229   6526   
index 0000000..379dcb2
 5230         -
-- /dev/null
        6527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 5231   6528   
@@ -0,0 +1,4 @@
        6529  +
{
        6530  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6531  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6532  +
}
 5232   6533   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-canonical-request.txt
 5233   6534   
similarity index 99%
 5234   6535   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-canonical-request.txt
 5235   6536   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-canonical-request.txt
 5236   6537   
index 6d30727..3fe6a9f 100644
 5237         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-canonical-request.txt
        6538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-canonical-request.txt
 5238   6539   
@@ -1,7 +1,7 @@
 5239   6540   
GET
 5240   6541   
/
 5241   6542   
Param1=value1&Param2=value2&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5242   6543   
host:example.amazonaws.com
 5243   6544   
 5244   6545   
host
 5245         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6546  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5246   6547   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 5247   6548   
new file mode 100644
 5248   6549   
index 0000000..3f35de8
 5249         -
-- /dev/null
        6550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 5250   6551   
@@ -0,0 +1 @@
        6552  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 5251   6553   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 5252   6554   
new file mode 100644
 5253   6555   
index 0000000..30b336b
 5254         -
-- /dev/null
        6556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 5255   6557   
@@ -0,0 +1,3 @@
        6558  +
GET /?Param2=value2&Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402202cbada4314f8da2b9dfa447db936428ad13f522f007110427e5c6c4dbf93762f02205ad19e24495835a7242c546eeec3dbdfcd538361fd9a67f99610a8adab3411e9 HTTP/1.1
        6559  +
Host:example.amazonaws.com
        6560  +
 5256   6561   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-string-to-sign.txt
 5257   6562   
similarity index 99%
 5258   6563   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-string-to-sign.txt
 5259   6564   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-string-to-sign.txt
 5260   6565   
index 99d0510..7f0565f 100644
 5261         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-string-to-sign.txt
        6566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-string-to-sign.txt
 5262   6567   
@@ -1,4 +1,4 @@
 5263   6568   
AWS4-ECDSA-P256-SHA256
 5264   6569   
20150830T123600Z
 5265   6570   
20150830/service/aws4_request
 5266         -
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
        6571  +
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
              \
 No newline at end of file
 5267   6572   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 5268   6573   
similarity index 100%
 5269   6574   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.req
 5270   6575   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 5271   6576   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 5272   6577   
new file mode 100644
 5273   6578   
index 0000000..0468d80
 5274         -
-- /dev/null
        6579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 5275   6580   
@@ -0,0 +1,12 @@
        6581  +
{
        6582  +
    "credentials": {
        6583  +
        "access_key_id": "AKIDEXAMPLE",
        6584  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6585  +
    },
        6586  +
    "expiration_in_seconds": 3600,
        6587  +
    "normalize": true,
        6588  +
    "region": "us-east-1",
        6589  +
    "service": "service",
        6590  +
    "sign_body": false,
        6591  +
    "timestamp": "2015-08-30T12:36:00Z"
        6592  +
}
              \
 No newline at end of file
 5276   6593   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5277   6594   
similarity index 99%
 5278   6595   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 5279   6596   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5280   6597   
index 816c862..cc4537a 100644
 5281         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
        6598  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5282   6599   
@@ -1,9 +1,9 @@
 5283   6600   
GET
 5284   6601   
/
 5285   6602   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 5286   6603   
host:example.amazonaws.com
 5287   6604   
x-amz-date:20150830T123600Z
 5288   6605   
x-amz-region-set:us-east-1
 5289   6606   
 5290   6607   
host;x-amz-date;x-amz-region-set
 5291         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6608  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5292   6609   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 5293   6610   
new file mode 100644
 5294   6611   
index 0000000..70d38c1
 5295         -
-- /dev/null
        6612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 5296   6613   
@@ -0,0 +1 @@
        6614  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 5297   6615   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 5298   6616   
new file mode 100644
 5299   6617   
index 0000000..0647eea
 5300         -
-- /dev/null
        6618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 5301   6619   
@@ -0,0 +1,6 @@
        6620  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        6621  +
Host:example.amazonaws.com
        6622  +
X-Amz-Date:20150830T123600Z
        6623  +
X-Amz-Region-Set:us-east-1
        6624  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        6625  +
 5302   6626   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5303   6627   
similarity index 99%
 5304   6628   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 5305   6629   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5306   6630   
index 6129fc5..cc19d14 100644
 5307         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
        6631  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5308   6632   
@@ -1,4 +1,4 @@
 5309   6633   
AWS4-ECDSA-P256-SHA256
 5310   6634   
20150830T123600Z
 5311   6635   
20150830/service/aws4_request
 5312         -
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
        6636  +
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
              \
 No newline at end of file
 5313   6637   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 5314   6638   
new file mode 100644
 5315   6639   
index 0000000..379dcb2
 5316         -
-- /dev/null
        6640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 5317   6641   
@@ -0,0 +1,4 @@
        6642  +
{
        6643  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6644  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6645  +
}
 5318   6646   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5319   6647   
similarity index 99%
 5320   6648   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 5321   6649   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5322   6650   
index b77ee9f..ed6a10e 100644
 5323         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
        6651  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5324   6652   
@@ -1,7 +1,7 @@
 5325   6653   
GET
 5326   6654   
/
 5327   6655   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5328   6656   
host:example.amazonaws.com
 5329   6657   
 5330   6658   
host
 5331         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6659  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5332   6660   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 5333   6661   
new file mode 100644
 5334   6662   
index 0000000..2ceba7b
 5335         -
-- /dev/null
        6663  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 5336   6664   
@@ -0,0 +1 @@
        6665  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 5337   6666   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 5338   6667   
new file mode 100644
 5339   6668   
index 0000000..0cd6d0a
 5340         -
-- /dev/null
        6669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 5341   6670   
@@ -0,0 +1,3 @@
        6671  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3046022100fa0918db3b6088ebabc41b614c1e60820cf46a58a5e939bf27ab43869e60133e022100f2b594597c9f6266cae0f17de30e2776827431f7cb63224530cf7718f38df0b0 HTTP/1.1
        6672  +
Host:example.amazonaws.com
        6673  +
 5342   6674   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5343   6675   
similarity index 99%
 5344   6676   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 5345   6677   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5346   6678   
index 1cfed7a..aad1421 100644
 5347         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
        6679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5348   6680   
@@ -1,4 +1,4 @@
 5349   6681   
AWS4-ECDSA-P256-SHA256
 5350   6682   
20150830T123600Z
 5351   6683   
20150830/service/aws4_request
 5352         -
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
        6684  +
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
              \
 No newline at end of file
 5353   6685   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5354   6686   
similarity index 86%
 5355   6687   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 5356   6688   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5357   6689   
index d2833b3..36b2fe3 100644
 5358         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        6690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5359   6691   
@@ -1,3 +1,2 @@
 5360   6692   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 5361   6693   
Host:example.amazonaws.com
 5362         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5363   6694   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 5364   6695   
new file mode 100644
 5365   6696   
index 0000000..0468d80
 5366         -
-- /dev/null
        6697  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 5367   6698   
@@ -0,0 +1,12 @@
        6699  +
{
        6700  +
    "credentials": {
        6701  +
        "access_key_id": "AKIDEXAMPLE",
        6702  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6703  +
    },
        6704  +
    "expiration_in_seconds": 3600,
        6705  +
    "normalize": true,
        6706  +
    "region": "us-east-1",
        6707  +
    "service": "service",
        6708  +
    "sign_body": false,
        6709  +
    "timestamp": "2015-08-30T12:36:00Z"
        6710  +
}
              \
 No newline at end of file
 5368   6711   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 5369   6712   
new file mode 100644
 5370   6713   
index 0000000..76db73d
 5371         -
-- /dev/null
        6714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 5372   6715   
@@ -0,0 +1,9 @@
        6716  +
GET
        6717  +
/
        6718  +
        6719  +
host:example.amazonaws.com
        6720  +
x-amz-date:20150830T123600Z
        6721  +
x-amz-region-set:us-east-1
        6722  +
        6723  +
host;x-amz-date;x-amz-region-set
        6724  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5373   6725   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 5374   6726   
new file mode 100644
 5375   6727   
index 0000000..281cc62
 5376         -
-- /dev/null
        6728  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 5377   6729   
@@ -0,0 +1 @@
        6730  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 5378   6731   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 5379   6732   
new file mode 100644
 5380   6733   
index 0000000..cce9925
 5381         -
-- /dev/null
        6734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 5382   6735   
@@ -0,0 +1,6 @@
        6736  +
GET / HTTP/1.1
        6737  +
Host:example.amazonaws.com
        6738  +
X-Amz-Date:20150830T123600Z
        6739  +
X-Amz-Region-Set:us-east-1
        6740  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        6741  +
 5383   6742   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 5384   6743   
new file mode 100644
 5385   6744   
index 0000000..600f1d8
 5386         -
-- /dev/null
        6745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 5387   6746   
@@ -0,0 +1,4 @@
        6747  +
AWS4-ECDSA-P256-SHA256
        6748  +
20150830T123600Z
        6749  +
20150830/service/aws4_request
        6750  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5388   6751   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 5389   6752   
new file mode 100644
 5390   6753   
index 0000000..379dcb2
 5391         -
-- /dev/null
        6754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 5392   6755   
@@ -0,0 +1,4 @@
        6756  +
{
        6757  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6758  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6759  +
}
 5393   6760   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 5394   6761   
new file mode 100644
 5395   6762   
index 0000000..779c51c
 5396         -
-- /dev/null
        6763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 5397   6764   
@@ -0,0 +1,7 @@
        6765  +
GET
        6766  +
/
        6767  +
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
        6768  +
host:example.amazonaws.com
        6769  +
        6770  +
host
        6771  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5398   6772   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 5399   6773   
new file mode 100644
 5400   6774   
index 0000000..2979e5e
 5401         -
-- /dev/null
        6775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 5402   6776   
@@ -0,0 +1 @@
        6777  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 5403   6778   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 5404   6779   
new file mode 100644
 5405   6780   
index 0000000..1b3179c
 5406         -
-- /dev/null
        6781  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 5407   6782   
@@ -0,0 +1,3 @@
        6783  +
GET /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304502210081f33b59ccf8c4a729d3e3f6ac355cfb6bb0f9c507b180ed7eb2756202cfe220022074f44519d0f1da1d20737fec456ac86aa876379e4531633c14972b88bc268eb7 HTTP/1.1
        6784  +
Host:example.amazonaws.com
        6785  +
 5408   6786   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 5409   6787   
new file mode 100644
 5410   6788   
index 0000000..6e29a7e
 5411         -
-- /dev/null
        6789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 5412   6790   
@@ -0,0 +1,4 @@
        6791  +
AWS4-ECDSA-P256-SHA256
        6792  +
20150830T123600Z
        6793  +
20150830/service/aws4_request
        6794  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5413   6795   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5414   6796   
similarity index 60%
 5415   6797   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 5416   6798   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5417   6799   
index 0f7a9bf..e659c3b 100644
 5418         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        6800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5419   6801   
@@ -1,3 +1,2 @@
 5420   6802   
GET / HTTP/1.1
 5421   6803   
Host:example.amazonaws.com
 5422         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5423   6804   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 5424   6805   
new file mode 100644
 5425   6806   
index 0000000..0468d80
 5426         -
-- /dev/null
        6807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 5427   6808   
@@ -0,0 +1,12 @@
        6809  +
{
        6810  +
    "credentials": {
        6811  +
        "access_key_id": "AKIDEXAMPLE",
        6812  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6813  +
    },
        6814  +
    "expiration_in_seconds": 3600,
        6815  +
    "normalize": true,
        6816  +
    "region": "us-east-1",
        6817  +
    "service": "service",
        6818  +
    "sign_body": false,
        6819  +
    "timestamp": "2015-08-30T12:36:00Z"
        6820  +
}
              \
 No newline at end of file
 5428   6821   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 5429   6822   
new file mode 100644
 5430   6823   
index 0000000..8841ddf
 5431         -
-- /dev/null
        6824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 5432   6825   
@@ -0,0 +1,9 @@
        6826  +
GET
        6827  +
/
        6828  +
%E1%88%B4=bar
        6829  +
host:example.amazonaws.com
        6830  +
x-amz-date:20150830T123600Z
        6831  +
x-amz-region-set:us-east-1
        6832  +
        6833  +
host;x-amz-date;x-amz-region-set
        6834  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5433   6835   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 5434   6836   
new file mode 100644
 5435   6837   
index 0000000..1497add
 5436         -
-- /dev/null
        6838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 5437   6839   
@@ -0,0 +1 @@
        6840  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 5438   6841   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 5439   6842   
new file mode 100644
 5440   6843   
index 0000000..961bc10
 5441         -
-- /dev/null
        6844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 5442   6845   
@@ -0,0 +1,6 @@
        6846  +
GET /?ሴ=bar HTTP/1.1
        6847  +
Host:example.amazonaws.com
        6848  +
X-Amz-Date:20150830T123600Z
        6849  +
X-Amz-Region-Set:us-east-1
        6850  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        6851  +
 5443   6852   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 5444   6853   
new file mode 100644
 5445   6854   
index 0000000..e78ed70
 5446         -
-- /dev/null
        6855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 5447   6856   
@@ -0,0 +1,4 @@
        6857  +
AWS4-ECDSA-P256-SHA256
        6858  +
20150830T123600Z
        6859  +
20150830/service/aws4_request
        6860  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 5448   6861   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 5449   6862   
new file mode 100644
 5450   6863   
index 0000000..379dcb2
 5451         -
-- /dev/null
        6864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 5452   6865   
@@ -0,0 +1,4 @@
        6866  +
{
        6867  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6868  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6869  +
}
 5453   6870   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 5454   6871   
new file mode 100644
 5455   6872   
index 0000000..6d5ae93
 5456         -
-- /dev/null
        6873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 5457   6874   
@@ -0,0 +1,7 @@
        6875  +
GET
        6876  +
/
        6877  +
%E1%88%B4=bar&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
        6878  +
host:example.amazonaws.com
        6879  +
        6880  +
host
        6881  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5458   6882   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 5459   6883   
new file mode 100644
 5460   6884   
index 0000000..92107f2
 5461         -
-- /dev/null
        6885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 5462   6886   
@@ -0,0 +1 @@
        6887  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 5463   6888   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 5464   6889   
new file mode 100644
 5465   6890   
index 0000000..bb8a75b
 5466         -
-- /dev/null
        6891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 5467   6892   
@@ -0,0 +1,3 @@
        6893  +
GET /?ሴ=bar&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3046022100d0001873de6d6746a050e3dff894b0fbccce0bbe7fad8e4c0960761d053a695b022100fb8f5d77ebb1854be7a8e1ea56428aba3a2f3bf23211e1049a2fa18b56784b63 HTTP/1.1
        6894  +
Host:example.amazonaws.com
        6895  +
 5468   6896   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 5469   6897   
new file mode 100644
 5470   6898   
index 0000000..9fa94c7
 5471         -
-- /dev/null
        6899  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 5472   6900   
@@ -0,0 +1,4 @@
        6901  +
AWS4-ECDSA-P256-SHA256
        6902  +
20150830T123600Z
        6903  +
20150830/service/aws4_request
        6904  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 5473   6905   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 5474   6906   
new file mode 100644
 5475   6907   
index 0000000..aff333a
 5476         -
-- /dev/null
        6908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 5477   6909   
@@ -0,0 +1,2 @@
        6910  +
GET /?ሴ=bar HTTP/1.1
        6911  +
Host:example.amazonaws.com
 5478   6912   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 5479   6913   
new file mode 100644
 5480   6914   
index 0000000..a334e18
 5481         -
-- /dev/null
        6915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 5482   6916   
@@ -0,0 +1,13 @@
        6917  +
{
        6918  +
    "credentials": {
        6919  +
        "access_key_id": "AKIDEXAMPLE",
        6920  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6921  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6922  +
    },
        6923  +
    "expiration_in_seconds": 3600,
        6924  +
    "normalize": true,
        6925  +
    "region": "us-east-1",
        6926  +
    "service": "service",
        6927  +
    "sign_body": false,
        6928  +
    "timestamp": "2015-08-30T12:36:00Z"
        6929  +
}
              \
 No newline at end of file
 5483   6930   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5484   6931   
similarity index 99%
 5485   6932   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 5486   6933   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5487   6934   
index f14defd..0e9ad42 100644
 5488         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
        6935  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5489   6936   
@@ -1,10 +1,10 @@
 5490   6937   
GET
 5491   6938   
/
 5492   6939   
 5493   6940   
host:example.amazonaws.com
 5494   6941   
x-amz-date:20150830T123600Z
 5495   6942   
x-amz-region-set:us-east-1
 5496   6943   
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
 5497   6944   
 5498   6945   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5499         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6946  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5500   6947   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 5501   6948   
new file mode 100644
 5502   6949   
index 0000000..a7673b5
 5503         -
-- /dev/null
        6950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 5504   6951   
@@ -0,0 +1 @@
        6952  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 5505   6953   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 5506   6954   
new file mode 100644
 5507   6955   
index 0000000..ed16e76
 5508         -
-- /dev/null
        6956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 5509   6957   
@@ -0,0 +1,7 @@
        6958  +
GET / HTTP/1.1
        6959  +
Host:example.amazonaws.com
        6960  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6961  +
X-Amz-Date:20150830T123600Z
        6962  +
X-Amz-Region-Set:us-east-1
        6963  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set;x-amz-security-token, Signature=30450221008f4516c8850ed9eb29502658d1f0e0f6cabc11a44963c558efd1dd8e9fb084a0022032e47df89ad1a5b4e2b82d3a68dbe31d6ef8e1ea8c3815b2097538c4695d184e
        6964  +
 5510   6965   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-string-to-sign.txt
 5511   6966   
similarity index 99%
 5512   6967   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-string-to-sign.txt
 5513   6968   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-string-to-sign.txt
 5514   6969   
index 4edece5..6c1ec65 100644
 5515         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-string-to-sign.txt
        6970  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-string-to-sign.txt
 5516   6971   
@@ -1,4 +1,4 @@
 5517   6972   
AWS4-ECDSA-P256-SHA256
 5518   6973   
20150830T123600Z
 5519   6974   
20150830/service/aws4_request
 5520         -
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
        6975  +
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
              \
 No newline at end of file
 5521   6976   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 5522   6977   
new file mode 100644
 5523   6978   
index 0000000..379dcb2
 5524         -
-- /dev/null
        6979  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 5525   6980   
@@ -0,0 +1,4 @@
        6981  +
{
        6982  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6983  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6984  +
}
 5526   6985   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5527   6986   
similarity index 99%
 5528   6987   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 5529   6988   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5530   6989   
index 7c042af..1876b42 100644
 5531         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
        6990  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5532   6991   
@@ -1,7 +1,7 @@
 5533   6992   
GET
 5534   6993   
/
 5535   6994   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Security-Token=6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267&X-Amz-SignedHeaders=host
 5536   6995   
host:example.amazonaws.com
 5537   6996   
 5538   6997   
host
 5539         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6998  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5540   6999   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 5541   7000   
new file mode 100644
 5542   7001   
index 0000000..903dfb4
 5543         -
-- /dev/null
        7002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 5544   7003   
@@ -0,0 +1 @@
        7004  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 5545   7005   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 5546   7006   
new file mode 100644
 5547   7007   
index 0000000..bf1d246
 5548         -
-- /dev/null
        7008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 5549   7009   
@@ -0,0 +1,3 @@
        7010  +
GET /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Security-Token=6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304502207cdbb61908b9d4cf6c84e03ff7dac10a9a4637784d335a7d8bf1d1a6931bc3ba022100ee78b054e5441b71ab155632174df6b68bdaa00eabf939bf0c7299e1367e02a4 HTTP/1.1
        7011  +
Host:example.amazonaws.com
        7012  +
 5550   7013   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-string-to-sign.txt
 5551   7014   
similarity index 99%
 5552   7015   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-string-to-sign.txt
 5553   7016   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-string-to-sign.txt
 5554   7017   
index 0fd066a..f1b1790 100644
 5555         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-string-to-sign.txt
        7018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-string-to-sign.txt
 5556   7019   
@@ -1,4 +1,4 @@
 5557   7020   
AWS4-ECDSA-P256-SHA256
 5558   7021   
20150830T123600Z
 5559   7022   
20150830/service/aws4_request
 5560         -
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
        7023  +
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
              \
 No newline at end of file
 5561   7024   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5562   7025   
similarity index 60%
 5563   7026   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 5564   7027   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5565   7028   
index 0f7a9bf..e659c3b 100644
 5566         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        7029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5567   7030   
@@ -1,3 +1,2 @@
 5568   7031   
GET / HTTP/1.1
 5569   7032   
Host:example.amazonaws.com
 5570         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5571   7033   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 5572   7034   
new file mode 100644
 5573   7035   
index 0000000..76db73d
 5574         -
-- /dev/null
        7036  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 5575   7037   
@@ -0,0 +1,9 @@
        7038  +
GET
        7039  +
/
        7040  +
        7041  +
host:example.amazonaws.com
        7042  +
x-amz-date:20150830T123600Z
        7043  +
x-amz-region-set:us-east-1
        7044  +
        7045  +
host;x-amz-date;x-amz-region-set
        7046  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5576   7047   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 5577   7048   
new file mode 100644
 5578   7049   
index 0000000..0468d80
 5579         -
-- /dev/null
        7050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 5580   7051   
@@ -0,0 +1,12 @@
        7052  +
{
        7053  +
    "credentials": {
        7054  +
        "access_key_id": "AKIDEXAMPLE",
        7055  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7056  +
    },
        7057  +
    "expiration_in_seconds": 3600,
        7058  +
    "normalize": true,
        7059  +
    "region": "us-east-1",
        7060  +
    "service": "service",
        7061  +
    "sign_body": false,
        7062  +
    "timestamp": "2015-08-30T12:36:00Z"
        7063  +
}
              \
 No newline at end of file
 5581   7064   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 5582   7065   
new file mode 100644
 5583   7066   
index 0000000..76db73d
 5584         -
-- /dev/null
        7067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 5585   7068   
@@ -0,0 +1,9 @@
        7069  +
GET
        7070  +
/
        7071  +
        7072  +
host:example.amazonaws.com
        7073  +
x-amz-date:20150830T123600Z
        7074  +
x-amz-region-set:us-east-1
        7075  +
        7076  +
host;x-amz-date;x-amz-region-set
        7077  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5586   7078   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 5587   7079   
new file mode 100644
 5588   7080   
index 0000000..a96ff24
 5589         -
-- /dev/null
        7081  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 5590   7082   
@@ -0,0 +1 @@
        7083  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 5591   7084   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 5592   7085   
new file mode 100644
 5593   7086   
index 0000000..689078b
 5594         -
-- /dev/null
        7087  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 5595   7088   
@@ -0,0 +1,6 @@
        7089  +
GET / HTTP/1.1
        7090  +
Host:example.amazonaws.com
        7091  +
X-Amz-Date:20150830T123600Z
        7092  +
X-Amz-Region-Set:us-east-1
        7093  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        7094  +
 5596   7095   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 5597   7096   
new file mode 100644
 5598   7097   
index 0000000..600f1d8
 5599         -
-- /dev/null
        7098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 5600   7099   
@@ -0,0 +1,4 @@
        7100  +
AWS4-ECDSA-P256-SHA256
        7101  +
20150830T123600Z
        7102  +
20150830/service/aws4_request
        7103  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5601   7104   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 5602   7105   
new file mode 100644
 5603   7106   
index 0000000..379dcb2
 5604         -
-- /dev/null
        7107  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 5605   7108   
@@ -0,0 +1,4 @@
        7109  +
{
        7110  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7111  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7112  +
}
 5606   7113   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 5607   7114   
new file mode 100644
 5608   7115   
index 0000000..779c51c
 5609         -
-- /dev/null
        7116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 5610   7117   
@@ -0,0 +1,7 @@
        7118  +
GET
        7119  +
/
        7120  +
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
        7121  +
host:example.amazonaws.com
        7122  +
        7123  +
host
        7124  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5611   7125   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 5612   7126   
new file mode 100644
 5613   7127   
index 0000000..cc42158
 5614         -
-- /dev/null
        7128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 5615   7129   
@@ -0,0 +1 @@
        7130  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 5616   7131   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 5617   7132   
new file mode 100644
 5618   7133   
index 0000000..dc6d01d
 5619         -
-- /dev/null
        7134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 5620   7135   
@@ -0,0 +1,3 @@
        7136  +
GET /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3045022100a28466db6c76223d5aa6ed436a8451b30e21ba0a076e7f2f943dd1f3d2816249022049e4b3746929cd2a2cb7b7984dbe0f5d40a300e7d9a7a7f1307c196b6f96b61a HTTP/1.1
        7137  +
Host:example.amazonaws.com
        7138  +
 5621   7139   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 5622   7140   
new file mode 100644
 5623   7141   
index 0000000..6e29a7e
 5624         -
-- /dev/null
        7142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 5625   7143   
@@ -0,0 +1,4 @@
        7144  +
AWS4-ECDSA-P256-SHA256
        7145  +
20150830T123600Z
        7146  +
20150830/service/aws4_request
        7147  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5626   7148   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 5627   7149   
new file mode 100644
 5628   7150   
index 0000000..e659c3b
 5629         -
-- /dev/null
        7151  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 5630   7152   
@@ -0,0 +1,2 @@
        7153  +
GET / HTTP/1.1
        7154  +
Host:example.amazonaws.com
 5631   7155   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 5632   7156   
new file mode 100644
 5633   7157   
index 0000000..600f1d8
 5634         -
-- /dev/null
        7158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 5635   7159   
@@ -0,0 +1,4 @@
        7160  +
AWS4-ECDSA-P256-SHA256
        7161  +
20150830T123600Z
        7162  +
20150830/service/aws4_request
        7163  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5636   7164   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 5637   7165   
new file mode 100644
 5638   7166   
index 0000000..0468d80
 5639         -
-- /dev/null
        7167  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 5640   7168   
@@ -0,0 +1,12 @@
        7169  +
{
        7170  +
    "credentials": {
        7171  +
        "access_key_id": "AKIDEXAMPLE",
        7172  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7173  +
    },
        7174  +
    "expiration_in_seconds": 3600,
        7175  +
    "normalize": true,
        7176  +
    "region": "us-east-1",
        7177  +
    "service": "service",
        7178  +
    "sign_body": false,
        7179  +
    "timestamp": "2015-08-30T12:36:00Z"
        7180  +
}
              \
 No newline at end of file
 5641   7181   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5642   7182   
similarity index 99%
 5643   7183   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 5644   7184   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5645   7185   
index a6942c1..e881ac7 100644
 5646         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
        7186  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5647   7187   
@@ -1,9 +1,9 @@
 5648   7188   
POST
 5649   7189   
/
 5650   7190   
 5651   7191   
host:example.amazonaws.com
 5652   7192   
x-amz-date:20150830T123600Z
 5653   7193   
x-amz-region-set:us-east-1
 5654   7194   
 5655   7195   
host;x-amz-date;x-amz-region-set
 5656         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7196  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5657   7197   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 5658   7198   
new file mode 100644
 5659   7199   
index 0000000..4210210
 5660         -
-- /dev/null
        7200  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 5661   7201   
@@ -0,0 +1 @@
        7202  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 5662   7203   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 5663   7204   
new file mode 100644
 5664   7205   
index 0000000..257b110
 5665         -
-- /dev/null
        7206  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 5666   7207   
@@ -0,0 +1,6 @@
        7208  +
POST / HTTP/1.1
        7209  +
Host:example.amazonaws.com
        7210  +
X-Amz-Date:20150830T123600Z
        7211  +
X-Amz-Region-Set:us-east-1
        7212  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        7213  +
 5667   7214   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5668   7215   
similarity index 99%
 5669   7216   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 5670   7217   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5671   7218   
index d5650cb..f8adf13 100644
 5672         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
        7219  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5673   7220   
@@ -1,4 +1,4 @@
 5674   7221   
AWS4-ECDSA-P256-SHA256
 5675   7222   
20150830T123600Z
 5676   7223   
20150830/service/aws4_request
 5677         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7224  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5678   7225   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 5679   7226   
new file mode 100644
 5680   7227   
index 0000000..379dcb2
 5681         -
-- /dev/null
        7228  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 5682   7229   
@@ -0,0 +1,4 @@
        7230  +
{
        7231  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7232  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7233  +
}
 5683   7234   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5684   7235   
similarity index 99%
 5685   7236   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 5686   7237   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5687   7238   
index e48ce07..5ea8e3c 100644
 5688         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
        7239  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5689   7240   
@@ -1,7 +1,7 @@
 5690   7241   
POST
 5691   7242   
/
 5692   7243   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5693   7244   
host:example.amazonaws.com
 5694   7245   
 5695   7246   
host
 5696         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7247  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5697   7248   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 5698   7249   
new file mode 100644
 5699   7250   
index 0000000..9e2069e
 5700         -
-- /dev/null
        7251  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 5701   7252   
@@ -0,0 +1 @@
        7253  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 5702   7254   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 5703   7255   
new file mode 100644
 5704   7256   
index 0000000..67f5d29
 5705         -
-- /dev/null
        7257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 5706   7258   
@@ -0,0 +1,3 @@
        7259  +
POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3044022100ebd5c442df864cd1fdd76e9d6e7548cac7ebaed57a93bcb3ac92af37ad5797fc021f1c4887de85feca28098f1dbab7fddaadb08a08564131881b0b5d151b4a2c77 HTTP/1.1
        7260  +
Host:example.amazonaws.com
        7261  +
 5707   7262   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5708   7263   
similarity index 99%
 5709   7264   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 5710   7265   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5711   7266   
index 34e3382..711c162 100644
 5712         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
        7267  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5713   7268   
@@ -1,4 +1,4 @@
 5714   7269   
AWS4-ECDSA-P256-SHA256
 5715   7270   
20150830T123600Z
 5716   7271   
20150830/service/aws4_request
 5717         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7272  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5718   7273   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5719   7274   
similarity index 61%
 5720   7275   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.req
 5721   7276   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5722   7277   
index 3dc4179..3f0a82a 100644
 5723         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.req
        7278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5724   7279   
@@ -1,3 +1,2 @@
 5725   7280   
POST / HTTP/1.1
 5726   7281   
Host:example.amazonaws.com
 5727         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5728   7282   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 5729   7283   
new file mode 100644
 5730   7284   
index 0000000..0468d80
 5731         -
-- /dev/null
        7285  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 5732   7286   
@@ -0,0 +1,12 @@
        7287  +
{
        7288  +
    "credentials": {
        7289  +
        "access_key_id": "AKIDEXAMPLE",
        7290  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7291  +
    },
        7292  +
    "expiration_in_seconds": 3600,
        7293  +
    "normalize": true,
        7294  +
    "region": "us-east-1",
        7295  +
    "service": "service",
        7296  +
    "sign_body": false,
        7297  +
    "timestamp": "2015-08-30T12:36:00Z"
        7298  +
}
              \
 No newline at end of file
 5733   7299   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5734   7300   
similarity index 99%
 5735   7301   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 5736   7302   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5737   7303   
index a8e1727..2883822 100644
 5738         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
        7304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5739   7305   
@@ -1,10 +1,10 @@
 5740   7306   
POST
 5741   7307   
/
 5742   7308   
 5743   7309   
host:example.amazonaws.com
 5744   7310   
my-header1:value1
 5745   7311   
x-amz-date:20150830T123600Z
 5746   7312   
x-amz-region-set:us-east-1
 5747   7313   
 5748   7314   
host;my-header1;x-amz-date;x-amz-region-set
 5749         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7315  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5750   7316   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 5751   7317   
new file mode 100644
 5752   7318   
index 0000000..e3c2e6e
 5753         -
-- /dev/null
        7319  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 5754   7320   
@@ -0,0 +1 @@
        7321  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 5755   7322   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 5756   7323   
new file mode 100644
 5757   7324   
index 0000000..1d6e288
 5758         -
-- /dev/null
        7325  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 5759   7326   
@@ -0,0 +1,7 @@
        7327  +
POST / HTTP/1.1
        7328  +
Host:example.amazonaws.com
        7329  +
My-Header1:value1
        7330  +
X-Amz-Date:20150830T123600Z
        7331  +
X-Amz-Region-Set:us-east-1
        7332  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        7333  +
 5760   7334   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5761   7335   
similarity index 99%
 5762   7336   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 5763   7337   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5764   7338   
index f6e3e9b..7c5236a 100644
 5765         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
        7339  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5766   7340   
@@ -1,4 +1,4 @@
 5767   7341   
AWS4-ECDSA-P256-SHA256
 5768   7342   
20150830T123600Z
 5769   7343   
20150830/service/aws4_request
 5770         -
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
        7344  +
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
              \
 No newline at end of file
 5771   7345   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 5772   7346   
new file mode 100644
 5773   7347   
index 0000000..379dcb2
 5774         -
-- /dev/null
        7348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 5775   7349   
@@ -0,0 +1,4 @@
        7350  +
{
        7351  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7352  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7353  +
}
 5776   7354   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5777   7355   
similarity index 99%
 5778   7356   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 5779   7357   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5780   7358   
index 0ae73e1..2cf3f29 100644
 5781         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
        7359  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5782   7360   
@@ -1,8 +1,8 @@
 5783   7361   
POST
 5784   7362   
/
 5785   7363   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host%3Bmy-header1
 5786   7364   
host:example.amazonaws.com
 5787   7365   
my-header1:value1
 5788   7366   
 5789   7367   
host;my-header1
 5790         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7368  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5791   7369   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 5792   7370   
new file mode 100644
 5793   7371   
index 0000000..2a08401
 5794         -
-- /dev/null
        7372  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 5795   7373   
@@ -0,0 +1 @@
        7374  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 5796   7375   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 5797   7376   
new file mode 100644
 5798   7377   
index 0000000..8d2343f
 5799         -
-- /dev/null
        7378  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 5800   7379   
@@ -0,0 +1,4 @@
        7380  +
POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=30450220398bbd17824da156cc02e783348c16e8c04d46d1ae6b31dec9422d8054193380022100f05d3e4f7ed4eed55e950488ed7c53975cdbb4713ec4a2c0af9351ab8fdc9a48 HTTP/1.1
        7381  +
Host:example.amazonaws.com
        7382  +
My-Header1:value1
        7383  +
 5801   7384   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5802   7385   
similarity index 99%
 5803   7386   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 5804   7387   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5805   7388   
index 8cb96bf..2c4db7a 100644
 5806         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
        7389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5807   7390   
@@ -1,4 +1,4 @@
 5808   7391   
AWS4-ECDSA-P256-SHA256
 5809   7392   
20150830T123600Z
 5810   7393   
20150830/service/aws4_request
 5811         -
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
        7394  +
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
              \
 No newline at end of file
 5812   7395   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5813   7396   
similarity index 69%
 5814   7397   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 5815   7398   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5816   7399   
index 0253f19..917720e 100644
 5817         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        7400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5818   7401   
@@ -1,4 +1,3 @@
 5819   7402   
POST / HTTP/1.1
 5820   7403   
Host:example.amazonaws.com
 5821   7404   
My-Header1:value1
 5822         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5823   7405   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 5824   7406   
new file mode 100644
 5825   7407   
index 0000000..0468d80
 5826         -
-- /dev/null
        7408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 5827   7409   
@@ -0,0 +1,12 @@
        7410  +
{
        7411  +
    "credentials": {
        7412  +
        "access_key_id": "AKIDEXAMPLE",
        7413  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7414  +
    },
        7415  +
    "expiration_in_seconds": 3600,
        7416  +
    "normalize": true,
        7417  +
    "region": "us-east-1",
        7418  +
    "service": "service",
        7419  +
    "sign_body": false,
        7420  +
    "timestamp": "2015-08-30T12:36:00Z"
        7421  +
}
              \
 No newline at end of file
 5828   7422   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5829   7423   
similarity index 99%
 5830   7424   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 5831   7425   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5832   7426   
index 1dc3ef8..164e65c 100644
 5833         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
        7427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5834   7428   
@@ -1,10 +1,10 @@
 5835   7429   
POST
 5836   7430   
/
 5837   7431   
 5838   7432   
host:example.amazonaws.com
 5839   7433   
my-header1:VALUE1
 5840   7434   
x-amz-date:20150830T123600Z
 5841   7435   
x-amz-region-set:us-east-1
 5842   7436   
 5843   7437   
host;my-header1;x-amz-date;x-amz-region-set
 5844         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7438  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5845   7439   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 5846   7440   
new file mode 100644
 5847   7441   
index 0000000..7072b0e
 5848         -
-- /dev/null
        7442  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 5849   7443   
@@ -0,0 +1 @@
        7444  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 5850   7445   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 5851   7446   
new file mode 100644
 5852   7447   
index 0000000..17f5e3e
 5853         -
-- /dev/null
        7448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 5854   7449   
@@ -0,0 +1,7 @@
        7450  +
POST / HTTP/1.1
        7451  +
Host:example.amazonaws.com
        7452  +
My-Header1:VALUE1
        7453  +
X-Amz-Date:20150830T123600Z
        7454  +
X-Amz-Region-Set:us-east-1
        7455  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        7456  +
 5855   7457   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5856   7458   
similarity index 99%
 5857   7459   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 5858   7460   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5859   7461   
index 59c7e45..620f54e 100644
 5860         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
        7462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5861   7463   
@@ -1,4 +1,4 @@
 5862   7464   
AWS4-ECDSA-P256-SHA256
 5863   7465   
20150830T123600Z
 5864   7466   
20150830/service/aws4_request
 5865         -
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
        7467  +
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
              \
 No newline at end of file
 5866   7468   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 5867   7469   
new file mode 100644
 5868   7470   
index 0000000..379dcb2
 5869         -
-- /dev/null
        7471  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 5870   7472   
@@ -0,0 +1,4 @@
        7473  +
{
        7474  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7475  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7476  +
}
 5871   7477   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5872   7478   
similarity index 99%
 5873   7479   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 5874   7480   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5875   7481   
index 377e6f3..23e0da3 100644
 5876         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
        7482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5877   7483   
@@ -1,8 +1,8 @@
 5878   7484   
POST
 5879   7485   
/
 5880   7486   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host%3Bmy-header1
 5881   7487   
host:example.amazonaws.com
 5882   7488   
my-header1:VALUE1
 5883   7489   
 5884   7490   
host;my-header1
 5885         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7491  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5886   7492   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 5887   7493   
new file mode 100644
 5888   7494   
index 0000000..a18acb8
 5889         -
-- /dev/null
        7495  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 5890   7496   
@@ -0,0 +1 @@
        7497  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 5891   7498   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 5892   7499   
new file mode 100644
 5893   7500   
index 0000000..7cbdcfa
 5894         -
-- /dev/null
        7501  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 5895   7502   
@@ -0,0 +1,4 @@
        7503  +
POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402205ed45a0daa4ef3d554ea401f8d2e4f434c77dd8dfd4a15d08786faf9d6fdedf50220501f847d3159358f7823190dfffebaa16ce5b3868921c06b255f7dc3c742d9ff HTTP/1.1
        7504  +
Host:example.amazonaws.com
        7505  +
My-Header1:VALUE1
        7506  +
 5896   7507   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5897   7508   
similarity index 99%
 5898   7509   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 5899   7510   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5900   7511   
index 84a7afd..0c90627 100644
 5901         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
        7512  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5902   7513   
@@ -1,4 +1,4 @@
 5903   7514   
AWS4-ECDSA-P256-SHA256
 5904   7515   
20150830T123600Z
 5905   7516   
20150830/service/aws4_request
 5906         -
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
        7517  +
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
              \
 No newline at end of file
 5907   7518   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5908   7519   
similarity index 69%
 5909   7520   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 5910   7521   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5911   7522   
index 3f9987a..5f14c91 100644
 5912         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        7523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5913   7524   
@@ -1,4 +1,3 @@
 5914   7525   
POST / HTTP/1.1
 5915   7526   
Host:example.amazonaws.com
 5916   7527   
My-Header1:VALUE1
 5917         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5918   7528   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 5919   7529   
new file mode 100644
 5920   7530   
index 0000000..8f1d5ce
 5921         -
-- /dev/null
        7531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 5922   7532   
@@ -0,0 +1,14 @@
        7533  +
{
        7534  +
    "credentials": {
        7535  +
        "access_key_id": "AKIDEXAMPLE",
        7536  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7537  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7538  +
    },
        7539  +
    "expiration_in_seconds": 3600,
        7540  +
    "normalize": true,
        7541  +
    "region": "us-east-1",
        7542  +
    "service": "service",
        7543  +
    "sign_body": false,
        7544  +
    "timestamp": "2015-08-30T12:36:00Z",
        7545  +
    "omit_session_token": true
        7546  +
}
 5923   7547   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5924   7548   
similarity index 99%
 5925   7549   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 5926   7550   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5927   7551   
index a6942c1..e881ac7 100644
 5928         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
        7552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5929   7553   
@@ -1,9 +1,9 @@
 5930   7554   
POST
 5931   7555   
/
 5932   7556   
 5933   7557   
host:example.amazonaws.com
 5934   7558   
x-amz-date:20150830T123600Z
 5935   7559   
x-amz-region-set:us-east-1
 5936   7560   
 5937   7561   
host;x-amz-date;x-amz-region-set
 5938         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7562  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5939   7563   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 5940   7564   
new file mode 100644
 5941   7565   
index 0000000..9c5ecb9
 5942         -
-- /dev/null
        7566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 5943   7567   
@@ -0,0 +1 @@
        7568  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 5944   7569   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5945   7570   
similarity index 52%
 5946   7571   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.req
 5947   7572   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5948   7573   
index 9d91775..61b6527 100644
 5949         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.req
        7574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5950   7575   
@@ -1,4 +1,7 @@
 5951   7576   
POST / HTTP/1.1
 5952   7577   
Host:example.amazonaws.com
        7578  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5953   7579   
X-Amz-Date:20150830T123600Z
 5954         -
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
        7580  +
X-Amz-Region-Set:us-east-1
        7581  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        7582  +
 5955   7583   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5956   7584   
similarity index 99%
 5957   7585   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 5958   7586   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5959   7587   
index d5650cb..f8adf13 100644
 5960         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
        7588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5961   7589   
@@ -1,4 +1,4 @@
 5962   7590   
AWS4-ECDSA-P256-SHA256
 5963   7591   
20150830T123600Z
 5964   7592   
20150830/service/aws4_request
 5965         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7593  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5966   7594   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 5967   7595   
new file mode 100644
 5968   7596   
index 0000000..379dcb2
 5969         -
-- /dev/null
        7597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 5970   7598   
@@ -0,0 +1,4 @@
        7599  +
{
        7600  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7601  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7602  +
}
 5971   7603   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5972   7604   
similarity index 99%
 5973   7605   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 5974   7606   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5975   7607   
index e48ce07..5ea8e3c 100644
 5976         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
        7608  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5977   7609   
@@ -1,7 +1,7 @@
 5978   7610   
POST
 5979   7611   
/
 5980   7612   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5981   7613   
host:example.amazonaws.com
 5982   7614   
 5983   7615   
host
 5984         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7616  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5985   7617   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 5986   7618   
new file mode 100644
 5987   7619   
index 0000000..ff8823a
 5988         -
-- /dev/null
        7620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 5989   7621   
@@ -0,0 +1 @@
        7622  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 5990   7623   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 5991   7624   
new file mode 100644
 5992   7625   
index 0000000..cfac41b
 5993         -
-- /dev/null
        7626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 5994   7627   
@@ -0,0 +1,3 @@
        7628  +
POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402204360bb65fe763c79526141ae439e4198190b7ffc048551a63c60b428bebc4c43022064a9d5c1f476566aea41fa60adfadc952164c53460553b2d1ae161d2f9b665f7 HTTP/1.1
        7629  +
Host:example.amazonaws.com
        7630  +
 5995   7631   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5996   7632   
similarity index 99%
 5997   7633   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 5998   7634   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5999   7635   
index 34e3382..711c162 100644
 6000         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
        7636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 6001   7637   
@@ -1,4 +1,4 @@
 6002   7638   
AWS4-ECDSA-P256-SHA256
 6003   7639   
20150830T123600Z
 6004   7640   
20150830/service/aws4_request
 6005         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7641  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 6006   7642   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 6007   7643   
similarity index 61%
 6008   7644   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 6009   7645   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 6010   7646   
index 3dc4179..3f0a82a 100644
 6011         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        7647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 6012   7648   
@@ -1,3 +1,2 @@
 6013   7649   
POST / HTTP/1.1
 6014   7650   
Host:example.amazonaws.com
 6015         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 6016   7651   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 6017   7652   
new file mode 100644
 6018   7653   
index 0000000..5187392
 6019         -
-- /dev/null
        7654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 6020   7655   
@@ -0,0 +1,14 @@
        7656  +
{
        7657  +
    "credentials": {
        7658  +
        "access_key_id": "AKIDEXAMPLE",
        7659  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7660  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7661  +
    },
        7662  +
    "expiration_in_seconds": 3600,
        7663  +
    "normalize": true,
        7664  +
    "region": "us-east-1",
        7665  +
    "service": "service",
        7666  +
    "sign_body": false,
        7667  +
    "timestamp": "2015-08-30T12:36:00Z",
        7668  +
    "omit_session_token": false
        7669  +
}
 6021   7670   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 6022   7671   
similarity index 99%
 6023   7672   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 6024   7673   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 6025   7674   
index dd408c8..e95924e 100644
 6026         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
        7675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 6027   7676   
@@ -1,10 +1,10 @@
 6028   7677   
POST
 6029   7678   
/
 6030   7679   
 6031   7680   
host:example.amazonaws.com
 6032   7681   
x-amz-date:20150830T123600Z
 6033   7682   
x-amz-region-set:us-east-1
 6034   7683   
x-amz-security-token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 6035   7684   
 6036   7685   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 6037         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7686  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6038   7687   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 6039   7688   
new file mode 100644
 6040   7689   
index 0000000..1573f07
 6041         -
-- /dev/null
        7690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 6042   7691   
@@ -0,0 +1 @@
        7692  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 6043   7693   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 6044   7694   
new file mode 100644
 6045   7695   
index 0000000..6ef9a08
 6046         -
-- /dev/null
        7696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 6047   7697   
@@ -0,0 +1,7 @@
        7698  +
POST / HTTP/1.1
        7699  +
Host:example.amazonaws.com
        7700  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        7701  +
X-Amz-Date:20150830T123600Z
        7702  +
X-Amz-Region-Set:us-east-1
        7703  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set;x-amz-security-token, Signature=3045022035115ac58fb923b0894e63eabf5864858c27f504b34bd707b569b2d6ee6a9c2e02210080ed7d2f3b7d52b4243890c596379ecd2066e9a1ac183d546ba07955ed5db306
        7704  +
 6048   7705   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 6049   7706   
similarity index 99%
 6050   7707   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 6051   7708   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 6052   7709   
index f352b54..3c3235f 100644
 6053         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
        7710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 6054   7711   
@@ -1,4 +1,4 @@
 6055   7712   
AWS4-ECDSA-P256-SHA256
 6056   7713   
20150830T123600Z
 6057   7714   
20150830/service/aws4_request
 6058         -
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
        7715  +
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
              \
 No newline at end of file
 6059   7716   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 6060   7717   
new file mode 100644
 6061   7718   
index 0000000..379dcb2
 6062         -
-- /dev/null
        7719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 6063   7720   
@@ -0,0 +1,4 @@
        7721  +
{
        7722  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7723  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7724  +
}
 6064   7725   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 6065   7726   
similarity index 99%
 6066   7727   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 6067   7728   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 6068   7729   
index 832cdc0..63b7de5 100644
 6069         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
        7730  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 6070   7731   
@@ -1,7 +1,7 @@
 6071   7732   
POST
 6072   7733   
/
 6073   7734   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-SignedHeaders=host
 6074   7735   
host:example.amazonaws.com
 6075   7736   
 6076   7737   
host
 6077         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7738  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6078   7739   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 6079   7740   
new file mode 100644
 6080   7741   
index 0000000..713f57c
 6081         -
-- /dev/null
        7742  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 6082   7743   
@@ -0,0 +1 @@
        7744  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 6083   7745   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 6084   7746   
new file mode 100644
 6085   7747   
index 0000000..32c3bb3
 6086         -
-- /dev/null
        7748  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 6087   7749   
@@ -0,0 +1,3 @@
        7750  +
POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402207e41aee2d6ea2a3868b3dea7b04caeb14d23ee696a76b93467213cd18467cbf502202a05e108d8feb197a62b4ea4b8a9d11aa4dc92bcfaf6e5fe185efac4bafd0802 HTTP/1.1
        7751  +
Host:example.amazonaws.com
        7752  +
 6088   7753   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 6089   7754   
similarity index 99%
 6090   7755   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 6091   7756   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 6092   7757   
index d7f3668..b46cd8c 100644
 6093         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
        7758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 6094   7759   
@@ -1,4 +1,4 @@
 6095   7760   
AWS4-ECDSA-P256-SHA256
 6096   7761   
20150830T123600Z
 6097   7762   
20150830/service/aws4_request
 6098         -
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
        7763  +
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
              \
 No newline at end of file
 6099   7764   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 6100   7765   
similarity index 60%
 6101   7766   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 6102   7767   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 6103   7768   
index 8b5efc8..3f0a82a 100644
 6104         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        7769  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 6105   7770   
@@ -1,3 +1,2 @@
 6106   7771   
POST / HTTP/1.1
 6107   7772   
Host:example.amazonaws.com
 6108         -
X-Amz-Date:20150830T123600Z
 6109   7773   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 6110   7774   
new file mode 100644
 6111   7775   
index 0000000..0468d80
 6112         -
-- /dev/null
        7776  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 6113   7777   
@@ -0,0 +1,12 @@
        7778  +
{
        7779  +
    "credentials": {
        7780  +
        "access_key_id": "AKIDEXAMPLE",
        7781  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7782  +
    },
        7783  +
    "expiration_in_seconds": 3600,
        7784  +
    "normalize": true,
        7785  +
    "region": "us-east-1",
        7786  +
    "service": "service",
        7787  +
    "sign_body": false,
        7788  +
    "timestamp": "2015-08-30T12:36:00Z"
        7789  +
}
              \
 No newline at end of file
 6114   7790   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 6115   7791   
similarity index 99%
 6116   7792   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 6117   7793   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 6118   7794   
index 02af60f..34b8c11 100644
 6119         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
        7795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 6120   7796   
@@ -1,9 +1,9 @@
 6121   7797   
POST
 6122   7798   
/
 6123   7799   
Param1=value1
 6124   7800   
host:example.amazonaws.com
 6125   7801   
x-amz-date:20150830T123600Z
 6126   7802   
x-amz-region-set:us-east-1
 6127   7803   
 6128   7804   
host;x-amz-date;x-amz-region-set
 6129         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7805  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6130   7806   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 6131   7807   
new file mode 100644
 6132   7808   
index 0000000..aac6427
 6133         -
-- /dev/null
        7809  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 6134   7810   
@@ -0,0 +1 @@
        7811  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 6135   7812   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 6136   7813   
new file mode 100644
 6137   7814   
index 0000000..a611436
 6138         -
-- /dev/null
        7815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 6139   7816   
@@ -0,0 +1,6 @@
        7817  +
POST /?Param1=value1 HTTP/1.1
        7818  +
Host:example.amazonaws.com
        7819  +
X-Amz-Date:20150830T123600Z
        7820  +
X-Amz-Region-Set:us-east-1
        7821  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        7822  +
 6140   7823   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
 6141   7824   
similarity index 99%
 6142   7825   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt
 6143   7826   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
 6144   7827   
index 4256b4f..ad88dff 100644
 6145         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt
        7828  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
 6146   7829   
@@ -1,4 +1,4 @@
 6147   7830   
AWS4-ECDSA-P256-SHA256
 6148   7831   
20150830T123600Z
 6149   7832   
20150830/service/aws4_request
 6150         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7833  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 6151   7834   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 6152   7835   
new file mode 100644
 6153   7836   
index 0000000..379dcb2
 6154         -
-- /dev/null
        7837  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 6155   7838   
@@ -0,0 +1,4 @@
        7839  +
{
        7840  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7841  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7842  +
}
 6156   7843   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 6157   7844   
similarity index 99%
 6158   7845   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 6159   7846   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 6160   7847   
index fa84bbd..76d5ad6 100644
 6161         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
        7848  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 6162   7849   
@@ -1,7 +1,7 @@
 6163   7850   
POST
 6164   7851   
/
 6165   7852   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 6166   7853   
host:example.amazonaws.com
 6167   7854   
 6168   7855   
host
 6169         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7856  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6170   7857   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 6171   7858   
new file mode 100644
 6172   7859   
index 0000000..4cb1c94
 6173         -
-- /dev/null
        7860  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 6174   7861   
@@ -0,0 +1 @@
        7862  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 6175   7863   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 6176   7864   
new file mode 100644
 6177   7865   
index 0000000..bd22b97
 6178         -
-- /dev/null
        7866  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 6179   7867   
@@ -0,0 +1,3 @@
        7868  +
POST /?Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3045022025fbe60840e867e12ed08dde14cb7b65da87de27afd012fd2bef96c7bc5b6bfe022100ab6eaea845c3d8b65b39d4506cdd36232f10dae092ddd4d54f887d2f979821d9 HTTP/1.1
        7869  +
Host:example.amazonaws.com
        7870  +
 6180   7871   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
 6181   7872   
similarity index 99%
 6182   7873   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt
 6183   7874   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
 6184   7875   
index de270ef..8c9d319 100644
 6185         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt
        7876  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
 6186   7877   
@@ -1,4 +1,4 @@
 6187   7878   
AWS4-ECDSA-P256-SHA256
 6188   7879   
20150830T123600Z
 6189   7880   
20150830/service/aws4_request
 6190         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7881  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 6191   7882   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 6192   7883   
similarity index 67%
 6193   7884   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.req
 6194   7885   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 6195   7886   
index 9157bc7..c9d6e5d 100644
 6196         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.req
        7887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 6197   7888   
@@ -1,3 +1,2 @@
 6198   7889   
POST /?Param1=value1 HTTP/1.1
 6199   7890   
Host:example.amazonaws.com
 6200         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 6201   7891   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 6202   7892   
new file mode 100644
 6203   7893   
index 0000000..0468d80
 6204         -
-- /dev/null
        7894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 6205   7895   
@@ -0,0 +1,12 @@
        7896  +
{
        7897  +
    "credentials": {
        7898  +
        "access_key_id": "AKIDEXAMPLE",
        7899  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7900  +
    },
        7901  +
    "expiration_in_seconds": 3600,
        7902  +
    "normalize": true,
        7903  +
    "region": "us-east-1",
        7904  +
    "service": "service",
        7905  +
    "sign_body": false,
        7906  +
    "timestamp": "2015-08-30T12:36:00Z"
        7907  +
}
              \
 No newline at end of file
 6206   7908   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 6207   7909   
similarity index 99%
 6208   7910   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 6209   7911   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 6210   7912   
index 02af60f..34b8c11 100644
 6211         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
        7913  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 6212   7914   
@@ -1,9 +1,9 @@
 6213   7915   
POST
 6214   7916   
/
 6215   7917   
Param1=value1
 6216   7918   
host:example.amazonaws.com
 6217   7919   
x-amz-date:20150830T123600Z
 6218   7920   
x-amz-region-set:us-east-1
 6219   7921   
 6220   7922   
host;x-amz-date;x-amz-region-set
 6221         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7923  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6222   7924   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 6223   7925   
new file mode 100644
 6224   7926   
index 0000000..34f75c8
 6225         -
-- /dev/null
        7927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 6226   7928   
@@ -0,0 +1 @@
        7929  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 6227   7930   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 6228   7931   
new file mode 100644
 6229   7932   
index 0000000..c731408
 6230         -
-- /dev/null
        7933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 6231   7934   
@@ -0,0 +1,6 @@
        7935  +
POST /?Param1=value1 HTTP/1.1
        7936  +
Host:example.amazonaws.com
        7937  +
X-Amz-Date:20150830T123600Z
        7938  +
X-Amz-Region-Set:us-east-1
        7939  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        7940  +
 6232   7941   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 6233   7942   
similarity index 99%
 6234   7943   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 6235   7944   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 6236   7945   
index 4256b4f..ad88dff 100644
 6237         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
        7946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 6238   7947   
@@ -1,4 +1,4 @@
 6239   7948   
AWS4-ECDSA-P256-SHA256
 6240   7949   
20150830T123600Z
 6241   7950   
20150830/service/aws4_request
 6242         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7951  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 6243   7952   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 6244   7953   
new file mode 100644
 6245   7954   
index 0000000..379dcb2
 6246         -
-- /dev/null
        7955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 6247   7956   
@@ -0,0 +1,4 @@
        7957  +
{
        7958  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7959  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7960  +
}
 6248   7961   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 6249   7962   
similarity index 99%
 6250   7963   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 6251   7964   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 6252   7965   
index fa84bbd..76d5ad6 100644
 6253         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
        7966  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 6254   7967   
@@ -1,7 +1,7 @@
 6255   7968   
POST
 6256   7969   
/
 6257   7970   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 6258   7971   
host:example.amazonaws.com
 6259   7972   
 6260   7973   
host
 6261         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7974  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6262   7975   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 6263   7976   
new file mode 100644
 6264   7977   
index 0000000..ae000d6
 6265         -
-- /dev/null
        7978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 6266   7979   
@@ -0,0 +1 @@
        7980  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 6267   7981   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 6268   7982   
new file mode 100644
 6269   7983   
index 0000000..a868f7d
 6270         -
-- /dev/null
        7984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 6271   7985   
@@ -0,0 +1,3 @@
        7986  +
POST /?Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402207a361da47ef99ca9b92f2a8d5f8f0214a9580491aa78413733200307498bae3d02207072a6f2a774fa336cc5fb84daf553f70ed1867f2e35563e3a24fdf4a329713d HTTP/1.1
        7987  +
Host:example.amazonaws.com
        7988  +
 6272   7989   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 6273   7990   
similarity index 99%
 6274   7991   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 6275   7992   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 6276   7993   
index de270ef..8c9d319 100644
 6277         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
        7994  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 6278   7995   
@@ -1,4 +1,4 @@
 6279   7996   
AWS4-ECDSA-P256-SHA256
 6280   7997   
20150830T123600Z
 6281   7998   
20150830/service/aws4_request
 6282         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7999  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 6283   8000   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6284   8001   
similarity index 67%
 6285   8002   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 6286   8003   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6287   8004   
index 9157bc7..c9d6e5d 100644
 6288         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        8005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6289   8006   
@@ -1,3 +1,2 @@
 6290   8007   
POST /?Param1=value1 HTTP/1.1
 6291   8008   
Host:example.amazonaws.com
 6292         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 6293   8009   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 6294   8010   
new file mode 100644
 6295   8011   
index 0000000..0468d80
 6296         -
-- /dev/null
        8012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 6297   8013   
@@ -0,0 +1,12 @@
        8014  +
{
        8015  +
    "credentials": {
        8016  +
        "access_key_id": "AKIDEXAMPLE",
        8017  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8018  +
    },
        8019  +
    "expiration_in_seconds": 3600,
        8020  +
    "normalize": true,
        8021  +
    "region": "us-east-1",
        8022  +
    "service": "service",
        8023  +
    "sign_body": false,
        8024  +
    "timestamp": "2015-08-30T12:36:00Z"
        8025  +
}
              \
 No newline at end of file
 6298   8026   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6299   8027   
similarity index 99%
 6300   8028   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 6301   8029   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6302   8030   
index a6942c1..e881ac7 100644
 6303         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
        8031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6304   8032   
@@ -1,9 +1,9 @@
 6305   8033   
POST
 6306   8034   
/
 6307   8035   
 6308   8036   
host:example.amazonaws.com
 6309   8037   
x-amz-date:20150830T123600Z
 6310   8038   
x-amz-region-set:us-east-1
 6311   8039   
 6312   8040   
host;x-amz-date;x-amz-region-set
 6313         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8041  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6314   8042   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 6315   8043   
new file mode 100644
 6316   8044   
index 0000000..7c5e47b
 6317         -
-- /dev/null
        8045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 6318   8046   
@@ -0,0 +1 @@
        8047  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 6319   8048   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 6320   8049   
new file mode 100644
 6321   8050   
index 0000000..c0e50a0
 6322         -
-- /dev/null
        8051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 6323   8052   
@@ -0,0 +1,6 @@
        8053  +
POST / HTTP/1.1
        8054  +
Host:example.amazonaws.com
        8055  +
X-Amz-Date:20150830T123600Z
        8056  +
X-Amz-Region-Set:us-east-1
        8057  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        8058  +
 6324   8059   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6325   8060   
similarity index 99%
 6326   8061   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 6327   8062   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6328   8063   
index d5650cb..f8adf13 100644
 6329         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
        8064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6330   8065   
@@ -1,4 +1,4 @@
 6331   8066   
AWS4-ECDSA-P256-SHA256
 6332   8067   
20150830T123600Z
 6333   8068   
20150830/service/aws4_request
 6334         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        8069  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 6335   8070   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 6336   8071   
new file mode 100644
 6337   8072   
index 0000000..379dcb2
 6338         -
-- /dev/null
        8073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 6339   8074   
@@ -0,0 +1,4 @@
        8075  +
{
        8076  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8077  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8078  +
}
 6340   8079   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6341   8080   
similarity index 99%
 6342   8081   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 6343   8082   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6344   8083   
index e48ce07..5ea8e3c 100644
 6345         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
        8084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6346   8085   
@@ -1,7 +1,7 @@
 6347   8086   
POST
 6348   8087   
/
 6349   8088   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 6350   8089   
host:example.amazonaws.com
 6351   8090   
 6352   8091   
host
 6353         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8092  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6354   8093   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 6355   8094   
new file mode 100644
 6356   8095   
index 0000000..ea8e3b4
 6357         -
-- /dev/null
        8096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 6358   8097   
@@ -0,0 +1 @@
        8098  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 6359   8099   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 6360   8100   
new file mode 100644
 6361   8101   
index 0000000..616973f
 6362         -
-- /dev/null
        8102  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 6363   8103   
@@ -0,0 +1,3 @@
        8104  +
POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3044022034768b9f03c61ee7f93b1e23198ff08923345e32f25e662afa5794997f00ebb102205813497325d50d374e486a3fce997e02ae9610a8eb81af01128103dd9d2d997d HTTP/1.1
        8105  +
Host:example.amazonaws.com
        8106  +
 6364   8107   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6365   8108   
similarity index 99%
 6366   8109   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 6367   8110   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6368   8111   
index 34e3382..711c162 100644
 6369         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
        8112  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6370   8113   
@@ -1,4 +1,4 @@
 6371   8114   
AWS4-ECDSA-P256-SHA256
 6372   8115   
20150830T123600Z
 6373   8116   
20150830/service/aws4_request
 6374         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        8117  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 6375   8118   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 6376   8119   
new file mode 100644
 6377   8120   
index 0000000..3f0a82a
 6378         -
-- /dev/null
        8121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 6379   8122   
@@ -0,0 +1,2 @@
        8123  +
POST / HTTP/1.1
        8124  +
Host:example.amazonaws.com
 6380   8125   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 6381   8126   
new file mode 100644
 6382   8127   
index 0000000..0db1df1
 6383         -
-- /dev/null
        8128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 6384   8129   
@@ -0,0 +1,12 @@
        8130  +
{
        8131  +
    "credentials": {
        8132  +
        "access_key_id": "AKIDEXAMPLE",
        8133  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8134  +
    },
        8135  +
    "expiration_in_seconds": 3600,
        8136  +
    "normalize": true,
        8137  +
    "region": "us-east-1",
        8138  +
    "service": "service",
        8139  +
    "sign_body": true,
        8140  +
    "timestamp": "2015-08-30T12:36:00Z"
        8141  +
}
              \
 No newline at end of file
 6385   8142   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 6386   8143   
similarity index 62%
 6387   8144   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 6388   8145   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 6389   8146   
index 05ab787..62639b2 100644
 6390         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        8147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 6391   8148   
@@ -1,12 +1,12 @@
 6392   8149   
POST
 6393   8150   
/
 6394   8151   
 6395   8152   
content-length:13
 6396   8153   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6397   8154   
host:example.amazonaws.com
 6398         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8155  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6399   8156   
x-amz-date:20150830T123600Z
 6400   8157   
x-amz-region-set:us-east-1
 6401   8158   
 6402   8159   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6403         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8160  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6404   8161   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 6405   8162   
new file mode 100644
 6406   8163   
index 0000000..006ec2e
 6407         -
-- /dev/null
        8164  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 6408   8165   
@@ -0,0 +1 @@
        8166  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 6409   8167   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 6410   8168   
new file mode 100644
 6411   8169   
index 0000000..87a11f2
 6412         -
-- /dev/null
        8170  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 6413   8171   
@@ -0,0 +1,10 @@
        8172  +
POST / HTTP/1.1
        8173  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        8174  +
Host:example.amazonaws.com
        8175  +
Content-Length:13
        8176  +
X-Amz-Date:20150830T123600Z
        8177  +
X-Amz-Region-Set:us-east-1
        8178  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8179  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set, Signature=3045022100c016dc61cbd380cf8160711320957071f5c122ef69164d56d02f79daf51a0603022043e3313aa2f6b46285cc89dfe5616ccc74c810a3d7ea25b76ee1ca496f7facba
        8180  +
        8181  +
Param1=value1
              \
 No newline at end of file
 6414   8182   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt
 6415   8183   
new file mode 100644
 6416   8184   
index 0000000..c047afb
 6417         -
-- /dev/null
        8185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt
 6418   8186   
@@ -0,0 +1,4 @@
        8187  +
AWS4-ECDSA-P256-SHA256
        8188  +
20150830T123600Z
        8189  +
20150830/service/aws4_request
        8190  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 6419   8191   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 6420   8192   
new file mode 100644
 6421   8193   
index 0000000..379dcb2
 6422         -
-- /dev/null
        8194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 6423   8195   
@@ -0,0 +1,4 @@
        8196  +
{
        8197  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8198  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8199  +
}
 6424   8200   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 6425   8201   
similarity index 85%
 6426   8202   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 6427   8203   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 6428   8204   
index fcc454f..6933a8c 100644
 6429         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        8205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 6430   8206   
@@ -1,9 +1,9 @@
 6431   8207   
POST
 6432   8208   
/
 6433   8209   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost
 6434   8210   
content-length:13
 6435   8211   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6436   8212   
host:example.amazonaws.com
 6437   8213   
 6438   8214   
content-length;content-type;host
 6439         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8215  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6440   8216   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 6441   8217   
new file mode 100644
 6442   8218   
index 0000000..34a2e12
 6443         -
-- /dev/null
        8219  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 6444   8220   
@@ -0,0 +1 @@
        8221  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 6445   8222   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 6446   8223   
new file mode 100644
 6447   8224   
index 0000000..197b99e
 6448         -
-- /dev/null
        8225  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 6449   8226   
@@ -0,0 +1,6 @@
        8227  +
POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=30450220128d491ccca3f9a7988d00454d2210dd884d7990ca2cb844d4968c8fa9e937f8022100b3668dd440d8206074460567cee98691f66412fe5a83d8e32c601e1331f2ec2b HTTP/1.1
        8228  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        8229  +
Host:example.amazonaws.com
        8230  +
Content-Length:13
        8231  +
        8232  +
Param1=value1
              \
 No newline at end of file
 6450   8233   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt
 6451   8234   
new file mode 100644
 6452   8235   
index 0000000..9d2bc74
 6453         -
-- /dev/null
        8236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt
 6454   8237   
@@ -0,0 +1,4 @@
        8238  +
AWS4-ECDSA-P256-SHA256
        8239  +
20150830T123600Z
        8240  +
20150830/service/aws4_request
        8241  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 6455   8242   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6456   8243   
similarity index 80%
 6457   8244   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.req
 6458   8245   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6459   8246   
index 36015f1..8289eaa 100644
 6460         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.req
        8247  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6461   8248   
@@ -1,6 +1,6 @@
 6462   8249   
POST / HTTP/1.1
 6463   8250   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 6464   8251   
Host:example.amazonaws.com
 6465         -
X-Amz-Date:20150830T123600Z
        8252  +
Content-Length:13
 6466   8253   
 6467   8254   
Param1=value1
              \
 No newline at end of file
 6468   8255   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 6469   8256   
new file mode 100644
 6470   8257   
index 0000000..0db1df1
 6471         -
-- /dev/null
        8258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 6472   8259   
@@ -0,0 +1,12 @@
        8260  +
{
        8261  +
    "credentials": {
        8262  +
        "access_key_id": "AKIDEXAMPLE",
        8263  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8264  +
    },
        8265  +
    "expiration_in_seconds": 3600,
        8266  +
    "normalize": true,
        8267  +
    "region": "us-east-1",
        8268  +
    "service": "service",
        8269  +
    "sign_body": true,
        8270  +
    "timestamp": "2015-08-30T12:36:00Z"
        8271  +
}
              \
 No newline at end of file
 6473   8272   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6474   8273   
similarity index 61%
 6475   8274   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 6476   8275   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6477   8276   
index 69009dc..797632b 100644
 6478         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        8277  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6479   8278   
@@ -1,12 +1,12 @@
 6480   8279   
POST
 6481   8280   
/
 6482   8281   
 6483   8282   
content-length:13
 6484   8283   
content-type:application/x-www-form-urlencoded
 6485   8284   
host:example.amazonaws.com
 6486         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8285  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6487   8286   
x-amz-date:20150830T123600Z
 6488   8287   
x-amz-region-set:us-east-1
 6489   8288   
 6490   8289   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6491         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8290  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6492   8291   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 6493   8292   
new file mode 100644
 6494   8293   
index 0000000..f5a641c
 6495         -
-- /dev/null
        8294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 6496   8295   
@@ -0,0 +1 @@
        8296  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 6497   8297   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 6498   8298   
new file mode 100644
 6499   8299   
index 0000000..7bd94a7
 6500         -
-- /dev/null
        8300  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 6501   8301   
@@ -0,0 +1,10 @@
        8302  +
POST / HTTP/1.1
        8303  +
Content-Type:application/x-www-form-urlencoded
        8304  +
Host:example.amazonaws.com
        8305  +
Content-Length:13
        8306  +
X-Amz-Date:20150830T123600Z
        8307  +
X-Amz-Region-Set:us-east-1
        8308  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8309  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set, Signature=3045022100955bbc0f0b9d4284719808642167f7d5ea4a72f8c296b75b442898c8b81cd7e502202425fb97620fa9a20344d22b248dd00db07524fc39b5ad77533e00b277331241
        8310  +
        8311  +
Param1=value1
              \
 No newline at end of file
 6502   8312   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 6503   8313   
new file mode 100644
 6504   8314   
index 0000000..8d25ba9
 6505         -
-- /dev/null
        8315  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 6506   8316   
@@ -0,0 +1,4 @@
        8317  +
AWS4-ECDSA-P256-SHA256
        8318  +
20150830T123600Z
        8319  +
20150830/service/aws4_request
        8320  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 6507   8321   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 6508   8322   
new file mode 100644
 6509   8323   
index 0000000..379dcb2
 6510         -
-- /dev/null
        8324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 6511   8325   
@@ -0,0 +1,4 @@
        8326  +
{
        8327  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8328  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8329  +
}
 6512   8330   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6513   8331   
similarity index 99%
 6514   8332   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 6515   8333   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6516   8334   
index 9ed065b..563ff58 100644
 6517         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
        8335  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6518   8336   
@@ -1,9 +1,9 @@
 6519   8337   
POST
 6520   8338   
/
 6521   8339   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost
 6522   8340   
content-length:13
 6523   8341   
content-type:application/x-www-form-urlencoded
 6524   8342   
host:example.amazonaws.com
 6525   8343   
 6526   8344   
content-length;content-type;host
 6527         -
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8345  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6528   8346   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 6529   8347   
new file mode 100644
 6530   8348   
index 0000000..0c77daf
 6531         -
-- /dev/null
        8349  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 6532   8350   
@@ -0,0 +1 @@
        8351  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 6533   8352   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 6534   8353   
new file mode 100644
 6535   8354   
index 0000000..71d6de9
 6536         -
-- /dev/null
        8355  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 6537   8356   
@@ -0,0 +1,6 @@
        8357  +
POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=30450221008d8a6aa0bc3f651e6c14c52e9e24dbca58964641c9cb6e55169f9dc74766ae3d022016126756ce1523ac972f66f6bf6e981f44572d3c8916f1f43d428fb2caa0e1ea HTTP/1.1
        8358  +
Content-Type:application/x-www-form-urlencoded
        8359  +
Host:example.amazonaws.com
        8360  +
Content-Length:13
        8361  +
        8362  +
Param1=value1
              \
 No newline at end of file
 6538   8363   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
 6539   8364   
similarity index 99%
 6540   8365   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt
 6541   8366   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
 6542   8367   
index bef3143..cc7a224 100644
 6543         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt
        8368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
 6544   8369   
@@ -1,4 +1,4 @@
 6545   8370   
AWS4-ECDSA-P256-SHA256
 6546   8371   
20150830T123600Z
 6547   8372   
20150830/service/aws4_request
 6548         -
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
        8373  +
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
              \
 No newline at end of file
 6549   8374   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 6550   8375   
new file mode 100644
 6551   8376   
index 0000000..760b2d3
 6552         -
-- /dev/null
        8377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 6553   8378   
@@ -0,0 +1,6 @@
        8379  +
POST / HTTP/1.1
        8380  +
Content-Type:application/x-www-form-urlencoded
        8381  +
Host:example.amazonaws.com
        8382  +
Content-Length:13
        8383  +
        8384  +
Param1=value1
              \
 No newline at end of file
 6554   8385   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 6555   8386   
index 9bd636f..b53f33f 100644
 6556         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        8387  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 6557   8388   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 6558   8389   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 6559   8390   
        }
 6560   8391   
 6561   8392   
        if let SignatureValues::QueryParams(values) = values {
 6562   8393   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 6563   8394   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 6564   8395   
 6565   8396   
            #[cfg(feature = "sigv4a")]
 6566   8397   
            if let Some(regions) = values.region_set {
 6567   8398   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 6568   8399   
            }
 6569   8400   
 6570   8401   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 6571   8402   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 6572   8403   
            add_param(
 6573   8404   
                &mut params,
 6574   8405   
                param::X_AMZ_SIGNED_HEADERS,
 6575   8406   
                values.signed_headers.as_str(),
 6576   8407   
            );
 6577   8408   
 6578   8409   
            if let Some(security_token) = values.security_token {
 6579   8410   
                add_param(
 6580   8411   
                    &mut params,
 6581   8412   
                    settings
 6582   8413   
                        .session_token_name_override
 6583   8414   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 6584   8415   
                    security_token,
 6585   8416   
                );
 6586   8417   
            }
 6587   8418   
        }
 6588         -
        // Sort by param name, and then by param value
        8419  +
        8420  +
        // Sort on the _encoded_ key/value pairs
        8421  +
        let mut params: Vec<(String, String)> = params
        8422  +
            .into_iter()
        8423  +
            .map(|x| {
        8424  +
                use aws_smithy_http::query::fmt_string;
        8425  +
                let enc_k = fmt_string(&x.0);
        8426  +
                let enc_v = fmt_string(&x.1);
        8427  +
                (enc_k, enc_v)
        8428  +
            })
        8429  +
            .collect();
        8430  +
 6589   8431   
        params.sort();
 6590   8432   
 6591   8433   
        let mut query = QueryWriter::new(uri);
 6592   8434   
        query.clear_params();
 6593   8435   
        for (key, value) in params {
 6594         -
            query.insert(&key, &value);
        8436  +
            query.insert_encoded(&key, &value);
 6595   8437   
        }
 6596   8438   
 6597   8439   
        let query = query.build_query();
 6598   8440   
        if query.is_empty() {
 6599   8441   
            None
 6600   8442   
        } else {
 6601   8443   
            Some(query)
 6602   8444   
        }
 6603   8445   
    }
 6604   8446   
 6605   8447   
    fn insert_host_header(
 6606   8448   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 6607   8449   
        uri: &Uri,
 6608   8450   
    ) -> HeaderValue {
 6609   8451   
        match canonical_headers.get(&HOST) {
 6610   8452   
            Some(header) => header.clone(),
 6611   8453   
            None => {
 6612   8454   
                let port = uri.port();
 6613   8455   
                let scheme = uri.scheme();
 6614   8456   
                let authority = uri
 6615   8457   
                    .authority()
 6616   8458   
                    .expect("request uri authority must be set for signing")
 6617   8459   
                    .as_str();
 6618   8460   
                let host = uri
 6619   8461   
                    .host()
 6620   8462   
                    .expect("request uri host must be set for signing");
 6621   8463   
 6622   8464   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 6623   8465   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 6624   8466   
                // sent in the Host header (and Hyper strips default ports if they are present)
 6625   8467   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 6626   8468   
            service,
 6627   8469   
            hashed_creq,
 6628   8470   
            signature_version: SignatureVersion::V4a,
 6629   8471   
        }
 6630   8472   
    }
 6631   8473   
}
 6632   8474   
 6633   8475   
impl fmt::Display for StringToSign<'_> {
 6634   8476   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 6635   8477   
        write!(
 6636   8478   
            f,
 6637   8479   
            "{}\n{}\n{}\n{}",
 6638   8480   
            self.algorithm,
 6639   8481   
            format_date_time(self.time),
 6640   8482   
            match self.signature_version {
 6641   8483   
                SignatureVersion::V4 => self.scope.to_string(),
 6642   8484   
                SignatureVersion::V4a => self.scope.v4a_display(),
 6643   8485   
            },
 6644   8486   
            self.hashed_creq
 6645   8487   
        )
 6646   8488   
    }
 6647   8489   
}
 6648   8490   
 6649   8491   
#[cfg(test)]
 6650   8492   
mod tests {
 6651   8493   
    use crate::date_time::test_parsers::parse_date_time;
 6652   8494   
    use crate::http_request::canonical_request::{
 6653   8495   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 6654   8496   
    };
 6655   8497   
    use crate::http_request::test;
        8498  +
    use crate::http_request::test::SigningSuiteTest;
 6656   8499   
    use crate::http_request::{
 6657   8500   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 6658   8501   
        SigningParams, SigningSettings,
 6659   8502   
    };
 6660   8503   
    use crate::sign::v4;
 6661   8504   
    use crate::sign::v4::sha256_hex_string;
 6662   8505   
    use aws_credential_types::Credentials;
 6663   8506   
    use aws_smithy_http::query_writer::QueryWriter;
 6664   8507   
    use aws_smithy_runtime_api::client::identity::Identity;
 6665   8508   
    use http0::{HeaderValue, Uri};
 6666   8509   
    use pretty_assertions::assert_eq;
 6667   8510   
    use proptest::{prelude::*, proptest};
 6668   8511   
    use std::borrow::Cow;
 6669   8512   
    use std::time::Duration;
 6670   8513   
 6671   8514   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 6672   8515   
        v4::signing_params::Builder::default()
 6673   8516   
            .identity(identity)
 6674   8517   
            .region("test-region")
 6675   8518   
            .name("testservicename")
 6676   8519   
            .time(parse_date_time("20210511T154045Z").unwrap())
 6677   8520   
            .settings(settings)
 6678   8521   
            .build()
 6679   8522   
            .unwrap()
 6680   8523   
            .into()
 6681   8524   
    }
 6682   8525   
 6683   8526   
    #[test]
 6684   8527   
    fn test_repeated_header() {
 6685         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8528  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8529  +
        let mut req = test.request();
 6686   8530   
        req.headers.push((
 6687   8531   
            "x-amz-object-attributes".to_string(),
 6688   8532   
            "Checksum".to_string(),
 6689   8533   
        ));
 6690   8534   
        req.headers.push((
 6691   8535   
            "x-amz-object-attributes".to_string(),
 6692   8536   
            "ObjectSize".to_string(),
 6693   8537   
        ));
 6694   8538   
        let req = SignableRequest::from(&req);
 6695   8539   
        let settings = SigningSettings {
 6696   8540   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6697   8541   
            session_token_mode: SessionTokenMode::Exclude,
 6698   8542   
            ..Default::default()
 6699   8543   
        };
 6700   8544   
        let identity = Credentials::for_tests().into();
 6701   8545   
        let signing_params = signing_params(&identity, settings);
 6702   8546   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6703   8547   
 6704   8548   
        assert_eq!(
 6705   8549   
            creq.values.signed_headers().to_string(),
 6706   8550   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 6707   8551   
        );
 6708   8552   
        assert_eq!(
 6709   8553   
            creq.header_values_for("x-amz-object-attributes"),
 6710   8554   
            "Checksum,ObjectSize",
 6711   8555   
        );
 6712   8556   
    }
 6713   8557   
 6714   8558   
    #[test]
 6715   8559   
    fn test_host_header_properly_handles_ports() {
 6716   8560   
        fn host_header_test_setup(endpoint: String) -> String {
 6717         -
            let mut req = test::v4::test_request("get-vanilla");
        8561  +
            let test = SigningSuiteTest::v4("get-vanilla");
        8562  +
            let mut req = test.request();
 6718   8563   
            req.uri = endpoint;
 6719   8564   
            let req = SignableRequest::from(&req);
 6720   8565   
            let settings = SigningSettings {
 6721   8566   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6722   8567   
                session_token_mode: SessionTokenMode::Exclude,
 6723   8568   
                ..Default::default()
 6724   8569   
            };
 6725   8570   
            let identity = Credentials::for_tests().into();
 6726   8571   
            let signing_params = signing_params(&identity, settings);
 6727   8572   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6728   8573   
            creq.header_values_for("host")
 6729   8574   
        }
 6730   8575   
 6731   8576   
        // HTTP request with 80 port should not be signed with that port
 6732   8577   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 6733   8578   
        assert_eq!(http_80_host_header, "localhost",);
 6734   8579   
 6735   8580   
        // HTTP request with non-80 port should be signed with that port
 6736   8581   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 6737   8582   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 6738   8583   
 6739   8584   
        // HTTPS request with 443 port should not be signed with that port
 6740   8585   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 6741   8586   
        assert_eq!(https_443_host_header, "localhost",);
 6742   8587   
 6743   8588   
        // HTTPS request with non-443 port should be signed with that port
 6744   8589   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 6745   8590   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 6746   8591   
    }
 6747   8592   
 6748   8593   
    #[test]
 6749   8594   
    fn test_set_xamz_sha_256() {
 6750         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8595  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8596  +
        let req = test.request();
 6751   8597   
        let req = SignableRequest::from(&req);
 6752   8598   
        let settings = SigningSettings {
 6753   8599   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6754   8600   
            session_token_mode: SessionTokenMode::Exclude,
 6755   8601   
            ..Default::default()
 6756   8602   
        };
 6757   8603   
        let identity = Credentials::for_tests().into();
 6758   8604   
        let mut signing_params = signing_params(&identity, settings);
 6759   8605   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6760   8606   
        assert_eq!(
 6761   8607   
            creq.values.content_sha256(),
 6762   8608   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 6763   8609   
        );
 6764   8610   
        // assert that the sha256 header was added
 6765   8611   
        assert_eq!(
 6766   8612   
            creq.values.signed_headers().as_str(),
 6767   8613   
            "host;x-amz-content-sha256;x-amz-date"
 6768   8614   
        );
 6769   8615   
 6770   8616   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 6771   8617   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6772   8618   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6773   8619   
    }
 6774   8620   
 6775   8621   
    #[test]
 6776   8622   
    fn test_unsigned_payload() {
 6777         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8623  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8624  +
        let mut req = test.request();
 6778   8625   
        req.set_body(SignableBody::UnsignedPayload);
 6779   8626   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 6780   8627   
 6781   8628   
        let settings = SigningSettings {
 6782   8629   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6783   8630   
            ..Default::default()
 6784   8631   
        };
 6785   8632   
        let identity = Credentials::for_tests().into();
 6786   8633   
        let signing_params = signing_params(&identity, settings);
 6787   8634   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6788   8635   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 6789   8636   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 6790   8637   
    }
 6791   8638   
 6792   8639   
    #[test]
 6793   8640   
    fn test_precomputed_payload() {
 6794   8641   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 6795         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8642  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8643  +
        let mut req = test.request();
 6796   8644   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 6797   8645   
        let req = SignableRequest::from(&req);
 6798   8646   
        let settings = SigningSettings {
 6799   8647   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6800   8648   
            ..Default::default()
 6801   8649   
        };
 6802   8650   
        let identity = Credentials::for_tests().into();
 6803   8651   
        let signing_params = signing_params(&identity, settings);
 6804   8652   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6805   8653   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 6806   8654   
        assert!(creq.to_string().ends_with(payload_hash));
 6807   8655   
    }
 6808   8656   
 6809   8657   
    #[test]
 6810   8658   
    fn test_generate_scope() {
 6811   8659   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 6812   8660   
        let scope = SigningScope {
 6813   8661   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6814   8662   
            region: "us-east-1",
 6815   8663   
            service: "iam",
 6816   8664   
        };
 6817   8665   
        assert_eq!(format!("{}\n", scope), expected);
 6818   8666   
    }
 6819   8667   
 6820   8668   
    #[test]
 6821   8669   
    fn test_string_to_sign() {
 6822   8670   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6823         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 6824         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        8671  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8672  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        8673  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 6825   8674   
        let encoded = sha256_hex_string(creq.as_bytes());
 6826   8675   
 6827   8676   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 6828   8677   
        assert_eq!(expected_sts, actual.to_string());
 6829   8678   
    }
 6830   8679   
 6831   8680   
    #[test]
 6832   8681   
    fn test_digest_of_canonical_request() {
 6833         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        8682  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8683  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 6834   8684   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 6835   8685   
        let actual = sha256_hex_string(creq.as_bytes());
 6836   8686   
        assert_eq!(expected, actual);
 6837   8687   
    }
 6838   8688   
 6839   8689   
    #[test]
 6840   8690   
    fn test_double_url_encode_path() {
 6841         -
        let req = test::v4::test_request("double-encode-path");
        8691  +
        let test = SigningSuiteTest::v4("double-encode-path");
        8692  +
        let req = test.request();
 6842   8693   
        let req = SignableRequest::from(&req);
 6843   8694   
        let identity = Credentials::for_tests().into();
 6844   8695   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6845   8696   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6846   8697   
 6847         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        8698  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6848   8699   
        let actual = format!("{}", creq);
 6849   8700   
        assert_eq!(actual, expected);
 6850   8701   
    }
 6851   8702   
 6852   8703   
    #[test]
 6853   8704   
    fn test_double_url_encode() {
 6854         -
        let req = test::v4::test_request("double-url-encode");
        8705  +
        let test = SigningSuiteTest::v4("double-url-encode");
        8706  +
        let req = test.request();
 6855   8707   
        let req = SignableRequest::from(&req);
 6856   8708   
        let identity = Credentials::for_tests().into();
 6857   8709   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6858   8710   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6859         -
 6860         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        8711  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6861   8712   
        let actual = format!("{}", creq);
 6862   8713   
        assert_eq!(actual, expected);
 6863   8714   
    }
 6864   8715   
 6865   8716   
    #[test]
 6866   8717   
    fn test_tilde_in_uri() {
 6867   8718   
        let req = http0::Request::builder()
 6868   8719   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 6869   8720   
        let req = SignableRequest::from(&req);
 6870   8721   
        let identity = Credentials::for_tests().into();
 6871   8722   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6872   8723   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6873   8724   
        assert_eq!(
 6874   8725   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 6875   8726   
            creq.params.as_deref(),
 6876   8727   
        );
 6877   8728   
    }
 6878   8729   
 6879   8730   
    #[test]
 6880   8731   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 6881   8732   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 6882   8733   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 6883   8734   
 6884   8735   
        let mut query_writer = QueryWriter::new(&uri);
 6885   8736   
        query_writer.insert("list-type", "2");
 6886   8737   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 6887   8738   
 6888   8739   
        let req = http0::Request::builder()
 6889   8740   
            .uri(query_writer.build_uri())
 6890   8741   
            .body("")
 6891   8742   
            .unwrap()
 6892   8743   
            .into();
 6893   8744   
        let req = SignableRequest::from(&req);
 6894   8745   
        let identity = Credentials::for_tests().into();
 6895   8746   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6896   8747   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6897   8748   
 6898   8749   
        let expected = "list-type=2&prefix=%20%21%22%23%24%25%26%27%28%29%2A%2B%2C-.%2F0123456789%3A%3B%3C%3D%3E%3F%40ABCDEFGHIJKLMNOPQRSTUVWXYZ%5B%5C%5D%5E_%60abcdefghijklmnopqrstuvwxyz%7B%7C%7D~";
 6899   8750   
        let actual = creq.params.unwrap();
 6900   8751   
        assert_eq!(expected, actual);
 6901   8752   
    }
 6902   8753   
 6903   8754   
    #[test]
 6904   8755   
    fn test_omit_session_token() {
 6905         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8756  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8757  +
        let req = test.request();
 6906   8758   
        let req = SignableRequest::from(&req);
 6907   8759   
        let settings = SigningSettings {
 6908   8760   
            session_token_mode: SessionTokenMode::Include,
 6909   8761   
            ..Default::default()
 6910   8762   
        };
 6911   8763   
        let identity = Credentials::for_tests_with_session_token().into();
 6912   8764   
        let mut signing_params = signing_params(&identity, settings);
 6913   8765   
 6914   8766   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6915   8767   
        assert_eq!(
 6916   8768   
            creq.values.signed_headers().as_str(),
 6917   8769   
            "host;x-amz-date;x-amz-security-token"
 6918   8770   
        );
 6919   8771   
        assert_eq!(
 6920   8772   
            creq.headers.get("x-amz-security-token").unwrap(),
 6921   8773   
            "notarealsessiontoken"
 6922   8774   
        );
 6923   8775   
 6924   8776   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 6925   8777   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6926   8778   
        assert_eq!(
 6927   8779   
            creq.headers.get("x-amz-security-token").unwrap(),
 6928   8780   
            "notarealsessiontoken"
 6929   8781   
        );
 6930   8782   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6931   8783   
    }
 6932   8784   
 6933   8785   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 6934   8786   
    #[test]
 6935   8787   
    fn non_presigning_header_exclusion() {
 6936   8788   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 6937   8789   
index c4bbbee..363fc2c 100644
 6938         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        8790  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 6939   8791   
@@ -6,60 +6,62 @@
 6940   8792   
use super::error::SigningError;
 6941   8793   
use super::{PayloadChecksumKind, SignatureLocation};
 6942   8794   
use crate::http_request::canonical_request::header;
 6943   8795   
use crate::http_request::canonical_request::param;
 6944   8796   
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 6945   8797   
use crate::http_request::error::CanonicalRequestError;
 6946   8798   
use crate::http_request::SigningParams;
 6947   8799   
use crate::sign::v4;
 6948   8800   
#[cfg(feature = "sigv4a")]
 6949   8801   
use crate::sign::v4a;
 6950   8802   
use crate::{SignatureVersion, SigningOutput};
 6951   8803   
use http0::Uri;
 6952   8804   
use std::borrow::Cow;
 6953   8805   
use std::fmt::{Debug, Formatter};
 6954   8806   
use std::str;
 6955   8807   
 6956   8808   
const LOG_SIGNABLE_BODY: &str = "LOG_SIGNABLE_BODY";
 6957   8809   
 6958   8810   
/// Represents all of the information necessary to sign an HTTP request.
 6959   8811   
#[derive(Debug)]
 6960   8812   
#[non_exhaustive]
 6961   8813   
pub struct SignableRequest<'a> {
 6962   8814   
    method: &'a str,
 6963   8815   
    uri: Uri,
 6964   8816   
    headers: Vec<(&'a str, &'a str)>,
 6965   8817   
    body: SignableBody<'a>,
 6966   8818   
}
 6967   8819   
 6968   8820   
impl<'a> SignableRequest<'a> {
 6969   8821   
    /// Creates a new `SignableRequest`.
        8822  +
    ///
        8823  +
    /// NOTE: The `uri` is expected to already in encoded form.
 6970   8824   
    pub fn new(
 6971   8825   
        method: &'a str,
 6972   8826   
        uri: impl Into<Cow<'a, str>>,
 6973   8827   
        headers: impl Iterator<Item = (&'a str, &'a str)>,
 6974   8828   
        body: SignableBody<'a>,
 6975   8829   
    ) -> Result<Self, SigningError> {
 6976   8830   
        let uri = uri
 6977   8831   
            .into()
 6978   8832   
            .parse()
 6979   8833   
            .map_err(|e| SigningError::from(CanonicalRequestError::from(e)))?;
 6980   8834   
        let headers = headers.collect();
 6981   8835   
        Ok(Self {
 6982   8836   
            method,
 6983   8837   
            uri,
 6984   8838   
            headers,
 6985   8839   
            body,
 6986   8840   
        })
 6987   8841   
    }
 6988   8842   
 6989   8843   
    /// Returns the signable URI
 6990   8844   
    pub(crate) fn uri(&self) -> &Uri {
 6991   8845   
        &self.uri
 6992   8846   
    }
 6993   8847   
 6994   8848   
    /// Returns the signable HTTP method
 6995   8849   
    pub(crate) fn method(&self) -> &str {
 6996   8850   
        self.method
 6997   8851   
    }
 6998   8852   
 6999   8853   
    /// Returns the request headers
 7000   8854   
@@ -478,436 +480,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 7001   8855   
        sensitive,
 7002   8856   
    });
 7003   8857   
}
 7004   8858   
 7005   8859   
// add signature to authorization header
 7006   8860   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 7007   8861   
fn build_authorization_header(
 7008   8862   
    access_key: &str,
 7009   8863   
    creq: &CanonicalRequest<'_>,
 7010   8864   
    sts: StringToSign<'_>,
 7011   8865   
    signature: &str,
 7012   8866   
    signature_version: SignatureVersion,
 7013   8867   
) -> String {
 7014   8868   
    let scope = match signature_version {
 7015   8869   
        SignatureVersion::V4 => sts.scope.to_string(),
 7016   8870   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 7017   8871   
    };
 7018   8872   
    format!(
 7019   8873   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 7020   8874   
        sts.algorithm,
 7021   8875   
        access_key,
 7022   8876   
        scope,
 7023   8877   
        creq.values.signed_headers().as_str(),
 7024   8878   
        signature
 7025   8879   
    )
 7026   8880   
}
 7027   8881   
#[cfg(test)]
 7028   8882   
mod tests {
 7029   8883   
    use crate::date_time::test_parsers::parse_date_time;
 7030   8884   
    use crate::http_request::sign::{add_header, SignableRequest};
        8885  +
    use crate::http_request::test::SigningSuiteTest;
 7031   8886   
    use crate::http_request::{
 7032         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        8887  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 7033   8888   
        SigningSettings,
 7034   8889   
    };
 7035   8890   
    use crate::sign::v4;
 7036   8891   
    use aws_credential_types::Credentials;
 7037   8892   
    use http0::{HeaderValue, Request};
 7038   8893   
    use pretty_assertions::assert_eq;
 7039   8894   
    use proptest::proptest;
 7040   8895   
    use std::borrow::Cow;
 7041   8896   
    use std::iter;
 7042         -
    use std::time::Duration;
 7043   8897   
 7044   8898   
    macro_rules! assert_req_eq {
 7045   8899   
        (http: $expected:expr, $actual:expr) => {
 7046   8900   
            let mut expected = ($expected).map(|_b|"body");
 7047   8901   
            let mut actual = ($actual).map(|_b|"body");
 7048   8902   
            make_headers_comparable(&mut expected);
 7049   8903   
            make_headers_comparable(&mut actual);
 7050   8904   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 7051   8905   
        };
 7052   8906   
        ($expected:tt, $actual:tt) => {
 7053   8907   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 7054   8908   
        };
 7055   8909   
    }
 7056   8910   
 7057   8911   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 7058   8912   
        for (_name, value) in request.headers_mut() {
 7059   8913   
            value.set_sensitive(false);
 7060   8914   
        }
 7061   8915   
    }
 7062   8916   
 7063         -
    #[test]
 7064         -
    fn test_sign_vanilla_with_headers() {
 7065         -
        let settings = SigningSettings::default();
 7066         -
        let identity = &Credentials::for_tests().into();
 7067         -
        let params = v4::SigningParams {
 7068         -
            identity,
 7069         -
            region: "us-east-1",
 7070         -
            name: "service",
 7071         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 7072         -
            settings,
 7073         -
        }
 7074         -
        .into();
 7075         -
 7076         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 7077         -
        let signable = SignableRequest::from(&original);
 7078         -
        let out = sign(signable, &params).unwrap();
 7079         -
        assert_eq!(
 7080         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 7081         -
            out.signature
 7082         -
        );
 7083         -
 7084         -
        let mut signed = original.as_http_request();
 7085         -
        out.output.apply_to_request_http0x(&mut signed);
 7086         -
 7087         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 7088         -
        assert_req_eq!(expected, signed);
 7089         -
    }
 7090         -
        8917  +
    // Sigv4A suite tests
 7091   8918   
    #[cfg(feature = "sigv4a")]
 7092         -
    mod sigv4a_tests {
 7093         -
        use super::*;
 7094         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 7095         -
        use crate::http_request::{sign, test, SigningParams};
 7096         -
        use crate::sign::v4a;
 7097         -
        use p256::ecdsa::signature::{Signature, Verifier};
 7098         -
        use p256::ecdsa::{DerSignature, SigningKey};
 7099         -
        use pretty_assertions::assert_eq;
 7100         -
 7101         -
        fn new_v4a_signing_params_from_context(
 7102         -
            test_context: &'_ test::v4a::TestContext,
 7103         -
            signature_location: SignatureLocation,
 7104         -
        ) -> SigningParams<'_> {
 7105         -
            let mut params = v4a::SigningParams::from(test_context);
 7106         -
            params.settings.signature_location = signature_location;
 7107         -
 7108         -
            params.into()
 7109         -
        }
 7110         -
 7111         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 7112         -
            let tc = test::v4a::test_context(test_name);
 7113         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 7114         -
 7115         -
            let req = test::v4a::test_request(test_name);
 7116         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 7117         -
            let signable_req = SignableRequest::from(&req);
 7118         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 7119         -
 7120         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 7121         -
 7122         -
            let expected_string_to_sign =
 7123         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 7124         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 7125         -
            let actual_string_to_sign = StringToSign::new_v4a(
 7126         -
                *params.time(),
 7127         -
                params.region_set().unwrap(),
 7128         -
                params.name(),
 7129         -
                hashed_creq,
 7130         -
            )
 7131         -
            .to_string();
        8919  +
    mod v4a_suite {
        8920  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 7132   8921   
 7133         -
            assert_eq!(
 7134         -
                expected_string_to_sign, actual_string_to_sign,
 7135         -
                "'string to sign' didn't match"
 7136         -
            );
 7137         -
 7138         -
            let out = sign(signable_req, &params).unwrap();
 7139         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 7140         -
            out.output
 7141         -
                .apply_to_request_http0x(&mut req.as_http_request());
 7142         -
 7143         -
            let creds = params.credentials().unwrap();
 7144         -
            let signing_key =
 7145         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 7146         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 7147         -
            let sig = sig
 7148         -
                .try_into()
 7149         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 7150         -
 7151         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 7152         -
            let peer_public_key = signing_key.verifying_key();
 7153         -
            let sts = actual_string_to_sign.as_bytes();
 7154         -
            peer_public_key.verify(sts, &sig).unwrap();
        8922  +
        #[test]
        8923  +
        fn test_get_header_key_duplicate() {
        8924  +
            run_test_suite_v4a("get-header-key-duplicate")
 7155   8925   
        }
 7156   8926   
 7157   8927   
        #[test]
 7158         -
        fn test_get_header_key_duplicate() {
 7159         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        8928  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8929  +
        fn test_get_header_value_multiline() {
        8930  +
            run_test_suite_v4a("get-header-value-multiline")
 7160   8931   
        }
 7161   8932   
 7162   8933   
        #[test]
 7163   8934   
        fn test_get_header_value_order() {
 7164         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        8935  +
            run_test_suite_v4a("get-header-value-order")
 7165   8936   
        }
 7166   8937   
 7167   8938   
        #[test]
 7168   8939   
        fn test_get_header_value_trim() {
 7169         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        8940  +
            run_test_suite_v4a("get-header-value-trim");
 7170   8941   
        }
 7171   8942   
 7172   8943   
        #[test]
 7173   8944   
        fn test_get_relative_normalized() {
 7174         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        8945  +
            run_test_suite_v4a("get-relative-normalized");
 7175   8946   
        }
 7176   8947   
 7177   8948   
        #[test]
 7178   8949   
        fn test_get_relative_relative_normalized() {
 7179         -
            run_v4a_test_suite(
 7180         -
                "get-relative-relative-normalized",
 7181         -
                SignatureLocation::Headers,
 7182         -
            );
        8950  +
            run_test_suite_v4a("get-relative-relative-normalized");
 7183   8951   
        }
 7184   8952   
 7185   8953   
        #[test]
 7186   8954   
        fn test_get_relative_relative_unnormalized() {
 7187         -
            run_v4a_test_suite(
 7188         -
                "get-relative-relative-unnormalized",
 7189         -
                SignatureLocation::Headers,
 7190         -
            );
        8955  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 7191   8956   
        }
 7192   8957   
 7193   8958   
        #[test]
 7194   8959   
        fn test_get_relative_unnormalized() {
 7195         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        8960  +
            run_test_suite_v4a("get-relative-unnormalized");
 7196   8961   
        }
 7197   8962   
 7198   8963   
        #[test]
 7199   8964   
        fn test_get_slash_dot_slash_normalized() {
 7200         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        8965  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 7201   8966   
        }
 7202   8967   
 7203   8968   
        #[test]
 7204   8969   
        fn test_get_slash_dot_slash_unnormalized() {
 7205         -
            run_v4a_test_suite(
 7206         -
                "get-slash-dot-slash-unnormalized",
 7207         -
                SignatureLocation::Headers,
 7208         -
            );
        8970  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 7209   8971   
        }
 7210   8972   
 7211   8973   
        #[test]
 7212   8974   
        fn test_get_slash_normalized() {
 7213         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        8975  +
            run_test_suite_v4a("get-slash-normalized");
 7214   8976   
        }
 7215   8977   
 7216   8978   
        #[test]
 7217   8979   
        fn test_get_slash_pointless_dot_normalized() {
 7218         -
            run_v4a_test_suite(
 7219         -
                "get-slash-pointless-dot-normalized",
 7220         -
                SignatureLocation::Headers,
 7221         -
            );
        8980  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 7222   8981   
        }
 7223   8982   
 7224   8983   
        #[test]
 7225   8984   
        fn test_get_slash_pointless_dot_unnormalized() {
 7226         -
            run_v4a_test_suite(
 7227         -
                "get-slash-pointless-dot-unnormalized",
 7228         -
                SignatureLocation::Headers,
 7229         -
            );
        8985  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 7230   8986   
        }
 7231   8987   
 7232   8988   
        #[test]
 7233   8989   
        fn test_get_slash_unnormalized() {
 7234         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        8990  +
            run_test_suite_v4a("get-slash-unnormalized");
 7235   8991   
        }
 7236   8992   
 7237   8993   
        #[test]
 7238   8994   
        fn test_get_slashes_normalized() {
 7239         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        8995  +
            run_test_suite_v4a("get-slashes-normalized");
 7240   8996   
        }
 7241   8997   
 7242   8998   
        #[test]
 7243   8999   
        fn test_get_slashes_unnormalized() {
 7244         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        9000  +
            run_test_suite_v4a("get-slashes-unnormalized");
        9001  +
        }
        9002  +
        9003  +
        #[test]
        9004  +
        #[ignore = "relies on single encode of path segments"]
        9005  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        9006  +
        // skipped until we add control over double_uri_encode in context.json
        9007  +
        fn test_get_space_normalized() {
        9008  +
            run_test_suite_v4a("get-space-normalized");
        9009  +
        }
        9010  +
        9011  +
        #[test]
        9012  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        9013  +
        // the input request has unencoded space ' ' in the path which fails to parse
        9014  +
        fn test_get_space_unnormalized() {
        9015  +
            run_test_suite_v4a("get-space-unnormalized");
 7245   9016   
        }
 7246   9017   
 7247   9018   
        #[test]
 7248   9019   
        fn test_get_unreserved() {
 7249         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        9020  +
            run_test_suite_v4a("get-unreserved");
        9021  +
        }
        9022  +
        9023  +
        #[test]
        9024  +
        #[ignore = "httparse fails on invalid uri character"]
        9025  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9026  +
        fn test_get_utf8() {
        9027  +
            run_test_suite_v4a("get-utf8");
 7250   9028   
        }
 7251   9029   
 7252   9030   
        #[test]
 7253   9031   
        fn test_get_vanilla() {
 7254         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        9032  +
            run_test_suite_v4a("get-vanilla");
 7255   9033   
        }
 7256   9034   
 7257   9035   
        #[test]
 7258   9036   
        fn test_get_vanilla_empty_query_key() {
 7259         -
            run_v4a_test_suite(
 7260         -
                "get-vanilla-empty-query-key",
 7261         -
                SignatureLocation::QueryParams,
 7262         -
            );
        9037  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 7263   9038   
        }
 7264   9039   
 7265   9040   
        #[test]
 7266   9041   
        fn test_get_vanilla_query() {
 7267         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        9042  +
            run_test_suite_v4a("get-vanilla-query");
        9043  +
        }
        9044  +
        9045  +
        #[test]
        9046  +
        fn test_get_vanilla_query_order_encoded() {
        9047  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 7268   9048   
        }
 7269   9049   
 7270   9050   
        #[test]
 7271   9051   
        fn test_get_vanilla_query_order_key_case() {
 7272         -
            run_v4a_test_suite(
 7273         -
                "get-vanilla-query-order-key-case",
 7274         -
                SignatureLocation::QueryParams,
 7275         -
            );
        9052  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 7276   9053   
        }
 7277   9054   
 7278   9055   
        #[test]
 7279   9056   
        fn test_get_vanilla_query_unreserved() {
 7280         -
            run_v4a_test_suite(
 7281         -
                "get-vanilla-query-unreserved",
 7282         -
                SignatureLocation::QueryParams,
 7283         -
            );
        9057  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        9058  +
        }
        9059  +
        9060  +
        #[test]
        9061  +
        #[ignore = "httparse fails on invalid uri character"]
        9062  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9063  +
        fn test_get_vanilla_utf8_query() {
        9064  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 7284   9065   
        }
 7285   9066   
 7286   9067   
        #[test]
 7287   9068   
        fn test_get_vanilla_with_session_token() {
 7288         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        9069  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 7289   9070   
        }
 7290   9071   
 7291   9072   
        #[test]
 7292   9073   
        fn test_post_header_key_case() {
 7293         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        9074  +
            run_test_suite_v4a("post-header-key-case");
 7294   9075   
        }
 7295   9076   
 7296   9077   
        #[test]
 7297   9078   
        fn test_post_header_key_sort() {
 7298         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        9079  +
            run_test_suite_v4a("post-header-key-sort");
 7299   9080   
        }
 7300   9081   
 7301   9082   
        #[test]
 7302   9083   
        fn test_post_header_value_case() {
 7303         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        9084  +
            run_test_suite_v4a("post-header-value-case");
 7304   9085   
        }
 7305   9086   
 7306   9087   
        #[test]
 7307   9088   
        fn test_post_sts_header_after() {
 7308         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        9089  +
            run_test_suite_v4a("post-sts-header-after");
 7309   9090   
        }
 7310   9091   
 7311   9092   
        #[test]
 7312   9093   
        fn test_post_sts_header_before() {
 7313         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        9094  +
            run_test_suite_v4a("post-sts-header-before");
 7314   9095   
        }
 7315   9096   
 7316   9097   
        #[test]
 7317   9098   
        fn test_post_vanilla() {
 7318         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        9099  +
            run_test_suite_v4a("post-vanilla");
 7319   9100   
        }
 7320   9101   
 7321   9102   
        #[test]
 7322   9103   
        fn test_post_vanilla_empty_query_value() {
 7323         -
            run_v4a_test_suite(
 7324         -
                "post-vanilla-empty-query-value",
 7325         -
                SignatureLocation::QueryParams,
 7326         -
            );
        9104  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 7327   9105   
        }
 7328   9106   
 7329   9107   
        #[test]
 7330   9108   
        fn test_post_vanilla_query() {
 7331         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        9109  +
            run_test_suite_v4a("post-vanilla-query");
 7332   9110   
        }
 7333   9111   
 7334   9112   
        #[test]
 7335   9113   
        fn test_post_x_www_form_urlencoded() {
 7336         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        9114  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 7337   9115   
        }
 7338   9116   
 7339   9117   
        #[test]
 7340   9118   
        fn test_post_x_www_form_urlencoded_parameters() {
 7341         -
            run_v4a_test_suite(
 7342         -
                "post-x-www-form-urlencoded-parameters",
 7343         -
                SignatureLocation::QueryParams,
 7344         -
            );
        9119  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 7345   9120   
        }
 7346   9121   
    }
 7347   9122   
 7348   9123   
    #[test]
 7349   9124   
    fn test_sign_url_escape() {
 7350         -
        let test = "double-encode-path";
        9125  +
        let test = SigningSuiteTest::v4("double-encode-path");
 7351   9126   
        let settings = SigningSettings::default();
 7352   9127   
        let identity = &Credentials::for_tests().into();
 7353   9128   
        let params = v4::SigningParams {
 7354   9129   
            identity,
 7355   9130   
            region: "us-east-1",
 7356   9131   
            name: "service",
 7357   9132   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7358   9133   
            settings,
 7359   9134   
        }
 7360   9135   
        .into();
 7361   9136   
 7362         -
        let original = test::v4::test_request(test);
        9137  +
        let original = test.request();
 7363   9138   
        let signable = SignableRequest::from(&original);
 7364   9139   
        let out = sign(signable, &params).unwrap();
 7365   9140   
        assert_eq!(
 7366   9141   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 7367   9142   
            out.signature
 7368   9143   
        );
 7369   9144   
 7370   9145   
        let mut signed = original.as_http_request();
 7371   9146   
        out.output.apply_to_request_http0x(&mut signed);
 7372   9147   
 7373         -
        let expected = test::v4::test_signed_request(test);
 7374         -
        assert_req_eq!(expected, signed);
 7375         -
    }
 7376         -
 7377         -
    #[test]
 7378         -
    fn test_sign_vanilla_with_query_params() {
 7379         -
        let settings = SigningSettings {
 7380         -
            signature_location: SignatureLocation::QueryParams,
 7381         -
            expires_in: Some(Duration::from_secs(35)),
 7382         -
            ..Default::default()
 7383         -
        };
 7384         -
        let identity = &Credentials::for_tests().into();
 7385         -
        let params = v4::SigningParams {
 7386         -
            identity,
 7387         -
            region: "us-east-1",
 7388         -
            name: "service",
 7389         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 7390         -
            settings,
 7391         -
        }
 7392         -
        .into();
 7393         -
 7394         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 7395         -
        let signable = SignableRequest::from(&original);
 7396         -
        let out = sign(signable, &params).unwrap();
 7397         -
        assert_eq!(
 7398         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 7399         -
            out.signature
 7400         -
        );
 7401         -
 7402         -
        let mut signed = original.as_http_request();
 7403         -
        out.output.apply_to_request_http0x(&mut signed);
 7404         -
 7405         -
        let expected =
 7406         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        9148  +
        let expected = test.signed_request(SignatureLocation::Headers);
 7407   9149   
        assert_req_eq!(expected, signed);
 7408   9150   
    }
 7409   9151   
 7410   9152   
    #[test]
 7411   9153   
    fn test_sign_headers_utf8() {
 7412   9154   
        let settings = SigningSettings::default();
 7413   9155   
        let identity = &Credentials::for_tests().into();
 7414   9156   
        let params = v4::SigningParams {
 7415   9157   
            identity,
 7416   9158   
            region: "us-east-1",
 7417   9159   
            name: "service",
 7418   9160   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7419   9161   
            settings,
 7420   9162   
        }
 7421   9163   
        .into();
 7422   9164   
 7423   9165   
        let original = http0::Request::builder()
 7424   9166   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 7425   9167   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 7426   9168   
            .body("")
 7427   9169   
            .unwrap()
 7428   9170   
            .into();
 7429   9171   
        let signable = SignableRequest::from(&original);
 7430   9172   
        let out = sign(signable, &params).unwrap();
 7431   9173   
        assert_eq!(
 7432   9174   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 7433   9175   
            out.signature
 7434   9176   
        );
 7435   9177   
 7436   9178   
        let mut signed = original.as_http_request();
 7437   9179   
@@ -1138,31 +1028,236 @@ mod tests {
 7438   9180   
        let mut request = http::Request::builder()
 7439   9181   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 7440   9182   
            .body("")
 7441   9183   
            .unwrap();
 7442   9184   
 7443   9185   
        instructions.apply_to_request_http1x(&mut request);
 7444   9186   
 7445   9187   
        assert_eq!(
 7446   9188   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 7447   9189   
            request.uri().path_and_query().unwrap().to_string()
 7448   9190   
        );
 7449   9191   
    }
 7450   9192   
 7451   9193   
    #[test]
 7452   9194   
    fn test_debug_signable_body() {
 7453   9195   
        let sut = SignableBody::Bytes(b"hello signable body");
 7454   9196   
        assert_eq!(
 7455   9197   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 7456   9198   
            format!("{sut:?}")
 7457   9199   
        );
 7458   9200   
 7459   9201   
        let sut = SignableBody::UnsignedPayload;
 7460   9202   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 7461   9203   
 7462   9204   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 7463   9205   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 7464   9206   
 7465   9207   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 7466   9208   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 7467   9209   
    }
        9210  +
        9211  +
    // v4 test suite
        9212  +
    mod v4_suite {
        9213  +
        use crate::http_request::test::run_test_suite_v4;
        9214  +
        9215  +
        #[test]
        9216  +
        fn test_get_header_key_duplicate() {
        9217  +
            run_test_suite_v4("get-header-key-duplicate");
        9218  +
        }
        9219  +
        9220  +
        #[test]
        9221  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        9222  +
        fn test_get_header_value_multiline() {
        9223  +
            run_test_suite_v4("get-header-value-multiline");
        9224  +
        }
        9225  +
        9226  +
        #[test]
        9227  +
        fn test_get_header_value_order() {
        9228  +
            run_test_suite_v4("get-header-value-order");
        9229  +
        }
        9230  +
        9231  +
        #[test]
        9232  +
        fn test_get_header_value_trim() {
        9233  +
            run_test_suite_v4("get-header-value-trim");
        9234  +
        }
        9235  +
        9236  +
        #[test]
        9237  +
        fn test_get_relative_normalized() {
        9238  +
            run_test_suite_v4("get-relative-normalized");
        9239  +
        }
        9240  +
        9241  +
        #[test]
        9242  +
        fn test_get_relative_relative_normalized() {
        9243  +
            run_test_suite_v4("get-relative-relative-normalized");
        9244  +
        }
        9245  +
        9246  +
        #[test]
        9247  +
        fn test_get_relative_relative_unnormalized() {
        9248  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        9249  +
        }
        9250  +
        9251  +
        #[test]
        9252  +
        fn test_get_relative_unnormalized() {
        9253  +
            run_test_suite_v4("get-relative-unnormalized");
        9254  +
        }
        9255  +
        9256  +
        #[test]
        9257  +
        fn test_get_slash_dot_slash_normalized() {
        9258  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        9259  +
        }
        9260  +
        9261  +
        #[test]
        9262  +
        fn test_get_slash_dot_slash_unnormalized() {
        9263  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        9264  +
        }
        9265  +
        9266  +
        #[test]
        9267  +
        fn test_get_slash_normalized() {
        9268  +
            run_test_suite_v4("get-slash-normalized");
        9269  +
        }
        9270  +
        9271  +
        #[test]
        9272  +
        fn test_get_slash_pointless_dot_normalized() {
        9273  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        9274  +
        }
        9275  +
        9276  +
        #[test]
        9277  +
        fn test_get_slash_pointless_dot_unnormalized() {
        9278  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        9279  +
        }
        9280  +
        9281  +
        #[test]
        9282  +
        fn test_get_slash_unnormalized() {
        9283  +
            run_test_suite_v4("get-slash-unnormalized");
        9284  +
        }
        9285  +
        9286  +
        #[test]
        9287  +
        fn test_get_slashes_normalized() {
        9288  +
            run_test_suite_v4("get-slashes-normalized");
        9289  +
        }
        9290  +
        9291  +
        #[test]
        9292  +
        fn test_get_slashes_unnormalized() {
        9293  +
            run_test_suite_v4("get-slashes-unnormalized");
        9294  +
        }
        9295  +
        9296  +
        #[test]
        9297  +
        #[ignore = "relies on single encode of path segments"]
        9298  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        9299  +
        // skipped until we add control over double_uri_encode in context.json
        9300  +
        fn test_get_space_normalized() {
        9301  +
            run_test_suite_v4("get-space-normalized");
        9302  +
        }
        9303  +
        9304  +
        #[test]
        9305  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        9306  +
        // the input request has unencoded space ' ' in the path which fails to parse
        9307  +
        fn test_get_space_unnormalized() {
        9308  +
            run_test_suite_v4("get-space-unnormalized");
        9309  +
        }
        9310  +
        9311  +
        #[test]
        9312  +
        fn test_get_unreserved() {
        9313  +
            run_test_suite_v4("get-unreserved");
        9314  +
        }
        9315  +
        9316  +
        #[test]
        9317  +
        #[ignore = "httparse fails on invalid uri character"]
        9318  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9319  +
        fn test_get_utf8() {
        9320  +
            run_test_suite_v4("get-utf8");
        9321  +
        }
        9322  +
        9323  +
        #[test]
        9324  +
        fn test_get_vanilla() {
        9325  +
            run_test_suite_v4("get-vanilla");
        9326  +
        }
        9327  +
        9328  +
        #[test]
        9329  +
        fn test_get_vanilla_empty_query_key() {
        9330  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        9331  +
        }
        9332  +
        9333  +
        #[test]
        9334  +
        fn test_get_vanilla_query() {
        9335  +
            run_test_suite_v4("get-vanilla-query");
        9336  +
        }
        9337  +
        9338  +
        #[test]
        9339  +
        fn test_get_vanilla_query_order_encoded() {
        9340  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        9341  +
        }
        9342  +
        9343  +
        #[test]
        9344  +
        fn test_get_vanilla_query_order_key_case() {
        9345  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        9346  +
        }
        9347  +
        9348  +
        #[test]
        9349  +
        fn test_get_vanilla_query_unreserved() {
        9350  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        9351  +
        }
        9352  +
        9353  +
        #[test]
        9354  +
        #[ignore = "httparse fails on invalid uri character"]
        9355  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9356  +
        fn test_get_vanilla_utf8_query() {
        9357  +
            run_test_suite_v4("get-vanilla-utf8-query");
        9358  +
        }
        9359  +
        9360  +
        #[test]
        9361  +
        fn test_get_vanilla_with_session_token() {
        9362  +
            run_test_suite_v4("get-vanilla-with-session-token");
        9363  +
        }
        9364  +
        9365  +
        #[test]
        9366  +
        fn test_post_header_key_case() {
        9367  +
            run_test_suite_v4("post-header-key-case");
        9368  +
        }
        9369  +
        9370  +
        #[test]
        9371  +
        fn test_post_header_key_sort() {
        9372  +
            run_test_suite_v4("post-header-key-sort");
        9373  +
        }
        9374  +
        9375  +
        #[test]
        9376  +
        fn test_post_header_value_case() {
        9377  +
            run_test_suite_v4("post-header-value-case");
        9378  +
        }
        9379  +
        9380  +
        #[test]
        9381  +
        fn test_post_sts_header_after() {
        9382  +
            run_test_suite_v4("post-sts-header-after");
        9383  +
        }
        9384  +
        9385  +
        #[test]
        9386  +
        fn test_post_sts_header_before() {
        9387  +
            run_test_suite_v4("post-sts-header-before");
        9388  +
        }
        9389  +
        9390  +
        #[test]
        9391  +
        fn test_post_vanilla() {
        9392  +
            run_test_suite_v4("post-vanilla");
        9393  +
        }
        9394  +
        9395  +
        #[test]
        9396  +
        fn test_post_vanilla_empty_query_value() {
        9397  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        9398  +
        }
        9399  +
        9400  +
        #[test]
        9401  +
        fn test_post_vanilla_query() {
        9402  +
            run_test_suite_v4("post-vanilla-query");
        9403  +
        }
        9404  +
        9405  +
        #[test]
        9406  +
        fn test_post_x_www_form_urlencoded() {
        9407  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        9408  +
        }
        9409  +
        9410  +
        #[test]
        9411  +
        fn test_post_x_www_form_urlencoded_parameters() {
        9412  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        9413  +
        }
        9414  +
    }
 7468   9415   
}
 7469   9416   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 7470   9417   
index be6c496..86eec20 100644
 7471         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        9418  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 7472   9419   
@@ -1,242 +1,453 @@
 7473   9420   
/*
 7474   9421   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 7475   9422   
 * SPDX-License-Identifier: Apache-2.0
 7476   9423   
 */
 7477   9424   
 7478   9425   
//! Functions shared between the tests of several modules.
 7479   9426   
 7480         -
use crate::http_request::{SignableBody, SignableRequest};
        9427  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        9428  +
use crate::http_request::{
        9429  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        9430  +
    SigningSettings,
        9431  +
};
        9432  +
use aws_credential_types::Credentials;
        9433  +
use aws_smithy_runtime_api::client::identity::Identity;
 7481   9434   
use http0::{Method, Uri};
        9435  +
use std::borrow::Cow;
 7482   9436   
use std::error::Error as StdError;
        9437  +
use std::time::{Duration, SystemTime};
        9438  +
use time::format_description::well_known::Rfc3339;
        9439  +
use time::OffsetDateTime;
        9440  +
        9441  +
/// Common test suite collection
        9442  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        9443  +
enum Collection {
        9444  +
    V4,
        9445  +
    V4A,
        9446  +
}
 7483   9447   
 7484         -
pub(crate) mod v4 {
 7485         -
    use super::*;
        9448  +
/// A test from the common CRT test suite
        9449  +
#[derive(Debug, Clone)]
        9450  +
pub(crate) struct SigningSuiteTest {
        9451  +
    test_name: &'static str,
        9452  +
    collection: Collection,
        9453  +
}
 7486   9454   
 7487         -
    fn path(name: &str, ext: &str) -> String {
 7488         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        9455  +
impl SigningSuiteTest {
        9456  +
    /// Create a new test from the V4 test suite
        9457  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        9458  +
        Self {
        9459  +
            test_name,
        9460  +
            collection: Collection::V4,
        9461  +
        }
 7489   9462   
    }
 7490   9463   
 7491         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 7492         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 7493         -
        read(&path(name, "creq")).trim().to_string()
        9464  +
    /// Create a new test from the V4a test suite
        9465  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        9466  +
        Self {
        9467  +
            test_name,
        9468  +
            collection: Collection::V4A,
        9469  +
        }
 7494   9470   
    }
 7495   9471   
 7496         -
    pub(crate) fn test_sts(name: &str) -> String {
 7497         -
        read(&path(name, "sts"))
        9472  +
    /// Get the path to a file in this test suite directory
        9473  +
    fn path(&self, filename: &str) -> String {
        9474  +
        let dir = match self.collection {
        9475  +
            Collection::V4 => "v4",
        9476  +
            Collection::V4A => "v4a",
        9477  +
        };
        9478  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 7498   9479   
    }
 7499   9480   
 7500         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7501         -
        test_parsed_request(name, "req")
        9481  +
    /// Get the HTTP request for the test
        9482  +
    pub(crate) fn request(&self) -> TestRequest {
        9483  +
        test_parsed_request(&self.path("request.txt"))
 7502   9484   
    }
 7503   9485   
 7504         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 7505         -
        test_parsed_request(name, "sreq")
        9486  +
    /// Get the signed HTTP request for the test
        9487  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        9488  +
        match signature_location {
        9489  +
            SignatureLocation::QueryParams => {
        9490  +
                test_parsed_request(&self.path("query-signed-request.txt"))
        9491  +
            }
        9492  +
            SignatureLocation::Headers => {
        9493  +
                test_parsed_request(&self.path("header-signed-request.txt"))
        9494  +
            }
        9495  +
        }
 7506   9496   
    }
 7507   9497   
 7508         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 7509         -
        test_parsed_request(name, "qpsreq")
        9498  +
    /// Get the canonical request for the test
        9499  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        9500  +
        match signature_location {
        9501  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        9502  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
        9503  +
        }
 7510   9504   
    }
 7511   9505   
 7512         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 7513         -
        let path = path(name, ext);
 7514         -
        match parse_request(read(&path).as_bytes()) {
 7515         -
            Ok(parsed) => parsed,
 7516         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        9506  +
    /// Get the string to sign for the test
        9507  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
        9508  +
        match signature_location {
        9509  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        9510  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 7517   9511   
        }
 7518   9512   
    }
 7519   9513   
 7520         -
    #[test]
 7521         -
    fn test_parse() {
 7522         -
        test_request("post-header-key-case");
        9514  +
    /// Get the signature for the test
        9515  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
        9516  +
        match signature_location {
        9517  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        9518  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        9519  +
        }
 7523   9520   
    }
 7524   9521   
 7525         -
    #[test]
 7526         -
    fn test_read_query_params() {
 7527         -
        test_request("get-vanilla-query-order-key-case");
        9522  +
    /// Get the test context for the test
        9523  +
    pub(crate) fn context(&self) -> TestContext {
        9524  +
        let context = read(&self.path("context.json"));
        9525  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        9526  +
        tc_builder.build()
 7528   9527   
    }
 7529   9528   
}
 7530   9529   
 7531         -
#[cfg(feature = "sigv4a")]
 7532         -
pub(crate) mod v4a {
 7533         -
    use super::*;
 7534         -
    use crate::http_request::{
 7535         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 7536         -
    };
 7537         -
    use aws_credential_types::Credentials;
 7538         -
    use aws_smithy_runtime_api::client::identity::Identity;
 7539         -
    use serde_derive::Deserialize;
 7540         -
    use std::time::{Duration, SystemTime};
 7541         -
    use time::format_description::well_known::Rfc3339;
 7542         -
    use time::OffsetDateTime;
 7543         -
 7544         -
    fn path(test_name: &str, definition_name: &str) -> String {
 7545         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        9530  +
fn test_parsed_request(path: &str) -> TestRequest {
        9531  +
    match parse_request(read(path).as_bytes()) {
        9532  +
        Ok(parsed) => parsed,
        9533  +
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 7546   9534   
    }
        9535  +
}
 7547   9536   
 7548         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7549         -
        test_parsed_request(&path(name, "request"))
 7550         -
    }
        9537  +
fn new_v4_signing_params_from_context(
        9538  +
    test_context: &'_ TestContext,
        9539  +
    signature_location: SignatureLocation,
        9540  +
) -> crate::http_request::SigningParams<'_> {
        9541  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        9542  +
    params.settings.signature_location = signature_location;
        9543  +
    params.into()
        9544  +
}
 7551   9545   
 7552         -
    pub(crate) fn test_canonical_request(
 7553         -
        name: &str,
 7554         -
        signature_location: SignatureLocation,
 7555         -
    ) -> String {
 7556         -
        match signature_location {
 7557         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 7558         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        9546  +
/// Run the given test from the v4 suite for both header and query
        9547  +
/// signature locations
        9548  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        9549  +
    run_v4_test(test_name, SignatureLocation::Headers);
        9550  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        9551  +
}
        9552  +
        9553  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        9554  +
    assert_eq!(expected.scheme(), actual.scheme());
        9555  +
    assert_eq!(expected.authority(), actual.authority());
        9556  +
    assert_eq!(expected.path(), actual.path());
        9557  +
        9558  +
    // query params may be out of order
        9559  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9560  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        9561  +
    expected_params.sort();
        9562  +
        9563  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9564  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        9565  +
    actual_params.sort();
        9566  +
        9567  +
    assert_eq!(expected_params, actual_params);
        9568  +
}
        9569  +
        9570  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        9571  +
    let expected = expected.as_http_request();
        9572  +
    let actual = actual;
        9573  +
    assert_eq!(expected.method(), actual.method());
        9574  +
    assert_eq!(
        9575  +
        expected.headers().len(),
        9576  +
        actual.headers().len(),
        9577  +
        "extra or missing headers"
        9578  +
    );
        9579  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        9580  +
    assert_uri_eq(expected.uri(), actual.uri());
        9581  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        9582  +
}
        9583  +
        9584  +
/// Run the given test from the v4 suite for the given signature location
        9585  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        9586  +
    let test = SigningSuiteTest::v4(test_name);
        9587  +
    let tc = test.context();
        9588  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        9589  +
        9590  +
    let req = test.request();
        9591  +
    let expected_creq = test.canonical_request(signature_location);
        9592  +
    let signable_req = SignableRequest::from(&req);
        9593  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9594  +
        9595  +
    // check canonical request
        9596  +
    assert_eq!(
        9597  +
        expected_creq,
        9598  +
        actual_creq.to_string(),
        9599  +
        "canonical request didn't match (signature location: {signature_location:?})"
        9600  +
    );
        9601  +
        9602  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        9603  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9604  +
    let actual_string_to_sign = StringToSign::new_v4(
        9605  +
        *params.time(),
        9606  +
        params.region().unwrap(),
        9607  +
        params.name(),
        9608  +
        hashed_creq,
        9609  +
    )
        9610  +
    .to_string();
        9611  +
        9612  +
    // check string to sign
        9613  +
    assert_eq!(
        9614  +
        expected_string_to_sign, actual_string_to_sign,
        9615  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        9616  +
    );
        9617  +
        9618  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        9619  +
    let mut signed = req.as_http_request();
        9620  +
    out.output.apply_to_request_http0x(&mut signed);
        9621  +
        9622  +
    // check signature
        9623  +
    assert_eq!(
        9624  +
        test.signature(signature_location),
        9625  +
        out.signature,
        9626  +
        "signature didn't match (signature location: {signature_location:?})"
        9627  +
    );
        9628  +
        9629  +
    let expected = test.signed_request(signature_location);
        9630  +
    assert_requests_eq(expected, signed);
        9631  +
}
        9632  +
        9633  +
/// Test suite context.json
        9634  +
pub(crate) struct TestContext {
        9635  +
    pub(crate) identity: Identity,
        9636  +
    pub(crate) expiration_in_seconds: u64,
        9637  +
    pub(crate) normalize: bool,
        9638  +
    pub(crate) region: String,
        9639  +
    pub(crate) service: String,
        9640  +
    pub(crate) timestamp: String,
        9641  +
    pub(crate) omit_session_token: bool,
        9642  +
    pub(crate) sign_body: bool,
        9643  +
}
        9644  +
        9645  +
// Serde has limitations requiring this odd workaround.
        9646  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        9647  +
fn return_true() -> bool {
        9648  +
    true
        9649  +
}
        9650  +
        9651  +
#[derive(serde_derive::Deserialize)]
        9652  +
pub(crate) struct TestContextBuilder {
        9653  +
    credentials: TestContextCreds,
        9654  +
    expiration_in_seconds: u64,
        9655  +
    normalize: bool,
        9656  +
    region: String,
        9657  +
    service: String,
        9658  +
    timestamp: String,
        9659  +
    #[serde(default)]
        9660  +
    omit_session_token: bool,
        9661  +
    #[serde(default = "return_true")]
        9662  +
    sign_body: bool,
        9663  +
}
        9664  +
        9665  +
impl TestContextBuilder {
        9666  +
    pub(crate) fn build(self) -> TestContext {
        9667  +
        let identity = Identity::new(
        9668  +
            Credentials::from_keys(
        9669  +
                &self.credentials.access_key_id,
        9670  +
                &self.credentials.secret_access_key,
        9671  +
                self.credentials.token.clone(),
        9672  +
            ),
        9673  +
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
        9674  +
        );
        9675  +
        9676  +
        TestContext {
        9677  +
            identity,
        9678  +
            expiration_in_seconds: self.expiration_in_seconds,
        9679  +
            normalize: self.normalize,
        9680  +
            region: self.region,
        9681  +
            service: self.service,
        9682  +
            timestamp: self.timestamp,
        9683  +
            omit_session_token: self.omit_session_token,
        9684  +
            sign_body: self.sign_body,
 7559   9685   
        }
 7560   9686   
    }
        9687  +
}
 7561   9688   
 7562         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
 7563         -
        match signature_location {
 7564         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 7565         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        9689  +
#[derive(serde_derive::Deserialize)]
        9690  +
pub(crate) struct TestContextCreds {
        9691  +
    access_key_id: String,
        9692  +
    secret_access_key: String,
        9693  +
    token: Option<String>,
        9694  +
}
        9695  +
        9696  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        9697  +
    fn from(tc: &'a TestContext) -> Self {
        9698  +
        crate::sign::v4::SigningParams {
        9699  +
            identity: &tc.identity,
        9700  +
            region: &tc.region,
        9701  +
            name: &tc.service,
        9702  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        9703  +
                .unwrap()
        9704  +
                .into(),
        9705  +
            settings: SigningSettings {
        9706  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        9707  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        9708  +
                uri_path_normalization_mode: tc.normalize.into(),
        9709  +
                session_token_mode: if tc.omit_session_token {
        9710  +
                    SessionTokenMode::Exclude
        9711  +
                } else {
        9712  +
                    SessionTokenMode::Include
        9713  +
                },
        9714  +
                payload_checksum_kind: if tc.sign_body {
        9715  +
                    PayloadChecksumKind::XAmzSha256
        9716  +
                } else {
        9717  +
                    PayloadChecksumKind::NoHeader
        9718  +
                },
        9719  +
                ..Default::default()
        9720  +
            },
 7566   9721   
        }
 7567   9722   
    }
        9723  +
}
 7568   9724   
 7569         -
    fn test_parsed_request(path: &str) -> TestRequest {
 7570         -
        match parse_request(read(path).as_bytes()) {
 7571         -
            Ok(parsed) => parsed,
 7572         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
 7573         -
        }
        9725  +
#[cfg(feature = "sigv4a")]
        9726  +
pub(crate) mod v4a {
        9727  +
    use super::*;
        9728  +
    use crate::http_request::{
        9729  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        9730  +
    };
        9731  +
    use crate::sign::v4a;
        9732  +
    use p256::ecdsa::signature::{Signature, Verifier};
        9733  +
    use p256::ecdsa::{DerSignature, SigningKey};
        9734  +
    use std::time::Duration;
        9735  +
    use time::format_description::well_known::Rfc3339;
        9736  +
    use time::OffsetDateTime;
        9737  +
        9738  +
    fn new_v4a_signing_params_from_context(
        9739  +
        test_context: &'_ TestContext,
        9740  +
        signature_location: SignatureLocation,
        9741  +
    ) -> crate::http_request::SigningParams<'_> {
        9742  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        9743  +
        params.settings.signature_location = signature_location;
        9744  +
        params.into()
 7574   9745   
    }
 7575   9746   
 7576         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 7577         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 7578         -
        let context = read(&path);
 7579         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 7580         -
        tc_builder.build()
        9747  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        9748  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        9749  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
 7581   9750   
    }
 7582   9751   
 7583         -
    pub(crate) struct TestContext {
 7584         -
        pub(crate) identity: Identity,
 7585         -
        pub(crate) expiration_in_seconds: u64,
 7586         -
        pub(crate) normalize: bool,
 7587         -
        pub(crate) region: String,
 7588         -
        pub(crate) service: String,
 7589         -
        pub(crate) timestamp: String,
 7590         -
        pub(crate) omit_session_token: bool,
 7591         -
        pub(crate) sign_body: bool,
        9752  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        9753  +
        let test = SigningSuiteTest::v4a(test_name);
        9754  +
        let tc = test.context();
        9755  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        9756  +
        9757  +
        let req = test.request();
        9758  +
        let expected_creq = test.canonical_request(signature_location);
        9759  +
        let signable_req = SignableRequest::from(&req);
        9760  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9761  +
        9762  +
        assert_eq!(
        9763  +
            expected_creq,
        9764  +
            actual_creq.to_string(),
        9765  +
            "canonical request didn't match (signature location: {signature_location:?})"
        9766  +
        );
        9767  +
        9768  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        9769  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9770  +
        let actual_string_to_sign = StringToSign::new_v4a(
        9771  +
            *params.time(),
        9772  +
            params.region_set().unwrap(),
        9773  +
            params.name(),
        9774  +
            hashed_creq,
        9775  +
        )
        9776  +
        .to_string();
        9777  +
        9778  +
        assert_eq!(
        9779  +
            expected_string_to_sign, actual_string_to_sign,
        9780  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        9781  +
        );
        9782  +
        9783  +
        let out = sign(signable_req, &params).unwrap();
        9784  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        9785  +
        out.output
        9786  +
            .apply_to_request_http0x(&mut req.as_http_request());
        9787  +
        9788  +
        let creds = params.credentials().unwrap();
        9789  +
        let signing_key =
        9790  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        9791  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        9792  +
        let sig = sig
        9793  +
            .try_into()
        9794  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        9795  +
        9796  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        9797  +
        let peer_public_key = signing_key.verifying_key();
        9798  +
        let sts = actual_string_to_sign.as_bytes();
        9799  +
        peer_public_key.verify(sts, &sig).unwrap();
        9800  +
        // TODO(sigv4a) - use public.key.json as verifying key?
 7592   9801   
    }
 7593   9802   
 7594   9803   
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 7595   9804   
        fn from(tc: &'a TestContext) -> Self {
 7596   9805   
            crate::sign::v4a::SigningParams {
 7597   9806   
                identity: &tc.identity,
 7598   9807   
                region_set: &tc.region,
 7599   9808   
                name: &tc.service,
 7600   9809   
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 7601   9810   
                    .unwrap()
 7602   9811   
                    .into(),
 7603   9812   
                settings: SigningSettings {
 7604   9813   
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 7605   9814   
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 7606   9815   
                    uri_path_normalization_mode: tc.normalize.into(),
 7607   9816   
                    session_token_mode: if tc.omit_session_token {
 7608   9817   
                        SessionTokenMode::Exclude
 7609   9818   
                    } else {
 7610   9819   
                        SessionTokenMode::Include
 7611   9820   
                    },
 7612   9821   
                    payload_checksum_kind: if tc.sign_body {
 7613   9822   
                        PayloadChecksumKind::XAmzSha256
 7614   9823   
                    } else {
 7615   9824   
                        PayloadChecksumKind::NoHeader
 7616   9825   
                    },
 7617   9826   
                    ..Default::default()
 7618   9827   
                },
 7619   9828   
            }
 7620   9829   
        }
 7621   9830   
    }
 7622   9831   
 7623         -
    // Serde has limitations requiring this odd workaround.
 7624         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 7625         -
    fn return_true() -> bool {
 7626         -
        true
 7627         -
    }
 7628         -
 7629         -
    #[derive(Deserialize)]
 7630         -
    pub(crate) struct TestContextBuilder {
 7631         -
        credentials: TestContextCreds,
 7632         -
        expiration_in_seconds: u64,
 7633         -
        normalize: bool,
 7634         -
        region: String,
 7635         -
        service: String,
 7636         -
        timestamp: String,
 7637         -
        #[serde(default)]
 7638         -
        omit_session_token: bool,
 7639         -
        #[serde(default = "return_true")]
 7640         -
        sign_body: bool,
 7641         -
    }
 7642         -
 7643         -
    impl TestContextBuilder {
 7644         -
        pub(crate) fn build(self) -> TestContext {
 7645         -
            let identity = Identity::new(
 7646         -
                Credentials::from_keys(
 7647         -
                    &self.credentials.access_key_id,
 7648         -
                    &self.credentials.secret_access_key,
 7649         -
                    self.credentials.token.clone(),
 7650         -
                ),
 7651         -
                Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 7652         -
            );
 7653         -
 7654         -
            TestContext {
 7655         -
                identity,
 7656         -
                expiration_in_seconds: self.expiration_in_seconds,
 7657         -
                normalize: self.normalize,
 7658         -
                region: self.region,
 7659         -
                service: self.service,
 7660         -
                timestamp: self.timestamp,
 7661         -
                omit_session_token: self.omit_session_token,
 7662         -
                sign_body: self.sign_body,
 7663         -
            }
 7664         -
        }
 7665         -
    }
 7666         -
 7667         -
    #[derive(Deserialize)]
 7668         -
    pub(crate) struct TestContextCreds {
 7669         -
        access_key_id: String,
 7670         -
        secret_access_key: String,
 7671         -
        token: Option<String>,
 7672         -
    }
 7673         -
 7674   9832   
    #[test]
 7675   9833   
    fn test_parse() {
 7676         -
        let req = test_request("post-header-key-case");
        9834  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 7677   9835   
        assert_eq!(req.method, "POST");
 7678   9836   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7679   9837   
        assert!(req.headers.is_empty());
 7680   9838   
    }
 7681   9839   
 7682   9840   
    #[test]
 7683   9841   
    fn test_read_query_params() {
 7684         -
        let req = test_request("get-header-value-trim");
        9842  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 7685   9843   
        assert_eq!(req.method, "GET");
 7686   9844   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7687   9845   
        assert!(!req.headers.is_empty());
 7688   9846   
    }
 7689   9847   
}
 7690   9848   
 7691   9849   
fn read(path: &str) -> String {
 7692   9850   
    println!("Loading `{}` for test case...", path);
 7693   9851   
    let v = {
 7694   9852   
        match std::fs::read_to_string(path) {
 7695   9853   
            // This replacement is necessary for tests to pass on Windows, as reading the
 7696   9854   
            // test snapshots from the file system results in CRLF line endings being inserted.
 7697   9855   
            Ok(value) => value.replace("\r\n", "\n"),
 7698   9856   
            Err(err) => {
 7699   9857   
                panic!("failed to load test case `{}`: {}", path, err);
 7700   9858   
            }
 7701   9859   
        }
 7702   9860   
    };
 7703   9861   
 7704   9862   
    v.trim().to_string()
 7705   9863   
}
 7706   9864   
 7707   9865   
pub(crate) struct TestRequest {
 7708   9866   
    pub(crate) uri: String,
 7709   9867   
    pub(crate) method: String,
 7710   9868   
    pub(crate) headers: Vec<(String, String)>,
 7711   9869   
    pub(crate) body: TestSignedBody,
 7712   9870   
}
 7713   9871   
 7714   9872   
pub(crate) enum TestSignedBody {
 7715   9873   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 7716   9874   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 7717   9875   
                    )
 7718   9876   
                })
 7719   9877   
                .collect::<Vec<_>>(),
 7720   9878   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 7721   9879   
        }
 7722   9880   
    }
 7723   9881   
}
 7724   9882   
 7725   9883   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 7726   9884   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 7727   9885   
        SignableRequest::new(
 7728   9886   
            &request.method,
 7729   9887   
            &request.uri,
 7730   9888   
            request
 7731   9889   
                .headers
 7732   9890   
                .iter()
 7733   9891   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 7734   9892   
            request.body.as_signable_body(),
 7735   9893   
        )
 7736   9894   
        .expect("URI MUST be valid")
 7737   9895   
    }
 7738   9896   
}
 7739   9897   
 7740   9898   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 7741   9899   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 7742   9900   
    // httparse 1.5 requires two trailing newlines to head the header section.
 7743   9901   
    let mut with_newline = Vec::from(s);
 7744   9902   
    with_newline.push(b'\n');
 7745   9903   
    let mut req = httparse::Request::new(&mut headers);
 7746         -
    let _ = req.parse(&with_newline).unwrap();
        9904  +
    let status = req.parse(&with_newline).unwrap();
        9905  +
        9906  +
    let body = if status.is_complete() {
        9907  +
        let body_offset = status.unwrap();
        9908  +
        // ignore the newline we added, take from original
        9909  +
        &s[body_offset..]
        9910  +
    } else {
        9911  +
        &[]
        9912  +
    };
 7747   9913   
 7748   9914   
    let mut uri_builder = Uri::builder().scheme("https");
 7749   9915   
    if let Some(path) = req.path {
 7750   9916   
        uri_builder = uri_builder.path_and_query(path);
 7751   9917   
    }
 7752   9918   
 7753   9919   
    let mut headers = vec![];
 7754   9920   
    for header in req.headers {
 7755   9921   
        let name = header.name.to_lowercase();
 7756   9922   
        if name == "host" {
 7757   9923   
            uri_builder = uri_builder.authority(header.value);
 7758   9924   
        } else if !name.is_empty() {
 7759   9925   
            headers.push((
 7760   9926   
                header.name.to_string(),
 7761   9927   
                std::str::from_utf8(header.value)?.to_string(),
 7762   9928   
            ));
 7763   9929   
        }
 7764   9930   
    }
 7765   9931   
 7766   9932   
    Ok(TestRequest {
 7767   9933   
        uri: uri_builder.build()?.to_string(),
 7768   9934   
        method: req.method.unwrap().to_string(),
 7769   9935   
        headers,
 7770         -
        body: TestSignedBody::Bytes(vec![]),
        9936  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 7771   9937   
    })
 7772   9938   
}
 7773   9939   
 7774   9940   
#[test]
 7775   9941   
fn test_parse_headers() {
 7776   9942   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 7777   9943   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 7778   9944   
    assert_eq!(
 7779   9945   
        httparse::parse_headers(buf, &mut headers),
 7780   9946   
        Ok(httparse::Status::Complete((
 7781   9947   
            56,
 7782   9948   
            &[
 7783   9949   
                httparse::Header {
 7784   9950   
                    name: "Host",
 7785   9951   
                    value: b"example.amazonaws.com",
 7786   9952   
                },
 7787   9953   
                httparse::Header {
 7788   9954   
                    name: "X-Amz-Date",
 7789   9955   
                    value: b"20150830T123600Z",
 7790   9956   
                }
 7791   9957   
            ][..]
 7792   9958   
        )))
 7793   9959   
    );
 7794   9960   
}
 7795   9961   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 7796   9962   
index a208453..fc00249 100644
 7797         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        9963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 7798   9964   
@@ -168,52 +168,54 @@ pub mod signing_params {
 7799   9965   
        );
 7800   9966   
 7801   9967   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 7802   9968   
        /// a required argument was not given.
 7803   9969   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 7804   9970   
            Ok(SigningParams {
 7805   9971   
                identity: self
 7806   9972   
                    .identity
 7807   9973   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 7808   9974   
                region: self
 7809   9975   
                    .region
 7810   9976   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 7811   9977   
                name: self
 7812   9978   
                    .name
 7813   9979   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 7814   9980   
                time: self
 7815   9981   
                    .time
 7816   9982   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 7817   9983   
                settings: self
 7818   9984   
                    .settings
 7819   9985   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 7820   9986   
            })
 7821   9987   
        }
 7822   9988   
    }
 7823   9989   
}
 7824   9990   
 7825   9991   
#[cfg(test)]
 7826   9992   
mod tests {
 7827   9993   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 7828   9994   
    use crate::date_time::test_parsers::parse_date_time;
 7829         -
    use crate::http_request::test;
 7830   9995   
 7831   9996   
    #[test]
 7832   9997   
    fn test_signature_calculation() {
 7833   9998   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 7834         -
        let creq = test::v4::test_canonical_request("iam");
        9999  +
        let creq = r#"AWS4-HMAC-SHA256
       10000  +
20150830T123600Z
       10001  +
20150830/us-east-1/iam/aws4_request
       10002  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 7835  10003   
        let time = parse_date_time("20150830T123600Z").unwrap();
 7836  10004   
 7837  10005   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 7838  10006   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 7839  10007   
 7840  10008   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 7841  10009   
        assert_eq!(expected, &signature);
 7842  10010   
    }
 7843  10011   
 7844  10012   
    #[test]
 7845  10013   
    fn sign_payload_empty_string() {
 7846  10014   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 7847  10015   
        let actual = sha256_hex_string([]);
 7848  10016   
        assert_eq!(expected, actual);
 7849  10017   
    }
 7850  10018   
}
 7851  10019   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 7852  10020   
index ce78c38..8c2f591 100644
 7853         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
       10021  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 7854  10022   
@@ -1,43 +1,43 @@
 7855  10023   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7856  10024   
[package]
 7857  10025   
name = "aws-smithy-checksums"
 7858  10026   
version = "0.63.5"
 7859  10027   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 7860  10028   
description = "Checksum calculation and verification callbacks"
 7861  10029   
edition = "2021"
 7862  10030   
license = "Apache-2.0"
 7863  10031   
repository = "https://github.com/smithy-lang/smithy-rs"
 7864  10032   
[package.metadata.docs.rs]
 7865  10033   
all-features = true
 7866  10034   
targets = ["x86_64-unknown-linux-gnu"]
 7867  10035   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7868  10036   
rustdoc-args = ["--cfg", "docsrs"]
 7869  10037   
 7870  10038   
[dependencies]
 7871  10039   
bytes = "1.10.0"
 7872  10040   
crc-fast = "1.3.0"
 7873  10041   
hex = "0.4.3"
 7874  10042   
http = "0.2.9"
 7875  10043   
http-body = "0.4.5"
 7876  10044   
md-5 = "0.10"
 7877  10045   
pin-project-lite = "0.2.14"
 7878  10046   
sha1 = "0.10"
 7879  10047   
sha2 = "0.10"
 7880  10048   
tracing = "0.1.40"
 7881  10049   
 7882  10050   
[dependencies.aws-smithy-http]
 7883  10051   
path = "../aws-smithy-http"
 7884         -
version = "0.62.2"
       10052  +
version = "0.62.3"
 7885  10053   
 7886  10054   
[dependencies.aws-smithy-types]
 7887  10055   
path = "../aws-smithy-types"
 7888  10056   
version = "1.3.2"
 7889  10057   
 7890  10058   
[dev-dependencies]
 7891  10059   
bytes-utils = "0.1.2"
 7892  10060   
pretty_assertions = "1.3"
 7893  10061   
tracing-test = "0.2.1"
 7894  10062   
 7895  10063   
[dev-dependencies.tokio]
 7896  10064   
version = "1.23.1"
 7897  10065   
features = ["macros", "rt"]
 7898  10066   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 7899  10067   
index 970c99e..d3c7a49 100644
 7900         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
       10068  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 7901  10069   
@@ -1,34 +1,34 @@
 7902  10070   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7903  10071   
[package]
 7904  10072   
name = "aws-smithy-http"
 7905         -
version = "0.62.2"
       10073  +
version = "0.62.3"
 7906  10074   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7907  10075   
description = "Smithy HTTP logic for smithy-rs."
 7908  10076   
edition = "2021"
 7909  10077   
license = "Apache-2.0"
 7910  10078   
repository = "https://github.com/smithy-lang/smithy-rs"
 7911  10079   
[package.metadata.docs.rs]
 7912  10080   
all-features = true
 7913  10081   
targets = ["x86_64-unknown-linux-gnu"]
 7914  10082   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7915  10083   
rustdoc-args = ["--cfg", "docsrs"]
 7916  10084   
 7917  10085   
[features]
 7918  10086   
event-stream = ["aws-smithy-eventstream"]
 7919  10087   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 7920  10088   
 7921  10089   
[dependencies]
 7922  10090   
bytes = "1.10.0"
 7923  10091   
bytes-utils = "0.1"
 7924  10092   
percent-encoding = "2.3.1"
 7925  10093   
pin-project-lite = "0.2.14"
 7926  10094   
pin-utils = "0.1.0"
 7927  10095   
tracing = "0.1.40"
 7928  10096   
futures-core = "0.3.31"
 7929  10097   
 7930  10098   
[dependencies.aws-smithy-eventstream]
 7931  10099   
path = "../aws-smithy-eventstream"
 7932  10100   
optional = true
 7933  10101   
version = "0.60.10"
 7934  10102   
 7935  10103   
[dependencies.aws-smithy-runtime-api]
 7936  10104   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 7937  10105   
index 508f7a2..361545e 100644
 7938         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
       10106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 7939  10107   
@@ -1,27 +1,27 @@
 7940  10108   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7941  10109   
[[bin]]
 7942  10110   
name = "read_many_from_str"
 7943  10111   
path = "fuzz_targets/read_many_from_str.rs"
 7944  10112   
test = false
 7945  10113   
doc = false
 7946  10114   
 7947  10115   
[package]
 7948  10116   
name = "aws-smithy-http-fuzz"
 7949  10117   
version = "0.0.0"
 7950  10118   
authors = ["Automatically generated"]
 7951  10119   
publish = false
 7952  10120   
edition = "2021"
 7953  10121   
 7954  10122   
[package.metadata]
 7955  10123   
cargo-fuzz = true
 7956  10124   
 7957  10125   
[dependencies]
 7958  10126   
libfuzzer-sys = "=0.4.7"
 7959  10127   
http = "0.2.3"
 7960  10128   
 7961  10129   
[dependencies.aws-smithy-http]
 7962  10130   
path = ".."
 7963         -
version = "0.62.2"
       10131  +
version = "0.62.3"
 7964  10132   
 7965  10133   
[workspace]
 7966  10134   
members = ["."]
 7967  10135   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 7968  10136   
index fef41d0..7694da6 100644
 7969         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
       10137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 7970  10138   
@@ -25,68 +25,73 @@ impl QueryWriter {
 7971  10139   
    pub fn new(uri: &Uri) -> Self {
 7972  10140   
        let new_path_and_query = uri
 7973  10141   
            .path_and_query()
 7974  10142   
            .map(|pq| pq.to_string())
 7975  10143   
            .unwrap_or_default();
 7976  10144   
        let prefix = if uri.query().is_none() {
 7977  10145   
            Some('?')
 7978  10146   
        } else if !uri.query().unwrap_or_default().is_empty() {
 7979  10147   
            Some('&')
 7980  10148   
        } else {
 7981  10149   
            None
 7982  10150   
        };
 7983  10151   
        QueryWriter {
 7984  10152   
            base_uri: uri.clone(),
 7985  10153   
            new_path_and_query,
 7986  10154   
            prefix,
 7987  10155   
        }
 7988  10156   
    }
 7989  10157   
 7990  10158   
    /// Clears all query parameters.
 7991  10159   
    pub fn clear_params(&mut self) {
 7992  10160   
        if let Some(index) = self.new_path_and_query.find('?') {
 7993  10161   
            self.new_path_and_query.truncate(index);
 7994  10162   
            self.prefix = Some('?');
 7995  10163   
        }
 7996  10164   
    }
 7997  10165   
 7998  10166   
    /// Inserts a new query parameter. The key and value are percent encoded
 7999  10167   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 8000  10168   
    pub fn insert(&mut self, k: &str, v: &str) {
       10169  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
       10170  +
    }
       10171  +
       10172  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
       10173  +
    /// as is.
       10174  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 8001  10175   
        if let Some(prefix) = self.prefix {
 8002  10176   
            self.new_path_and_query.push(prefix);
 8003  10177   
        }
 8004  10178   
        self.prefix = Some('&');
 8005         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
       10179  +
        self.new_path_and_query.push_str(encoded_k);
 8006  10180   
        self.new_path_and_query.push('=');
 8007         -
 8008         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
       10181  +
        self.new_path_and_query.push_str(encoded_v)
 8009  10182   
    }
 8010  10183   
 8011  10184   
    /// Returns just the built query string.
 8012  10185   
    pub fn build_query(self) -> String {
 8013  10186   
        self.build_uri().query().unwrap_or_default().to_string()
 8014  10187   
    }
 8015  10188   
 8016  10189   
    /// Returns a full [`Uri`] with the query string updated.
 8017  10190   
    pub fn build_uri(self) -> Uri {
 8018  10191   
        let mut parts = self.base_uri.into_parts();
 8019  10192   
        parts.path_and_query = Some(
 8020  10193   
            self.new_path_and_query
 8021  10194   
                .parse()
 8022  10195   
                .expect("adding query should not invalidate URI"),
 8023  10196   
        );
 8024  10197   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 8025  10198   
    }
 8026  10199   
}
 8027  10200   
 8028  10201   
#[cfg(test)]
 8029  10202   
mod test {
 8030  10203   
    use super::QueryWriter;
 8031  10204   
    use http_02x::Uri;
 8032  10205   
 8033  10206   
    #[test]
 8034  10207   
    fn empty_uri() {
 8035  10208   
        let uri = Uri::from_static("http://www.example.com");
 8036  10209   
        let mut query_writer = QueryWriter::new(&uri);
 8037  10210   
        query_writer.insert("key", "val%ue");
 8038  10211   
        query_writer.insert("another", "value");
 8039  10212   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 8040  10213   
index f108978..df7a9fe 100644
 8041         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
       10214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 8042  10215   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 8043  10216   
 8044  10217   
[package.metadata.smithy-rs-release-tooling]
 8045  10218   
stable = true
 8046  10219   
[package.metadata.cargo-udeps.ignore]
 8047  10220   
normal = ["aws-smithy-http"]
 8048  10221   
 8049  10222   
[features]
 8050  10223   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 8051  10224   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 8052  10225   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 8053  10226   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 8054  10227   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 8055  10228   
rt-tokio = ["tokio/rt"]
 8056  10229   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 8057  10230   
legacy-test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "connector-hyper-0-14-x", "aws-smithy-http-client/legacy-test-util"]
 8058  10231   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 8059  10232   
 8060  10233   
[dependencies]
 8061  10234   
bytes = "1.10.0"
 8062  10235   
fastrand = "2.3.0"
 8063  10236   
pin-project-lite = "0.2.14"
 8064  10237   
pin-utils = "0.1.0"
 8065  10238   
tracing = "0.1.40"
 8066  10239   
 8067  10240   
[dependencies.aws-smithy-async]
 8068  10241   
path = "../aws-smithy-async"
 8069  10242   
version = "1.2.5"
 8070  10243   
 8071  10244   
[dependencies.aws-smithy-http]
 8072  10245   
path = "../aws-smithy-http"
 8073         -
version = "0.62.2"
       10246  +
version = "0.62.3"
 8074  10247   
 8075  10248   
[dependencies.aws-smithy-observability]
 8076  10249   
path = "../aws-smithy-observability"
 8077  10250   
version = "0.1.3"
 8078  10251   
 8079  10252   
[dependencies.aws-smithy-runtime-api]
 8080  10253   
path = "../aws-smithy-runtime-api"
 8081  10254   
version = "1.8.5"
 8082  10255   
 8083  10256   
[dependencies.aws-smithy-types]
 8084  10257   
path = "../aws-smithy-types"
 8085  10258   
features = ["http-body-0-4-x"]
 8086  10259   
version = "1.3.2"
 8087  10260   
 8088  10261   
[dependencies.aws-smithy-http-client]
 8089  10262   
path = "../aws-smithy-http-client"
 8090  10263   
optional = true
 8091  10264   
version = "1.0.6"
 8092  10265   
 8093  10266   
[dependencies.http-02x]
 8094  10267   
package = "http"
 8095  10268   
version = "0.2.9"
 8096  10269   
 8097  10270   
[dependencies.http-1x]
 8098  10271   
package = "http"
 8099  10272   
version = "1"
 8100  10273   
 8101  10274   
[dependencies.http-body-04x]
 8102  10275   
package = "http-body"
 8103  10276   
version = "0.4.5"
 8104  10277   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 8105  10278   
index 4e050c6..f58eb1c 100644
 8106         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
       10279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 8107  10280   
@@ -1,33 +1,33 @@
 8108  10281   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8109  10282   
[package]
 8110  10283   
name = "aws-smithy-wasm"
 8111  10284   
version = "0.1.4"
 8112  10285   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 8113  10286   
description = "Smithy WebAssembly configuration for smithy-rs."
 8114  10287   
edition = "2021"
 8115  10288   
license = "Apache-2.0"
 8116  10289   
repository = "https://github.com/awslabs/smithy-rs"
 8117  10290   
[package.metadata.docs.rs]
 8118  10291   
all-features = true
 8119  10292   
targets = ["x86_64-unknown-linux-gnu"]
 8120  10293   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 8121  10294   
rustdoc-args = ["--cfg", "docsrs"]
 8122  10295   
 8123  10296   
[dependencies]
 8124  10297   
bytes = "1.10.0"
 8125  10298   
http = "1.0.0"
 8126  10299   
tracing = "0.1.40"
 8127  10300   
wasi = "0.12.1"
 8128  10301   
 8129  10302   
[dependencies.aws-smithy-runtime-api]
 8130  10303   
path = "../aws-smithy-runtime-api"
 8131  10304   
features = ["http-1x"]
 8132  10305   
version = "1.8.5"
 8133  10306   
 8134  10307   
[dependencies.aws-smithy-http]
 8135  10308   
path = "../aws-smithy-http"
 8136         -
version = "0.62.2"
       10309  +
version = "0.62.3"
 8137  10310   
 8138  10311   
[dependencies.aws-smithy-types]
 8139  10312   
path = "../aws-smithy-types"
 8140  10313   
version = "1.3.2"
 8141  10314   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 8142  10315   
index a880648..139e808 100644
 8143         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
       10316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 8144  10317   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 8145  10318   
edition = "2021"
 8146  10319   
license = "Apache-2.0"
 8147  10320   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8148  10321   
rust-version = "1.86.0"
 8149  10322   
readme = "README.md"
 8150  10323   
[package.metadata.smithy]
 8151  10324   
codegen-version = "ci"
 8152  10325   
[package.metadata.docs.rs]
 8153  10326   
all-features = true
 8154  10327   
targets = ["x86_64-unknown-linux-gnu"]
 8155  10328   
[dependencies.aws-credential-types]
 8156  10329   
path = "../aws-credential-types"
 8157  10330   
version = "1.2.4"
 8158  10331   
 8159  10332   
[dependencies.aws-runtime]
 8160  10333   
path = "../aws-runtime"
 8161  10334   
features = ["event-stream"]
 8162  10335   
version = "1.5.9"
 8163  10336   
 8164  10337   
[dependencies.aws-smithy-async]
 8165  10338   
path = "../aws-smithy-async"
 8166  10339   
version = "1.2.5"
 8167  10340   
 8168  10341   
[dependencies.aws-smithy-eventstream]
 8169  10342   
path = "../aws-smithy-eventstream"
 8170  10343   
version = "0.60.10"
 8171  10344   
 8172  10345   
[dependencies.aws-smithy-http]
 8173  10346   
path = "../aws-smithy-http"
 8174  10347   
features = ["event-stream"]
 8175         -
version = "0.62.2"
       10348  +
version = "0.62.3"
 8176  10349   
 8177  10350   
[dependencies.aws-smithy-json]
 8178  10351   
path = "../aws-smithy-json"
 8179  10352   
version = "0.61.4"
 8180  10353   
 8181  10354   
[dependencies.aws-smithy-runtime]
 8182  10355   
path = "../aws-smithy-runtime"
 8183  10356   
features = ["client"]
 8184  10357   
version = "1.8.5"
 8185  10358   
 8186  10359   
[dependencies.aws-smithy-runtime-api]
 8187  10360   
path = "../aws-smithy-runtime-api"
 8188  10361   
features = ["client", "http-02x"]
 8189  10362   
version = "1.8.5"
 8190  10363   
 8191  10364   
[dependencies.aws-smithy-types]
 8192  10365   
path = "../aws-smithy-types"
 8193  10366   
version = "1.3.2"
 8194  10367   
 8195  10368   
[dependencies.aws-types]
 8196  10369   
path = "../aws-types"
 8197  10370   
version = "1.3.8"
 8198  10371   
 8199  10372   
[dependencies.bytes]
 8200  10373   
version = "1.4.0"
 8201  10374   
 8202  10375   
[dependencies.fastrand]
 8203  10376   
version = "2.0.0"
 8204  10377   
 8205  10378   
[dependencies.http]
 8206  10379   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 8207  10380   
index 415ecc9..667d12b 100644
 8208         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
       10381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 8209  10382   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 8210  10383   
edition = "2021"
 8211  10384   
license = "Apache-2.0"
 8212  10385   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8213  10386   
rust-version = "1.86.0"
 8214  10387   
readme = "README.md"
 8215  10388   
[package.metadata.smithy]
 8216  10389   
codegen-version = "ci"
 8217  10390   
[package.metadata.docs.rs]
 8218  10391   
all-features = true
 8219  10392   
targets = ["x86_64-unknown-linux-gnu"]
 8220  10393   
[dependencies.aws-credential-types]
 8221  10394   
path = "../aws-credential-types"
 8222  10395   
version = "1.2.4"
 8223  10396   
 8224  10397   
[dependencies.aws-runtime]
 8225  10398   
path = "../aws-runtime"
 8226  10399   
features = ["event-stream"]
 8227  10400   
version = "1.5.9"
 8228  10401   
 8229  10402   
[dependencies.aws-smithy-async]
 8230  10403   
path = "../aws-smithy-async"
 8231  10404   
version = "1.2.5"
 8232  10405   
 8233  10406   
[dependencies.aws-smithy-eventstream]
 8234  10407   
path = "../aws-smithy-eventstream"
 8235  10408   
version = "0.60.10"
 8236  10409   
 8237  10410   
[dependencies.aws-smithy-http]
 8238  10411   
path = "../aws-smithy-http"
 8239  10412   
features = ["event-stream"]
 8240         -
version = "0.62.2"
       10413  +
version = "0.62.3"
 8241  10414   
 8242  10415   
[dependencies.aws-smithy-json]
 8243  10416   
path = "../aws-smithy-json"
 8244  10417   
version = "0.61.4"
 8245  10418   
 8246  10419   
[dependencies.aws-smithy-runtime]
 8247  10420   
path = "../aws-smithy-runtime"
 8248  10421   
features = ["client"]
 8249  10422   
version = "1.8.5"
 8250  10423   
 8251  10424   
[dependencies.aws-smithy-runtime-api]
 8252  10425   
path = "../aws-smithy-runtime-api"
 8253  10426   
features = ["client", "http-02x"]
 8254  10427   
version = "1.8.5"
 8255  10428   
 8256  10429   
[dependencies.aws-smithy-types]
 8257  10430   
path = "../aws-smithy-types"
 8258  10431   
version = "1.3.2"
 8259  10432   
 8260  10433   
[dependencies.aws-types]
 8261  10434   
path = "../aws-types"
 8262  10435   
version = "1.3.8"
 8263  10436   
 8264  10437   
[dependencies.bytes]
 8265  10438   
version = "1.4.0"
 8266  10439   
 8267  10440   
[dependencies.fastrand]
 8268  10441   
version = "2.0.0"
 8269  10442   
 8270  10443   
[dependencies.http]
 8271  10444   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 8272  10445   
index 8871cab..ed88de6 100644
 8273         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
       10446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 8274  10447   
@@ -1,61 +1,61 @@
 8275  10448   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8276  10449   
[package]
 8277  10450   
name = "aws-sdk-codecatalyst"
 8278  10451   
version = "0.0.0-local"
 8279  10452   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8280  10453   
description = "AWS SDK for Amazon CodeCatalyst"
 8281  10454   
edition = "2021"
 8282  10455   
license = "Apache-2.0"
 8283  10456   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8284  10457   
rust-version = "1.86.0"
 8285  10458   
readme = "README.md"
 8286  10459   
[package.metadata.smithy]
 8287  10460   
codegen-version = "ci"
 8288  10461   
[package.metadata.docs.rs]
 8289  10462   
all-features = true
 8290  10463   
targets = ["x86_64-unknown-linux-gnu"]
 8291  10464   
[dependencies.aws-credential-types]
 8292  10465   
path = "../aws-credential-types"
 8293  10466   
version = "1.2.4"
 8294  10467   
 8295  10468   
[dependencies.aws-runtime]
 8296  10469   
path = "../aws-runtime"
 8297  10470   
version = "1.5.9"
 8298  10471   
 8299  10472   
[dependencies.aws-smithy-async]
 8300  10473   
path = "../aws-smithy-async"
 8301  10474   
version = "1.2.5"
 8302  10475   
 8303  10476   
[dependencies.aws-smithy-http]
 8304  10477   
path = "../aws-smithy-http"
 8305         -
version = "0.62.2"
       10478  +
version = "0.62.3"
 8306  10479   
 8307  10480   
[dependencies.aws-smithy-json]
 8308  10481   
path = "../aws-smithy-json"
 8309  10482   
version = "0.61.4"
 8310  10483   
 8311  10484   
[dependencies.aws-smithy-runtime]
 8312  10485   
path = "../aws-smithy-runtime"
 8313  10486   
features = ["client", "http-auth"]
 8314  10487   
version = "1.8.5"
 8315  10488   
 8316  10489   
[dependencies.aws-smithy-runtime-api]
 8317  10490   
path = "../aws-smithy-runtime-api"
 8318  10491   
features = ["client", "http-02x", "http-auth"]
 8319  10492   
version = "1.8.5"
 8320  10493   
 8321  10494   
[dependencies.aws-smithy-types]
 8322  10495   
path = "../aws-smithy-types"
 8323  10496   
version = "1.3.2"
 8324  10497   
 8325  10498   
[dependencies.aws-types]
 8326  10499   
path = "../aws-types"
 8327  10500   
version = "1.3.8"
 8328  10501   
 8329  10502   
[dependencies.bytes]
 8330  10503   
version = "1.4.0"
 8331  10504   
 8332  10505   
[dependencies.fastrand]
 8333  10506   
version = "2.0.0"
 8334  10507   
 8335  10508   
[dependencies.http]
 8336  10509   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 8337  10510   
index 89573ff..05238af 100644
 8338         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
       10511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 8339  10512   
@@ -1,61 +1,61 @@
 8340  10513   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8341  10514   
[package]
 8342  10515   
name = "aws-sdk-config"
 8343  10516   
version = "0.0.0-local"
 8344  10517   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8345  10518   
description = "AWS SDK for AWS Config"
 8346  10519   
edition = "2021"
 8347  10520   
license = "Apache-2.0"
 8348  10521   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8349  10522   
rust-version = "1.86.0"
 8350  10523   
readme = "README.md"
 8351  10524   
[package.metadata.smithy]
 8352  10525   
codegen-version = "ci"
 8353  10526   
[package.metadata.docs.rs]
 8354  10527   
all-features = true
 8355  10528   
targets = ["x86_64-unknown-linux-gnu"]
 8356  10529   
[dependencies.aws-credential-types]
 8357  10530   
path = "../aws-credential-types"
 8358  10531   
version = "1.2.4"
 8359  10532   
 8360  10533   
[dependencies.aws-runtime]
 8361  10534   
path = "../aws-runtime"
 8362  10535   
version = "1.5.9"
 8363  10536   
 8364  10537   
[dependencies.aws-smithy-async]
 8365  10538   
path = "../aws-smithy-async"
 8366  10539   
version = "1.2.5"
 8367  10540   
 8368  10541   
[dependencies.aws-smithy-http]
 8369  10542   
path = "../aws-smithy-http"
 8370         -
version = "0.62.2"
       10543  +
version = "0.62.3"
 8371  10544   
 8372  10545   
[dependencies.aws-smithy-json]
 8373  10546   
path = "../aws-smithy-json"
 8374  10547   
version = "0.61.4"
 8375  10548   
 8376  10549   
[dependencies.aws-smithy-runtime]
 8377  10550   
path = "../aws-smithy-runtime"
 8378  10551   
features = ["client"]
 8379  10552   
version = "1.8.5"
 8380  10553   
 8381  10554   
[dependencies.aws-smithy-runtime-api]
 8382  10555   
path = "../aws-smithy-runtime-api"
 8383  10556   
features = ["client", "http-02x"]
 8384  10557   
version = "1.8.5"
 8385  10558   
 8386  10559   
[dependencies.aws-smithy-types]
 8387  10560   
path = "../aws-smithy-types"
 8388  10561   
version = "1.3.2"
 8389  10562   
 8390  10563   
[dependencies.aws-types]
 8391  10564   
path = "../aws-types"
 8392  10565   
version = "1.3.8"
 8393  10566   
 8394  10567   
[dependencies.bytes]
 8395  10568   
version = "1.4.0"
 8396  10569   
 8397  10570   
[dependencies.fastrand]
 8398  10571   
version = "2.0.0"
 8399  10572   
 8400  10573   
[dependencies.http]
 8401  10574   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8402  10575   
index d397c58..2c1062b 100644
 8403         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
       10576  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8404  10577   
@@ -1,61 +1,61 @@
 8405  10578   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8406  10579   
[package]
 8407  10580   
name = "aws-sdk-dynamodb"
 8408  10581   
version = "0.0.0-local"
 8409  10582   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8410  10583   
description = "AWS SDK for Amazon DynamoDB"
 8411  10584   
edition = "2021"
 8412  10585   
license = "Apache-2.0"
 8413  10586   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8414  10587   
rust-version = "1.86.0"
 8415  10588   
readme = "README.md"
 8416  10589   
[package.metadata.smithy]
 8417  10590   
codegen-version = "ci"
 8418  10591   
[package.metadata.docs.rs]
 8419  10592   
all-features = true
 8420  10593   
targets = ["x86_64-unknown-linux-gnu"]
 8421  10594   
[dependencies.aws-credential-types]
 8422  10595   
path = "../aws-credential-types"
 8423  10596   
version = "1.2.4"
 8424  10597   
 8425  10598   
[dependencies.aws-runtime]
 8426  10599   
path = "../aws-runtime"
 8427  10600   
version = "1.5.9"
 8428  10601   
 8429  10602   
[dependencies.aws-smithy-async]
 8430  10603   
path = "../aws-smithy-async"
 8431  10604   
version = "1.2.5"
 8432  10605   
 8433  10606   
[dependencies.aws-smithy-http]
 8434  10607   
path = "../aws-smithy-http"
 8435         -
version = "0.62.2"
       10608  +
version = "0.62.3"
 8436  10609   
 8437  10610   
[dependencies.aws-smithy-json]
 8438  10611   
path = "../aws-smithy-json"
 8439  10612   
version = "0.61.4"
 8440  10613   
 8441  10614   
[dependencies.aws-smithy-runtime]
 8442  10615   
path = "../aws-smithy-runtime"
 8443  10616   
features = ["client"]
 8444  10617   
version = "1.8.5"
 8445  10618   
 8446  10619   
[dependencies.aws-smithy-runtime-api]
 8447  10620   
path = "../aws-smithy-runtime-api"
 8448  10621   
features = ["client", "http-02x"]
 8449  10622   
version = "1.8.5"
 8450  10623   
 8451  10624   
[dependencies.aws-smithy-types]
 8452  10625   
path = "../aws-smithy-types"
 8453  10626   
version = "1.3.2"
 8454  10627   
 8455  10628   
[dependencies.aws-types]
 8456  10629   
path = "../aws-types"
 8457  10630   
version = "1.3.8"
 8458  10631   
 8459  10632   
[dependencies.bytes]
 8460  10633   
version = "1.4.0"
 8461  10634   
 8462  10635   
[dependencies.fastrand]
 8463  10636   
version = "2.0.0"
 8464  10637   
 8465  10638   
[dependencies.http]
 8466  10639   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8467  10640   
index c0ba315..46168af 100644
 8468         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
       10641  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8469  10642   
@@ -1,61 +1,61 @@
 8470  10643   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8471  10644   
[package]
 8472  10645   
name = "aws-sdk-ec2"
 8473  10646   
version = "0.0.0-local"
 8474  10647   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8475  10648   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 8476  10649   
edition = "2021"
 8477  10650   
license = "Apache-2.0"
 8478  10651   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8479  10652   
rust-version = "1.86.0"
 8480  10653   
readme = "README.md"
 8481  10654   
[package.metadata.smithy]
 8482  10655   
codegen-version = "ci"
 8483  10656   
[package.metadata.docs.rs]
 8484  10657   
all-features = true
 8485  10658   
targets = ["x86_64-unknown-linux-gnu"]
 8486  10659   
[dependencies.aws-credential-types]
 8487  10660   
path = "../aws-credential-types"
 8488  10661   
version = "1.2.4"
 8489  10662   
 8490  10663   
[dependencies.aws-runtime]
 8491  10664   
path = "../aws-runtime"
 8492  10665   
version = "1.5.9"
 8493  10666   
 8494  10667   
[dependencies.aws-smithy-async]
 8495  10668   
path = "../aws-smithy-async"
 8496  10669   
version = "1.2.5"
 8497  10670   
 8498  10671   
[dependencies.aws-smithy-http]
 8499  10672   
path = "../aws-smithy-http"
 8500         -
version = "0.62.2"
       10673  +
version = "0.62.3"
 8501  10674   
 8502  10675   
[dependencies.aws-smithy-json]
 8503  10676   
path = "../aws-smithy-json"
 8504  10677   
version = "0.61.4"
 8505  10678   
 8506  10679   
[dependencies.aws-smithy-query]
 8507  10680   
path = "../aws-smithy-query"
 8508  10681   
version = "0.60.7"
 8509  10682   
 8510  10683   
[dependencies.aws-smithy-runtime]
 8511  10684   
path = "../aws-smithy-runtime"
 8512  10685   
features = ["client"]
 8513  10686   
version = "1.8.5"
 8514  10687   
 8515  10688   
[dependencies.aws-smithy-runtime-api]
 8516  10689   
path = "../aws-smithy-runtime-api"
 8517  10690   
features = ["client", "http-02x"]
 8518  10691   
version = "1.8.5"
 8519  10692   
 8520  10693   
[dependencies.aws-smithy-types]
 8521  10694   
path = "../aws-smithy-types"
 8522  10695   
version = "1.3.2"
 8523  10696   
 8524  10697   
[dependencies.aws-smithy-xml]
 8525  10698   
path = "../aws-smithy-xml"
 8526  10699   
version = "0.60.10"
 8527  10700   
 8528  10701   
[dependencies.aws-types]
 8529  10702   
path = "../aws-types"
 8530  10703   
version = "1.3.8"
 8531  10704   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8532  10705   
index 4474d17..095d40e 100644
 8533         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
       10706  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8534  10707   
@@ -1,61 +1,61 @@
 8535  10708   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8536  10709   
[package]
 8537  10710   
name = "aws-sdk-ecs"
 8538  10711   
version = "0.0.0-local"
 8539  10712   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8540  10713   
description = "AWS SDK for Amazon EC2 Container Service"
 8541  10714   
edition = "2021"
 8542  10715   
license = "Apache-2.0"
 8543  10716   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8544  10717   
rust-version = "1.86.0"
 8545  10718   
readme = "README.md"
 8546  10719   
[package.metadata.smithy]
 8547  10720   
codegen-version = "ci"
 8548  10721   
[package.metadata.docs.rs]
 8549  10722   
all-features = true
 8550  10723   
targets = ["x86_64-unknown-linux-gnu"]
 8551  10724   
[dependencies.aws-credential-types]
 8552  10725   
path = "../aws-credential-types"
 8553  10726   
version = "1.2.4"
 8554  10727   
 8555  10728   
[dependencies.aws-runtime]
 8556  10729   
path = "../aws-runtime"
 8557  10730   
version = "1.5.9"
 8558  10731   
 8559  10732   
[dependencies.aws-smithy-async]
 8560  10733   
path = "../aws-smithy-async"
 8561  10734   
version = "1.2.5"
 8562  10735   
 8563  10736   
[dependencies.aws-smithy-http]
 8564  10737   
path = "../aws-smithy-http"
 8565         -
version = "0.62.2"
       10738  +
version = "0.62.3"
 8566  10739   
 8567  10740   
[dependencies.aws-smithy-json]
 8568  10741   
path = "../aws-smithy-json"
 8569  10742   
version = "0.61.4"
 8570  10743   
 8571  10744   
[dependencies.aws-smithy-runtime]
 8572  10745   
path = "../aws-smithy-runtime"
 8573  10746   
features = ["client"]
 8574  10747   
version = "1.8.5"
 8575  10748   
 8576  10749   
[dependencies.aws-smithy-runtime-api]
 8577  10750   
path = "../aws-smithy-runtime-api"
 8578  10751   
features = ["client", "http-02x"]
 8579  10752   
version = "1.8.5"
 8580  10753   
 8581  10754   
[dependencies.aws-smithy-types]
 8582  10755   
path = "../aws-smithy-types"
 8583  10756   
version = "1.3.2"
 8584  10757   
 8585  10758   
[dependencies.aws-types]
 8586  10759   
path = "../aws-types"
 8587  10760   
version = "1.3.8"
 8588  10761   
 8589  10762   
[dependencies.bytes]
 8590  10763   
version = "1.4.0"
 8591  10764   
 8592  10765   
[dependencies.fastrand]
 8593  10766   
version = "2.0.0"
 8594  10767   
 8595  10768   
[dependencies.http]
 8596  10769   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8597  10770   
index 15b1d77..16d7d89 100644
 8598         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
       10771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8599  10772   
@@ -1,65 +1,65 @@
 8600  10773   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8601  10774   
[package]
 8602  10775   
name = "aws-sdk-glacier"
 8603  10776   
version = "0.0.0-local"
 8604  10777   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8605  10778   
description = "AWS SDK for Amazon Glacier"
 8606  10779   
edition = "2021"
 8607  10780   
license = "Apache-2.0"
 8608  10781   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8609  10782   
rust-version = "1.86.0"
 8610  10783   
readme = "README.md"
 8611  10784   
[package.metadata.smithy]
 8612  10785   
codegen-version = "ci"
 8613  10786   
[package.metadata.docs.rs]
 8614  10787   
all-features = true
 8615  10788   
targets = ["x86_64-unknown-linux-gnu"]
 8616  10789   
[dependencies.aws-credential-types]
 8617  10790   
path = "../aws-credential-types"
 8618  10791   
version = "1.2.4"
 8619  10792   
 8620  10793   
[dependencies.aws-runtime]
 8621  10794   
path = "../aws-runtime"
 8622  10795   
version = "1.5.9"
 8623  10796   
 8624  10797   
[dependencies.aws-sigv4]
 8625  10798   
path = "../aws-sigv4"
 8626         -
version = "1.3.3"
       10799  +
version = "1.3.4"
 8627  10800   
 8628  10801   
[dependencies.aws-smithy-async]
 8629  10802   
path = "../aws-smithy-async"
 8630  10803   
version = "1.2.5"
 8631  10804   
 8632  10805   
[dependencies.aws-smithy-http]
 8633  10806   
path = "../aws-smithy-http"
 8634         -
version = "0.62.2"
       10807  +
version = "0.62.3"
 8635  10808   
 8636  10809   
[dependencies.aws-smithy-json]
 8637  10810   
path = "../aws-smithy-json"
 8638  10811   
version = "0.61.4"
 8639  10812   
 8640  10813   
[dependencies.aws-smithy-runtime]
 8641  10814   
path = "../aws-smithy-runtime"
 8642  10815   
features = ["client"]
 8643  10816   
version = "1.8.5"
 8644  10817   
 8645  10818   
[dependencies.aws-smithy-runtime-api]
 8646  10819   
path = "../aws-smithy-runtime-api"
 8647  10820   
features = ["client", "http-02x"]
 8648  10821   
version = "1.8.5"
 8649  10822   
 8650  10823   
[dependencies.aws-smithy-types]
 8651  10824   
path = "../aws-smithy-types"
 8652  10825   
version = "1.3.2"
 8653  10826   
 8654  10827   
[dependencies.aws-types]
 8655  10828   
path = "../aws-types"
 8656  10829   
version = "1.3.8"
 8657  10830   
 8658  10831   
[dependencies.bytes]
 8659  10832   
version = "1.4.0"
 8660  10833   
 8661  10834   
[dependencies.fastrand]
 8662  10835   
version = "2.0.0"
 8663  10836   
 8664  10837   
[dependencies.hex]
 8665  10838   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8666  10839   
index d718a3a..65e6f24 100644
 8667         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
       10840  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8668  10841   
@@ -1,61 +1,61 @@
 8669  10842   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8670  10843   
[package]
 8671  10844   
name = "aws-sdk-iam"
 8672  10845   
version = "0.0.0-local"
 8673  10846   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8674  10847   
description = "AWS SDK for AWS Identity and Access Management"
 8675  10848   
edition = "2021"
 8676  10849   
license = "Apache-2.0"
 8677  10850   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8678  10851   
rust-version = "1.86.0"
 8679  10852   
readme = "README.md"
 8680  10853   
[package.metadata.smithy]
 8681  10854   
codegen-version = "ci"
 8682  10855   
[package.metadata.docs.rs]
 8683  10856   
all-features = true
 8684  10857   
targets = ["x86_64-unknown-linux-gnu"]
 8685  10858   
[dependencies.aws-credential-types]
 8686  10859   
path = "../aws-credential-types"
 8687  10860   
version = "1.2.4"
 8688  10861   
 8689  10862   
[dependencies.aws-runtime]
 8690  10863   
path = "../aws-runtime"
 8691  10864   
version = "1.5.9"
 8692  10865   
 8693  10866   
[dependencies.aws-smithy-async]
 8694  10867   
path = "../aws-smithy-async"
 8695  10868   
version = "1.2.5"
 8696  10869   
 8697  10870   
[dependencies.aws-smithy-http]
 8698  10871   
path = "../aws-smithy-http"
 8699         -
version = "0.62.2"
       10872  +
version = "0.62.3"
 8700  10873   
 8701  10874   
[dependencies.aws-smithy-json]
 8702  10875   
path = "../aws-smithy-json"
 8703  10876   
version = "0.61.4"
 8704  10877   
 8705  10878   
[dependencies.aws-smithy-query]
 8706  10879   
path = "../aws-smithy-query"
 8707  10880   
version = "0.60.7"
 8708  10881   
 8709  10882   
[dependencies.aws-smithy-runtime]
 8710  10883   
path = "../aws-smithy-runtime"
 8711  10884   
features = ["client"]
 8712  10885   
version = "1.8.5"
 8713  10886   
 8714  10887   
[dependencies.aws-smithy-runtime-api]
 8715  10888   
path = "../aws-smithy-runtime-api"
 8716  10889   
features = ["client", "http-02x"]
 8717  10890   
version = "1.8.5"
 8718  10891   
 8719  10892   
[dependencies.aws-smithy-types]
 8720  10893   
path = "../aws-smithy-types"
 8721  10894   
version = "1.3.2"
 8722  10895   
 8723  10896   
[dependencies.aws-smithy-xml]
 8724  10897   
path = "../aws-smithy-xml"
 8725  10898   
version = "0.60.10"
 8726  10899   
 8727  10900   
[dependencies.aws-types]
 8728  10901   
path = "../aws-types"
 8729  10902   
version = "1.3.8"
 8730  10903   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8731  10904   
index 0ed4302..3d828a5 100644
 8732         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
       10905  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8733  10906   
@@ -1,61 +1,61 @@
 8734  10907   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8735  10908   
[package]
 8736  10909   
name = "aws-sdk-kms"
 8737  10910   
version = "0.0.0-local"
 8738  10911   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8739  10912   
description = "AWS SDK for AWS Key Management Service"
 8740  10913   
edition = "2021"
 8741  10914   
license = "Apache-2.0"
 8742  10915   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8743  10916   
rust-version = "1.86.0"
 8744  10917   
readme = "README.md"
 8745  10918   
[package.metadata.smithy]
 8746  10919   
codegen-version = "ci"
 8747  10920   
[package.metadata.docs.rs]
 8748  10921   
all-features = true
 8749  10922   
targets = ["x86_64-unknown-linux-gnu"]
 8750  10923   
[dependencies.aws-credential-types]
 8751  10924   
path = "../aws-credential-types"
 8752  10925   
version = "1.2.4"
 8753  10926   
 8754  10927   
[dependencies.aws-runtime]
 8755  10928   
path = "../aws-runtime"
 8756  10929   
version = "1.5.9"
 8757  10930   
 8758  10931   
[dependencies.aws-smithy-async]
 8759  10932   
path = "../aws-smithy-async"
 8760  10933   
version = "1.2.5"
 8761  10934   
 8762  10935   
[dependencies.aws-smithy-http]
 8763  10936   
path = "../aws-smithy-http"
 8764         -
version = "0.62.2"
       10937  +
version = "0.62.3"
 8765  10938   
 8766  10939   
[dependencies.aws-smithy-json]
 8767  10940   
path = "../aws-smithy-json"
 8768  10941   
version = "0.61.4"
 8769  10942   
 8770  10943   
[dependencies.aws-smithy-runtime]
 8771  10944   
path = "../aws-smithy-runtime"
 8772  10945   
features = ["client"]
 8773  10946   
version = "1.8.5"
 8774  10947   
 8775  10948   
[dependencies.aws-smithy-runtime-api]
 8776  10949   
path = "../aws-smithy-runtime-api"
 8777  10950   
features = ["client", "http-02x"]
 8778  10951   
version = "1.8.5"
 8779  10952   
 8780  10953   
[dependencies.aws-smithy-types]
 8781  10954   
path = "../aws-smithy-types"
 8782  10955   
version = "1.3.2"
 8783  10956   
 8784  10957   
[dependencies.aws-types]
 8785  10958   
path = "../aws-types"
 8786  10959   
version = "1.3.8"
 8787  10960   
 8788  10961   
[dependencies.bytes]
 8789  10962   
version = "1.4.0"
 8790  10963   
 8791  10964   
[dependencies.fastrand]
 8792  10965   
version = "2.0.0"
 8793  10966   
 8794  10967   
[dependencies.http]
 8795  10968   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8796  10969   
index 6518dfc..6b94752 100644
 8797         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
       10970  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8798  10971   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 8799  10972   
edition = "2021"
 8800  10973   
license = "Apache-2.0"
 8801  10974   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8802  10975   
rust-version = "1.86.0"
 8803  10976   
readme = "README.md"
 8804  10977   
[package.metadata.smithy]
 8805  10978   
codegen-version = "ci"
 8806  10979   
[package.metadata.docs.rs]
 8807  10980   
all-features = true
 8808  10981   
targets = ["x86_64-unknown-linux-gnu"]
 8809  10982   
[dependencies.aws-credential-types]
 8810  10983   
path = "../aws-credential-types"
 8811  10984   
version = "1.2.4"
 8812  10985   
 8813  10986   
[dependencies.aws-runtime]
 8814  10987   
path = "../aws-runtime"
 8815  10988   
features = ["event-stream"]
 8816  10989   
version = "1.5.9"
 8817  10990   
 8818  10991   
[dependencies.aws-smithy-async]
 8819  10992   
path = "../aws-smithy-async"
 8820  10993   
version = "1.2.5"
 8821  10994   
 8822  10995   
[dependencies.aws-smithy-eventstream]
 8823  10996   
path = "../aws-smithy-eventstream"
 8824  10997   
version = "0.60.10"
 8825  10998   
 8826  10999   
[dependencies.aws-smithy-http]
 8827  11000   
path = "../aws-smithy-http"
 8828  11001   
features = ["event-stream"]
 8829         -
version = "0.62.2"
       11002  +
version = "0.62.3"
 8830  11003   
 8831  11004   
[dependencies.aws-smithy-json]
 8832  11005   
path = "../aws-smithy-json"
 8833  11006   
version = "0.61.4"
 8834  11007   
 8835  11008   
[dependencies.aws-smithy-runtime]
 8836  11009   
path = "../aws-smithy-runtime"
 8837  11010   
features = ["client"]
 8838  11011   
version = "1.8.5"
 8839  11012   
 8840  11013   
[dependencies.aws-smithy-runtime-api]
 8841  11014   
path = "../aws-smithy-runtime-api"
 8842  11015   
features = ["client", "http-02x"]
 8843  11016   
version = "1.8.5"
 8844  11017   
 8845  11018   
[dependencies.aws-smithy-types]
 8846  11019   
path = "../aws-smithy-types"
 8847  11020   
version = "1.3.2"
 8848  11021   
 8849  11022   
[dependencies.aws-types]
 8850  11023   
path = "../aws-types"
 8851  11024   
version = "1.3.8"
 8852  11025   
 8853  11026   
[dependencies.bytes]
 8854  11027   
version = "1.4.0"
 8855  11028   
 8856  11029   
[dependencies.fastrand]
 8857  11030   
version = "2.0.0"
 8858  11031   
 8859  11032   
[dependencies.http]
 8860  11033   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8861  11034   
index dabb0e0..34cbc15 100644
 8862         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
       11035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8863  11036   
@@ -1,65 +1,65 @@
 8864  11037   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8865  11038   
[package]
 8866  11039   
name = "aws-sdk-polly"
 8867  11040   
version = "0.0.0-local"
 8868  11041   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8869  11042   
description = "AWS SDK for Amazon Polly"
 8870  11043   
edition = "2021"
 8871  11044   
license = "Apache-2.0"
 8872  11045   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8873  11046   
rust-version = "1.86.0"
 8874  11047   
readme = "README.md"
 8875  11048   
[package.metadata.smithy]
 8876  11049   
codegen-version = "ci"
 8877  11050   
[package.metadata.docs.rs]
 8878  11051   
all-features = true
 8879  11052   
targets = ["x86_64-unknown-linux-gnu"]
 8880  11053   
[dependencies.aws-credential-types]
 8881  11054   
path = "../aws-credential-types"
 8882  11055   
version = "1.2.4"
 8883  11056   
 8884  11057   
[dependencies.aws-runtime]
 8885  11058   
path = "../aws-runtime"
 8886  11059   
version = "1.5.9"
 8887  11060   
 8888  11061   
[dependencies.aws-sigv4]
 8889  11062   
path = "../aws-sigv4"
 8890         -
version = "1.3.3"
       11063  +
version = "1.3.4"
 8891  11064   
 8892  11065   
[dependencies.aws-smithy-async]
 8893  11066   
path = "../aws-smithy-async"
 8894  11067   
version = "1.2.5"
 8895  11068   
 8896  11069   
[dependencies.aws-smithy-http]
 8897  11070   
path = "../aws-smithy-http"
 8898         -
version = "0.62.2"
       11071  +
version = "0.62.3"
 8899  11072   
 8900  11073   
[dependencies.aws-smithy-json]
 8901  11074   
path = "../aws-smithy-json"
 8902  11075   
version = "0.61.4"
 8903  11076   
 8904  11077   
[dependencies.aws-smithy-runtime]
 8905  11078   
path = "../aws-smithy-runtime"
 8906  11079   
features = ["client"]
 8907  11080   
version = "1.8.5"
 8908  11081   
 8909  11082   
[dependencies.aws-smithy-runtime-api]
 8910  11083   
path = "../aws-smithy-runtime-api"
 8911  11084   
features = ["client", "http-02x"]
 8912  11085   
version = "1.8.5"
 8913  11086   
 8914  11087   
[dependencies.aws-smithy-types]
 8915  11088   
path = "../aws-smithy-types"
 8916  11089   
version = "1.3.2"
 8917  11090   
 8918  11091   
[dependencies.aws-types]
 8919  11092   
path = "../aws-types"
 8920  11093   
version = "1.3.8"
 8921  11094   
 8922  11095   
[dependencies.bytes]
 8923  11096   
version = "1.4.0"
 8924  11097   
 8925  11098   
[dependencies.fastrand]
 8926  11099   
version = "2.0.0"
 8927  11100   
 8928  11101   
[dependencies.http]
 8929  11102   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8930  11103   
index a884716..f3d8713 100644
 8931         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
       11104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8932  11105   
@@ -1,61 +1,61 @@
 8933  11106   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8934  11107   
[package]
 8935  11108   
name = "aws-sdk-qldbsession"
 8936  11109   
version = "0.0.0-local"
 8937  11110   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8938  11111   
description = "AWS SDK for Amazon QLDB Session"
 8939  11112   
edition = "2021"
 8940  11113   
license = "Apache-2.0"
 8941  11114   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8942  11115   
rust-version = "1.86.0"
 8943  11116   
readme = "README.md"
 8944  11117   
[package.metadata.smithy]
 8945  11118   
codegen-version = "ci"
 8946  11119   
[package.metadata.docs.rs]
 8947  11120   
all-features = true
 8948  11121   
targets = ["x86_64-unknown-linux-gnu"]
 8949  11122   
[dependencies.aws-credential-types]
 8950  11123   
path = "../aws-credential-types"
 8951  11124   
version = "1.2.4"
 8952  11125   
 8953  11126   
[dependencies.aws-runtime]
 8954  11127   
path = "../aws-runtime"
 8955  11128   
version = "1.5.9"
 8956  11129   
 8957  11130   
[dependencies.aws-smithy-async]
 8958  11131   
path = "../aws-smithy-async"
 8959  11132   
version = "1.2.5"
 8960  11133   
 8961  11134   
[dependencies.aws-smithy-http]
 8962  11135   
path = "../aws-smithy-http"
 8963         -
version = "0.62.2"
       11136  +
version = "0.62.3"
 8964  11137   
 8965  11138   
[dependencies.aws-smithy-json]
 8966  11139   
path = "../aws-smithy-json"
 8967  11140   
version = "0.61.4"
 8968  11141   
 8969  11142   
[dependencies.aws-smithy-runtime]
 8970  11143   
path = "../aws-smithy-runtime"
 8971  11144   
features = ["client"]
 8972  11145   
version = "1.8.5"
 8973  11146   
 8974  11147   
[dependencies.aws-smithy-runtime-api]
 8975  11148   
path = "../aws-smithy-runtime-api"
 8976  11149   
features = ["client", "http-02x"]
 8977  11150   
version = "1.8.5"
 8978  11151   
 8979  11152   
[dependencies.aws-smithy-types]
 8980  11153   
path = "../aws-smithy-types"
 8981  11154   
version = "1.3.2"
 8982  11155   
 8983  11156   
[dependencies.aws-types]
 8984  11157   
path = "../aws-types"
 8985  11158   
version = "1.3.8"
 8986  11159   
 8987  11160   
[dependencies.bytes]
 8988  11161   
version = "1.4.0"
 8989  11162   
 8990  11163   
[dependencies.fastrand]
 8991  11164   
version = "2.0.0"
 8992  11165   
 8993  11166   
[dependencies.http]
 8994  11167   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8995  11168   
index 32a7dc9..a2c752d 100644
 8996         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
       11169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8997  11170   
@@ -1,61 +1,61 @@
 8998  11171   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8999  11172   
[package]
 9000  11173   
name = "aws-sdk-route53"
 9001  11174   
version = "0.0.0-local"
 9002  11175   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9003  11176   
description = "AWS SDK for Amazon Route 53"
 9004  11177   
edition = "2021"
 9005  11178   
license = "Apache-2.0"
 9006  11179   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9007  11180   
rust-version = "1.86.0"
 9008  11181   
readme = "README.md"
 9009  11182   
[package.metadata.smithy]
 9010  11183   
codegen-version = "ci"
 9011  11184   
[package.metadata.docs.rs]
 9012  11185   
all-features = true
 9013  11186   
targets = ["x86_64-unknown-linux-gnu"]
 9014  11187   
[dependencies.aws-credential-types]
 9015  11188   
path = "../aws-credential-types"
 9016  11189   
version = "1.2.4"
 9017  11190   
 9018  11191   
[dependencies.aws-runtime]
 9019  11192   
path = "../aws-runtime"
 9020  11193   
version = "1.5.9"
 9021  11194   
 9022  11195   
[dependencies.aws-smithy-async]
 9023  11196   
path = "../aws-smithy-async"
 9024  11197   
version = "1.2.5"
 9025  11198   
 9026  11199   
[dependencies.aws-smithy-http]
 9027  11200   
path = "../aws-smithy-http"
 9028         -
version = "0.62.2"
       11201  +
version = "0.62.3"
 9029  11202   
 9030  11203   
[dependencies.aws-smithy-json]
 9031  11204   
path = "../aws-smithy-json"
 9032  11205   
version = "0.61.4"
 9033  11206   
 9034  11207   
[dependencies.aws-smithy-runtime]
 9035  11208   
path = "../aws-smithy-runtime"
 9036  11209   
features = ["client"]
 9037  11210   
version = "1.8.5"
 9038  11211   
 9039  11212   
[dependencies.aws-smithy-runtime-api]
 9040  11213   
path = "../aws-smithy-runtime-api"
 9041  11214   
features = ["client", "http-02x"]
 9042  11215   
version = "1.8.5"
 9043  11216   
 9044  11217   
[dependencies.aws-smithy-types]
 9045  11218   
path = "../aws-smithy-types"
 9046  11219   
version = "1.3.2"
 9047  11220   
 9048  11221   
[dependencies.aws-smithy-xml]
 9049  11222   
path = "../aws-smithy-xml"
 9050  11223   
version = "0.60.10"
 9051  11224   
 9052  11225   
[dependencies.aws-types]
 9053  11226   
path = "../aws-types"
 9054  11227   
version = "1.3.8"
 9055  11228   
 9056  11229   
[dependencies.fastrand]
 9057  11230   
version = "2.0.0"
 9058  11231   
 9059  11232   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 9060  11233   
index f65e261..2f6bec0 100644
 9061         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       11234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 9062  11235   
@@ -1,75 +1,75 @@
 9063  11236   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9064  11237   
[package]
 9065  11238   
name = "aws-sdk-s3"
 9066  11239   
version = "0.0.0-local"
 9067  11240   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9068  11241   
description = "AWS SDK for Amazon Simple Storage Service"
 9069  11242   
edition = "2021"
 9070  11243   
license = "Apache-2.0"
 9071  11244   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9072  11245   
rust-version = "1.86.0"
 9073  11246   
readme = "README.md"
 9074  11247   
[package.metadata.smithy]
 9075  11248   
codegen-version = "ci"
 9076  11249   
[package.metadata.docs.rs]
 9077  11250   
all-features = true
 9078  11251   
targets = ["x86_64-unknown-linux-gnu"]
 9079  11252   
[dependencies.aws-credential-types]
 9080  11253   
path = "../aws-credential-types"
 9081  11254   
version = "1.2.4"
 9082  11255   
 9083  11256   
[dependencies.aws-runtime]
 9084  11257   
path = "../aws-runtime"
 9085  11258   
features = ["event-stream", "http-02x"]
 9086  11259   
version = "1.5.9"
 9087  11260   
 9088  11261   
[dependencies.aws-sigv4]
 9089  11262   
path = "../aws-sigv4"
 9090         -
version = "1.3.3"
       11263  +
version = "1.3.4"
 9091  11264   
 9092  11265   
[dependencies.aws-smithy-async]
 9093  11266   
path = "../aws-smithy-async"
 9094  11267   
version = "1.2.5"
 9095  11268   
 9096  11269   
[dependencies.aws-smithy-checksums]
 9097  11270   
path = "../aws-smithy-checksums"
 9098  11271   
version = "0.63.5"
 9099  11272   
 9100  11273   
[dependencies.aws-smithy-eventstream]
 9101  11274   
path = "../aws-smithy-eventstream"
 9102  11275   
version = "0.60.10"
 9103  11276   
 9104  11277   
[dependencies.aws-smithy-http]
 9105  11278   
path = "../aws-smithy-http"
 9106  11279   
features = ["event-stream"]
 9107         -
version = "0.62.2"
       11280  +
version = "0.62.3"
 9108  11281   
 9109  11282   
[dependencies.aws-smithy-json]
 9110  11283   
path = "../aws-smithy-json"
 9111  11284   
version = "0.61.4"
 9112  11285   
 9113  11286   
[dependencies.aws-smithy-runtime]
 9114  11287   
path = "../aws-smithy-runtime"
 9115  11288   
features = ["client"]
 9116  11289   
version = "1.8.5"
 9117  11290   
 9118  11291   
[dependencies.aws-smithy-runtime-api]
 9119  11292   
path = "../aws-smithy-runtime-api"
 9120  11293   
features = ["client", "http-02x"]
 9121  11294   
version = "1.8.5"
 9122  11295   
 9123  11296   
[dependencies.aws-smithy-types]
 9124  11297   
path = "../aws-smithy-types"
 9125  11298   
version = "1.3.2"
 9126  11299   
 9127  11300   
[dependencies.aws-smithy-xml]
 9128  11301   
path = "../aws-smithy-xml"
 9129  11302   
version = "0.60.10"
 9130  11303   
 9131  11304   
[dependencies.aws-types]
 9132  11305   
path = "../aws-types"
 9133  11306   
version = "1.3.8"
 9134  11307   
 9135  11308   
[dependencies.bytes]
 9136  11309   
version = "1.4.0"
 9137  11310   
 9138  11311   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 9139  11312   
index b4d1cdd..861c0cc 100644
 9140         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       11313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 9141  11314   
@@ -1,61 +1,61 @@
 9142  11315   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9143  11316   
[package]
 9144  11317   
name = "aws-sdk-s3control"
 9145  11318   
version = "0.0.0-local"
 9146  11319   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9147  11320   
description = "AWS SDK for AWS S3 Control"
 9148  11321   
edition = "2021"
 9149  11322   
license = "Apache-2.0"
 9150  11323   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9151  11324   
rust-version = "1.86.0"
 9152  11325   
readme = "README.md"
 9153  11326   
[package.metadata.smithy]
 9154  11327   
codegen-version = "ci"
 9155  11328   
[package.metadata.docs.rs]
 9156  11329   
all-features = true
 9157  11330   
targets = ["x86_64-unknown-linux-gnu"]
 9158  11331   
[dependencies.aws-credential-types]
 9159  11332   
path = "../aws-credential-types"
 9160  11333   
version = "1.2.4"
 9161  11334   
 9162  11335   
[dependencies.aws-runtime]
 9163  11336   
path = "../aws-runtime"
 9164  11337   
version = "1.5.9"
 9165  11338   
 9166  11339   
[dependencies.aws-smithy-async]
 9167  11340   
path = "../aws-smithy-async"
 9168  11341   
version = "1.2.5"
 9169  11342   
 9170  11343   
[dependencies.aws-smithy-http]
 9171  11344   
path = "../aws-smithy-http"
 9172         -
version = "0.62.2"
       11345  +
version = "0.62.3"
 9173  11346   
 9174  11347   
[dependencies.aws-smithy-json]
 9175  11348   
path = "../aws-smithy-json"
 9176  11349   
version = "0.61.4"
 9177  11350   
 9178  11351   
[dependencies.aws-smithy-runtime]
 9179  11352   
path = "../aws-smithy-runtime"
 9180  11353   
features = ["client"]
 9181  11354   
version = "1.8.5"
 9182  11355   
 9183  11356   
[dependencies.aws-smithy-runtime-api]
 9184  11357   
path = "../aws-smithy-runtime-api"
 9185  11358   
features = ["client", "http-02x"]
 9186  11359   
version = "1.8.5"
 9187  11360   
 9188  11361   
[dependencies.aws-smithy-types]
 9189  11362   
path = "../aws-smithy-types"
 9190  11363   
version = "1.3.2"
 9191  11364   
 9192  11365   
[dependencies.aws-smithy-xml]
 9193  11366   
path = "../aws-smithy-xml"
 9194  11367   
version = "0.60.10"
 9195  11368   
 9196  11369   
[dependencies.aws-types]
 9197  11370   
path = "../aws-types"
 9198  11371   
version = "1.3.8"
 9199  11372   
 9200  11373   
[dependencies.fastrand]
 9201  11374   
version = "2.0.0"
 9202  11375   
 9203  11376   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 9204  11377   
index 2cde182..fc367f4 100644
 9205         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       11378  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 9206  11379   
@@ -1,61 +1,61 @@
 9207  11380   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9208  11381   
[package]
 9209  11382   
name = "aws-sdk-sso"
 9210  11383   
version = "0.0.0-local"
 9211  11384   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9212  11385   
description = "AWS SDK for AWS Single Sign-On"
 9213  11386   
edition = "2021"
 9214  11387   
license = "Apache-2.0"
 9215  11388   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9216  11389   
rust-version = "1.86.0"
 9217  11390   
readme = "README.md"
 9218  11391   
[package.metadata.smithy]
 9219  11392   
codegen-version = "ci"
 9220  11393   
[package.metadata.docs.rs]
 9221  11394   
all-features = true
 9222  11395   
targets = ["x86_64-unknown-linux-gnu"]
 9223  11396   
[dependencies.aws-credential-types]
 9224  11397   
path = "../aws-credential-types"
 9225  11398   
version = "1.2.4"
 9226  11399   
 9227  11400   
[dependencies.aws-runtime]
 9228  11401   
path = "../aws-runtime"
 9229  11402   
version = "1.5.9"
 9230  11403   
 9231  11404   
[dependencies.aws-smithy-async]
 9232  11405   
path = "../aws-smithy-async"
 9233  11406   
version = "1.2.5"
 9234  11407   
 9235  11408   
[dependencies.aws-smithy-http]
 9236  11409   
path = "../aws-smithy-http"
 9237         -
version = "0.62.2"
       11410  +
version = "0.62.3"
 9238  11411   
 9239  11412   
[dependencies.aws-smithy-json]
 9240  11413   
path = "../aws-smithy-json"
 9241  11414   
version = "0.61.4"
 9242  11415   
 9243  11416   
[dependencies.aws-smithy-runtime]
 9244  11417   
path = "../aws-smithy-runtime"
 9245  11418   
features = ["client"]
 9246  11419   
version = "1.8.5"
 9247  11420   
 9248  11421   
[dependencies.aws-smithy-runtime-api]
 9249  11422   
path = "../aws-smithy-runtime-api"
 9250  11423   
features = ["client", "http-02x"]
 9251  11424   
version = "1.8.5"
 9252  11425   
 9253  11426   
[dependencies.aws-smithy-types]
 9254  11427   
path = "../aws-smithy-types"
 9255  11428   
version = "1.3.2"
 9256  11429   
 9257  11430   
[dependencies.aws-types]
 9258  11431   
path = "../aws-types"
 9259  11432   
version = "1.3.8"
 9260  11433   
 9261  11434   
[dependencies.bytes]
 9262  11435   
version = "1.4.0"
 9263  11436   
 9264  11437   
[dependencies.fastrand]
 9265  11438   
version = "2.0.0"
 9266  11439   
 9267  11440   
[dependencies.http]
 9268  11441   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 9269  11442   
index 7a34c16..588d0bd 100644
 9270         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       11443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 9271  11444   
@@ -1,61 +1,61 @@
 9272  11445   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9273  11446   
[package]
 9274  11447   
name = "aws-sdk-ssooidc"
 9275  11448   
version = "0.0.0-local"
 9276  11449   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9277  11450   
description = "AWS SDK for AWS SSO OIDC"
 9278  11451   
edition = "2021"
 9279  11452   
license = "Apache-2.0"
 9280  11453   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9281  11454   
rust-version = "1.86.0"
 9282  11455   
readme = "README.md"
 9283  11456   
[package.metadata.smithy]
 9284  11457   
codegen-version = "ci"
 9285  11458   
[package.metadata.docs.rs]
 9286  11459   
all-features = true
 9287  11460   
targets = ["x86_64-unknown-linux-gnu"]
 9288  11461   
[dependencies.aws-credential-types]
 9289  11462   
path = "../aws-credential-types"
 9290  11463   
version = "1.2.4"
 9291  11464   
 9292  11465   
[dependencies.aws-runtime]
 9293  11466   
path = "../aws-runtime"
 9294  11467   
version = "1.5.9"
 9295  11468   
 9296  11469   
[dependencies.aws-smithy-async]
 9297  11470   
path = "../aws-smithy-async"
 9298  11471   
version = "1.2.5"
 9299  11472   
 9300  11473   
[dependencies.aws-smithy-http]
 9301  11474   
path = "../aws-smithy-http"
 9302         -
version = "0.62.2"
       11475  +
version = "0.62.3"
 9303  11476   
 9304  11477   
[dependencies.aws-smithy-json]
 9305  11478   
path = "../aws-smithy-json"
 9306  11479   
version = "0.61.4"
 9307  11480   
 9308  11481   
[dependencies.aws-smithy-runtime]
 9309  11482   
path = "../aws-smithy-runtime"
 9310  11483   
features = ["client"]
 9311  11484   
version = "1.8.5"
 9312  11485   
 9313  11486   
[dependencies.aws-smithy-runtime-api]
 9314  11487   
path = "../aws-smithy-runtime-api"
 9315  11488   
features = ["client", "http-02x"]
 9316  11489   
version = "1.8.5"
 9317  11490   
 9318  11491   
[dependencies.aws-smithy-types]
 9319  11492   
path = "../aws-smithy-types"
 9320  11493   
version = "1.3.2"
 9321  11494   
 9322  11495   
[dependencies.aws-types]
 9323  11496   
path = "../aws-types"
 9324  11497   
version = "1.3.8"
 9325  11498   
 9326  11499   
[dependencies.bytes]
 9327  11500   
version = "1.4.0"
 9328  11501   
 9329  11502   
[dependencies.fastrand]
 9330  11503   
version = "2.0.0"
 9331  11504   
 9332  11505   
[dependencies.http]
 9333  11506   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 9334  11507   
index 895dfb3..f2ce34e 100644
 9335         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       11508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 9336  11509   
@@ -1,61 +1,61 @@
 9337  11510   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9338  11511   
[package]
 9339  11512   
name = "aws-sdk-sts"
 9340  11513   
version = "0.0.0-local"
 9341  11514   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9342  11515   
description = "AWS SDK for AWS Security Token Service"
 9343  11516   
edition = "2021"
 9344  11517   
license = "Apache-2.0"
 9345  11518   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9346  11519   
rust-version = "1.86.0"
 9347  11520   
readme = "README.md"
 9348  11521   
[package.metadata.smithy]
 9349  11522   
codegen-version = "ci"
 9350  11523   
[package.metadata.docs.rs]
 9351  11524   
all-features = true
 9352  11525   
targets = ["x86_64-unknown-linux-gnu"]
 9353  11526   
[dependencies.aws-credential-types]
 9354  11527   
path = "../aws-credential-types"
 9355  11528   
version = "1.2.4"
 9356  11529   
 9357  11530   
[dependencies.aws-runtime]
 9358  11531   
path = "../aws-runtime"
 9359  11532   
version = "1.5.9"
 9360  11533   
 9361  11534   
[dependencies.aws-smithy-async]
 9362  11535   
path = "../aws-smithy-async"
 9363  11536   
version = "1.2.5"
 9364  11537   
 9365  11538   
[dependencies.aws-smithy-http]
 9366  11539   
path = "../aws-smithy-http"
 9367         -
version = "0.62.2"
       11540  +
version = "0.62.3"
 9368  11541   
 9369  11542   
[dependencies.aws-smithy-json]
 9370  11543   
path = "../aws-smithy-json"
 9371  11544   
version = "0.61.4"
 9372  11545   
 9373  11546   
[dependencies.aws-smithy-query]
 9374  11547   
path = "../aws-smithy-query"
 9375  11548   
version = "0.60.7"
 9376  11549   
 9377  11550   
[dependencies.aws-smithy-runtime]
 9378  11551   
path = "../aws-smithy-runtime"
 9379  11552   
features = ["client"]
 9380  11553   
version = "1.8.5"
 9381  11554   
 9382  11555   
[dependencies.aws-smithy-runtime-api]
 9383  11556   
path = "../aws-smithy-runtime-api"
 9384  11557   
features = ["client", "http-02x"]
 9385  11558   
version = "1.8.5"
 9386  11559   
 9387  11560   
[dependencies.aws-smithy-types]
 9388  11561   
path = "../aws-smithy-types"
 9389  11562   
version = "1.3.2"
 9390  11563   
 9391  11564   
[dependencies.aws-smithy-xml]
 9392  11565   
path = "../aws-smithy-xml"
 9393  11566   
version = "0.60.10"
 9394  11567   
 9395  11568   
[dependencies.aws-types]
 9396  11569   
path = "../aws-types"
 9397  11570   
version = "1.3.8"
 9398  11571   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9399  11572   
index d556561..91178b6 100644
 9400         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       11573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9401  11574   
@@ -1,61 +1,61 @@
 9402  11575   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9403  11576   
[package]
 9404  11577   
name = "aws-sdk-timestreamquery"
 9405  11578   
version = "0.0.0-local"
 9406  11579   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9407  11580   
description = "AWS SDK for Amazon Timestream Query"
 9408  11581   
edition = "2021"
 9409  11582   
license = "Apache-2.0"
 9410  11583   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9411  11584   
rust-version = "1.86.0"
 9412  11585   
readme = "README.md"
 9413  11586   
[package.metadata.smithy]
 9414  11587   
codegen-version = "ci"
 9415  11588   
[package.metadata.docs.rs]
 9416  11589   
all-features = true
 9417  11590   
targets = ["x86_64-unknown-linux-gnu"]
 9418  11591   
[dependencies.aws-credential-types]
 9419  11592   
path = "../aws-credential-types"
 9420  11593   
version = "1.2.4"
 9421  11594   
 9422  11595   
[dependencies.aws-runtime]
 9423  11596   
path = "../aws-runtime"
 9424  11597   
version = "1.5.9"
 9425  11598   
 9426  11599   
[dependencies.aws-smithy-async]
 9427  11600   
path = "../aws-smithy-async"
 9428  11601   
version = "1.2.5"
 9429  11602   
 9430  11603   
[dependencies.aws-smithy-http]
 9431  11604   
path = "../aws-smithy-http"
 9432         -
version = "0.62.2"
       11605  +
version = "0.62.3"
 9433  11606   
 9434  11607   
[dependencies.aws-smithy-json]
 9435  11608   
path = "../aws-smithy-json"
 9436  11609   
version = "0.61.4"
 9437  11610   
 9438  11611   
[dependencies.aws-smithy-runtime]
 9439  11612   
path = "../aws-smithy-runtime"
 9440  11613   
features = ["client"]
 9441  11614   
version = "1.8.5"
 9442  11615   
 9443  11616   
[dependencies.aws-smithy-runtime-api]
 9444  11617   
path = "../aws-smithy-runtime-api"
 9445  11618   
features = ["client", "http-02x"]
 9446  11619   
version = "1.8.5"
 9447  11620   
 9448  11621   
[dependencies.aws-smithy-types]
 9449  11622   
path = "../aws-smithy-types"
 9450  11623   
version = "1.3.2"
 9451  11624   
 9452  11625   
[dependencies.aws-types]
 9453  11626   
path = "../aws-types"
 9454  11627   
version = "1.3.8"
 9455  11628   
 9456  11629   
[dependencies.bytes]
 9457  11630   
version = "1.4.0"
 9458  11631   
 9459  11632   
[dependencies.fastrand]
 9460  11633   
version = "2.0.0"
 9461  11634   
 9462  11635   
[dependencies.http]
 9463  11636   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9464  11637   
index 0c56e4c..95731e3 100644
 9465         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       11638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9466  11639   
@@ -1,61 +1,61 @@
 9467  11640   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9468  11641   
[package]
 9469  11642   
name = "aws-sdk-timestreamwrite"
 9470  11643   
version = "0.0.0-local"
 9471  11644   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9472  11645   
description = "AWS SDK for Amazon Timestream Write"
 9473  11646   
edition = "2021"
 9474  11647   
license = "Apache-2.0"
 9475  11648   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9476  11649   
rust-version = "1.86.0"
 9477  11650   
readme = "README.md"
 9478  11651   
[package.metadata.smithy]
 9479  11652   
codegen-version = "ci"
 9480  11653   
[package.metadata.docs.rs]
 9481  11654   
all-features = true
 9482  11655   
targets = ["x86_64-unknown-linux-gnu"]
 9483  11656   
[dependencies.aws-credential-types]
 9484  11657   
path = "../aws-credential-types"
 9485  11658   
version = "1.2.4"
 9486  11659   
 9487  11660   
[dependencies.aws-runtime]
 9488  11661   
path = "../aws-runtime"
 9489  11662   
version = "1.5.9"
 9490  11663   
 9491  11664   
[dependencies.aws-smithy-async]
 9492  11665   
path = "../aws-smithy-async"
 9493  11666   
version = "1.2.5"
 9494  11667   
 9495  11668   
[dependencies.aws-smithy-http]
 9496  11669   
path = "../aws-smithy-http"
 9497         -
version = "0.62.2"
       11670  +
version = "0.62.3"
 9498  11671   
 9499  11672   
[dependencies.aws-smithy-json]
 9500  11673   
path = "../aws-smithy-json"
 9501  11674   
version = "0.61.4"
 9502  11675   
 9503  11676   
[dependencies.aws-smithy-runtime]
 9504  11677   
path = "../aws-smithy-runtime"
 9505  11678   
features = ["client"]
 9506  11679   
version = "1.8.5"
 9507  11680   
 9508  11681   
[dependencies.aws-smithy-runtime-api]
 9509  11682   
path = "../aws-smithy-runtime-api"
 9510  11683   
features = ["client", "http-02x"]
 9511  11684   
version = "1.8.5"
 9512  11685   
 9513  11686   
[dependencies.aws-smithy-types]
 9514  11687   
path = "../aws-smithy-types"
 9515  11688   
version = "1.3.2"
 9516  11689   
 9517  11690   
[dependencies.aws-types]
 9518  11691   
path = "../aws-types"
 9519  11692   
version = "1.3.8"
 9520  11693   
 9521  11694   
[dependencies.bytes]
 9522  11695   
version = "1.4.0"
 9523  11696   
 9524  11697   
[dependencies.fastrand]
 9525  11698   
version = "2.0.0"
 9526  11699   
 9527  11700   
[dependencies.http]
 9528  11701   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9529  11702   
index 5b35037..9fb220a 100644
 9530         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       11703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9531  11704   
@@ -1,71 +1,71 @@
 9532  11705   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9533  11706   
[package]
 9534  11707   
name = "aws-sdk-transcribestreaming"
 9535  11708   
version = "0.0.0-local"
 9536  11709   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9537  11710   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 9538  11711   
edition = "2021"
 9539  11712   
license = "Apache-2.0"
 9540  11713   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9541  11714   
rust-version = "1.86.0"
 9542  11715   
readme = "README.md"
 9543  11716   
[package.metadata.smithy]
 9544  11717   
codegen-version = "ci"
 9545  11718   
[package.metadata.docs.rs]
 9546  11719   
all-features = true
 9547  11720   
targets = ["x86_64-unknown-linux-gnu"]
 9548  11721   
[dependencies.aws-credential-types]
 9549  11722   
path = "../aws-credential-types"
 9550  11723   
version = "1.2.4"
 9551  11724   
 9552  11725   
[dependencies.aws-runtime]
 9553  11726   
path = "../aws-runtime"
 9554  11727   
features = ["event-stream"]
 9555  11728   
version = "1.5.9"
 9556  11729   
 9557  11730   
[dependencies.aws-sigv4]
 9558  11731   
path = "../aws-sigv4"
 9559         -
version = "1.3.3"
       11732  +
version = "1.3.4"
 9560  11733   
 9561  11734   
[dependencies.aws-smithy-async]
 9562  11735   
path = "../aws-smithy-async"
 9563  11736   
version = "1.2.5"
 9564  11737   
 9565  11738   
[dependencies.aws-smithy-eventstream]
 9566  11739   
path = "../aws-smithy-eventstream"
 9567  11740   
version = "0.60.10"
 9568  11741   
 9569  11742   
[dependencies.aws-smithy-http]
 9570  11743   
path = "../aws-smithy-http"
 9571  11744   
features = ["event-stream"]
 9572         -
version = "0.62.2"
       11745  +
version = "0.62.3"
 9573  11746   
 9574  11747   
[dependencies.aws-smithy-json]
 9575  11748   
path = "../aws-smithy-json"
 9576  11749   
version = "0.61.4"
 9577  11750   
 9578  11751   
[dependencies.aws-smithy-runtime]
 9579  11752   
path = "../aws-smithy-runtime"
 9580  11753   
features = ["client"]
 9581  11754   
version = "1.8.5"
 9582  11755