AWS SDK

AWS SDK

rev. 3964b40d6806bc3f52bd311e2c791030c3325f2c

Files changed:

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt

@@ -1,0 +15,0 @@
    1         -
A note about using temporary security credentials:
    2         -

    3         -
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).
    4         -

    5         -
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.
    6         -

    7         -
The test suite has 2 examples:
    8         -

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

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

   13         -
The test suite uses this example value for X-Amz-Security-Token:
   14         -

   15         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.authz

@@ -1,0 +9099,11434 @@
    1         -
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
    2      0   
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
    3      1   
deleted file mode 100644
    4      2   
index 82af150..0000000
    5         -
-- 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
           3  +
++ /dev/null
    6      4   
@@ -1,4 +0,0 @@
    7         -
POST /?Param1=value1 HTTP/1.1
    8         -
Host:example.amazonaws.com
    9         -
X-Amz-Date:20150830T123600Z
   10         -
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
   11      5   
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
   12      6   
deleted file mode 100644
   13      7   
index 44280cd..0000000
   14         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
           8  +
++ /dev/null
   15      9   
@@ -1 +0,0 @@
   16         -
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
   17     10   
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
   18     11   
deleted file mode 100644
   19     12   
index 82af150..0000000
   20         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
          13  +
++ /dev/null
   21     14   
@@ -1,4 +0,0 @@
   22         -
POST /?Param1=value1 HTTP/1.1
   23         -
Host:example.amazonaws.com
   24         -
X-Amz-Date:20150830T123600Z
   25         -
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
   26     15   
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
   27     16   
deleted file mode 100644
   28     17   
index 89e572e..0000000
   29         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
          18  +
++ /dev/null
   30     19   
@@ -1 +0,0 @@
   31         -
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
   32     20   
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
   33     21   
deleted file mode 100644
   34     22   
index a5ada0d..0000000
   35         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
          23  +
++ /dev/null
   36     24   
@@ -1,4 +0,0 @@
   37         -
POST / HTTP/1.1
   38         -
Host:example.amazonaws.com
   39         -
X-Amz-Date:20150830T123600Z
   40         -
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
   41     25   
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
   42     26   
deleted file mode 100644
   43     27   
index df90ca3..0000000
   44         -
-- 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
          28  +
++ /dev/null
   45     29   
@@ -1 +0,0 @@
   46         -
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
   47     30   
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
   48     31   
deleted file mode 100644
   49     32   
index 457b0d5..0000000
   50         -
-- 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
          33  +
++ /dev/null
   51     34   
@@ -1,9 +0,0 @@
   52         -
POST
   53         -
/
   54         -
Param1=value1
   55         -
content-type:application/x-www-form-urlencoded; charset=utf-8
   56         -
host:example.amazonaws.com
   57         -
x-amz-date:20150830T123600Z
   58         -
   59         -
content-type;host;x-amz-date
   60         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
   61     35   
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
   62     36   
deleted file mode 100644
   63     37   
index b8ecb89..0000000
   64         -
-- 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
          38  +
++ /dev/null
   65     39   
@@ -1,7 +0,0 @@
   66         -
POST / HTTP/1.1
   67         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
   68         -
Host:example.amazonaws.com
   69         -
X-Amz-Date:20150830T123600Z
   70         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
   71         -
   72         -
Param1=value1
              \
 No newline at end of file
   73     40   
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
   74     41   
deleted file mode 100644
   75     42   
index 79077d2..0000000
   76         -
-- 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
          43  +
++ /dev/null
   77     44   
@@ -1 +0,0 @@
   78         -
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
   79     45   
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
   80     46   
deleted file mode 100644
   81     47   
index 7852617..0000000
   82         -
-- 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
          48  +
++ /dev/null
   83     49   
@@ -1,4 +0,0 @@
   84         -
POST / HTTP/1.1
   85         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
   86         -
Host:example.amazonaws.com
   87         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
   88     50   
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
   89     51   
deleted file mode 100644
   90     52   
index 3e2e571..0000000
   91         -
-- 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
          53  +
++ /dev/null
   92     54   
@@ -1,4 +0,0 @@
   93         -
POST / HTTP/1.1
   94         -
Host:example.amazonaws.com
   95         -
X-Amz-Date:20150830T123600Z
   96         -
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
   97     55   
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
   98     56   
deleted file mode 100644
   99     57   
index 89ceae8..0000000
  100         -
-- 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
          58  +
++ /dev/null
  101     59   
@@ -1,4 +0,0 @@
  102         -
AWS4-HMAC-SHA256
  103         -
20150830T123600Z
  104         -
20150830/us-east-1/service/aws4_request
  105         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  106     60   
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
  107     61   
deleted file mode 100755
  108     62   
index d645695..0000000
  109         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
          63  +
++ /dev/null
  110     64   
@@ -1,202 +0,0 @@
  111         -
  112         -
                                 Apache License
  113         -
                           Version 2.0, January 2004
  114         -
                        http://www.apache.org/licenses/
  115         -
  116         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  117         -
  118         -
   1. Definitions.
  119         -
  120         -
      "License" shall mean the terms and conditions for use, reproduction,
  121         -
      and distribution as defined by Sections 1 through 9 of this document.
  122         -
  123         -
      "Licensor" shall mean the copyright owner or entity authorized by
  124         -
      the copyright owner that is granting the License.
  125         -
  126         -
      "Legal Entity" shall mean the union of the acting entity and all
  127         -
      other entities that control, are controlled by, or are under common
  128         -
      control with that entity. For the purposes of this definition,
  129         -
      "control" means (i) the power, direct or indirect, to cause the
  130         -
      direction or management of such entity, whether by contract or
  131         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  132         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  133         -
  134         -
      "You" (or "Your") shall mean an individual or Legal Entity
  135         -
      exercising permissions granted by this License.
  136         -
  137         -
      "Source" form shall mean the preferred form for making modifications,
  138         -
      including but not limited to software source code, documentation
  139         -
      source, and configuration files.
  140         -
  141         -
      "Object" form shall mean any form resulting from mechanical
  142         -
      transformation or translation of a Source form, including but
  143         -
      not limited to compiled object code, generated documentation,
  144         -
      and conversions to other media types.
  145         -
  146         -
      "Work" shall mean the work of authorship, whether in Source or
  147         -
      Object form, made available under the License, as indicated by a
  148         -
      copyright notice that is included in or attached to the work
  149         -
      (an example is provided in the Appendix below).
  150         -
  151         -
      "Derivative Works" shall mean any work, whether in Source or Object
  152         -
      form, that is based on (or derived from) the Work and for which the
  153         -
      editorial revisions, annotations, elaborations, or other modifications
  154         -
      represent, as a whole, an original work of authorship. For the purposes
  155         -
      of this License, Derivative Works shall not include works that remain
  156         -
      separable from, or merely link (or bind by name) to the interfaces of,
  157         -
      the Work and Derivative Works thereof.
  158         -
  159         -
      "Contribution" shall mean any work of authorship, including
  160         -
      the original version of the Work and any modifications or additions
  161         -
      to that Work or Derivative Works thereof, that is intentionally
  162         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  163         -
      or by an individual or Legal Entity authorized to submit on behalf of
  164         -
      the copyright owner. For the purposes of this definition, "submitted"
  165         -
      means any form of electronic, verbal, or written communication sent
  166         -
      to the Licensor or its representatives, including but not limited to
  167         -
      communication on electronic mailing lists, source code control systems,
  168         -
      and issue tracking systems that are managed by, or on behalf of, the
  169         -
      Licensor for the purpose of discussing and improving the Work, but
  170         -
      excluding communication that is conspicuously marked or otherwise
  171         -
      designated in writing by the copyright owner as "Not a Contribution."
  172         -
  173         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  174         -
      on behalf of whom a Contribution has been received by Licensor and
  175         -
      subsequently incorporated within the Work.
  176         -
  177         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  178         -
      this License, each Contributor hereby grants to You a perpetual,
  179         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  180         -
      copyright license to reproduce, prepare Derivative Works of,
  181         -
      publicly display, publicly perform, sublicense, and distribute the
  182         -
      Work and such Derivative Works in Source or Object form.
  183         -
  184         -
   3. Grant of Patent License. Subject to the terms and conditions of
  185         -
      this License, each Contributor hereby grants to You a perpetual,
  186         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  187         -
      (except as stated in this section) patent license to make, have made,
  188         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  189         -
      where such license applies only to those patent claims licensable
  190         -
      by such Contributor that are necessarily infringed by their
  191         -
      Contribution(s) alone or by combination of their Contribution(s)
  192         -
      with the Work to which such Contribution(s) was submitted. If You
  193         -
      institute patent litigation against any entity (including a
  194         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  195         -
      or a Contribution incorporated within the Work constitutes direct
  196         -
      or contributory patent infringement, then any patent licenses
  197         -
      granted to You under this License for that Work shall terminate
  198         -
      as of the date such litigation is filed.
  199         -
  200         -
   4. Redistribution. You may reproduce and distribute copies of the
  201         -
      Work or Derivative Works thereof in any medium, with or without
  202         -
      modifications, and in Source or Object form, provided that You
  203         -
      meet the following conditions:
  204         -
  205         -
      (a) You must give any other recipients of the Work or
  206         -
          Derivative Works a copy of this License; and
  207         -
  208         -
      (b) You must cause any modified files to carry prominent notices
  209         -
          stating that You changed the files; and
  210         -
  211         -
      (c) You must retain, in the Source form of any Derivative Works
  212         -
          that You distribute, all copyright, patent, trademark, and
  213         -
          attribution notices from the Source form of the Work,
  214         -
          excluding those notices that do not pertain to any part of
  215         -
          the Derivative Works; and
  216         -
  217         -
      (d) If the Work includes a "NOTICE" text file as part of its
  218         -
          distribution, then any Derivative Works that You distribute must
  219         -
          include a readable copy of the attribution notices contained
  220         -
          within such NOTICE file, excluding those notices that do not
  221         -
          pertain to any part of the Derivative Works, in at least one
  222         -
          of the following places: within a NOTICE text file distributed
  223         -
          as part of the Derivative Works; within the Source form or
  224         -
          documentation, if provided along with the Derivative Works; or,
  225         -
          within a display generated by the Derivative Works, if and
  226         -
          wherever such third-party notices normally appear. The contents
  227         -
          of the NOTICE file are for informational purposes only and
  228         -
          do not modify the License. You may add Your own attribution
  229         -
          notices within Derivative Works that You distribute, alongside
  230         -
          or as an addendum to the NOTICE text from the Work, provided
  231         -
          that such additional attribution notices cannot be construed
  232         -
          as modifying the License.
  233         -
  234         -
      You may add Your own copyright statement to Your modifications and
  235         -
      may provide additional or different license terms and conditions
  236         -
      for use, reproduction, or distribution of Your modifications, or
  237         -
      for any such Derivative Works as a whole, provided Your use,
  238         -
      reproduction, and distribution of the Work otherwise complies with
  239         -
      the conditions stated in this License.
  240         -
  241         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  242         -
      any Contribution intentionally submitted for inclusion in the Work
  243         -
      by You to the Licensor shall be under the terms and conditions of
  244         -
      this License, without any additional terms or conditions.
  245         -
      Notwithstanding the above, nothing herein shall supersede or modify
  246         -
      the terms of any separate license agreement you may have executed
  247         -
      with Licensor regarding such Contributions.
  248         -
  249         -
   6. Trademarks. This License does not grant permission to use the trade
  250         -
      names, trademarks, service marks, or product names of the Licensor,
  251         -
      except as required for reasonable and customary use in describing the
  252         -
      origin of the Work and reproducing the content of the NOTICE file.
  253         -
  254         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  255         -
      agreed to in writing, Licensor provides the Work (and each
  256         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  257         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  258         -
      implied, including, without limitation, any warranties or conditions
  259         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  260         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  261         -
      appropriateness of using or redistributing the Work and assume any
  262         -
      risks associated with Your exercise of permissions under this License.
  263         -
  264         -
   8. Limitation of Liability. In no event and under no legal theory,
  265         -
      whether in tort (including negligence), contract, or otherwise,
  266         -
      unless required by applicable law (such as deliberate and grossly
  267         -
      negligent acts) or agreed to in writing, shall any Contributor be
  268         -
      liable to You for damages, including any direct, indirect, special,
  269         -
      incidental, or consequential damages of any character arising as a
  270         -
      result of this License or out of the use or inability to use the
  271         -
      Work (including but not limited to damages for loss of goodwill,
  272         -
      work stoppage, computer failure or malfunction, or any and all
  273         -
      other commercial damages or losses), even if such Contributor
  274         -
      has been advised of the possibility of such damages.
  275         -
  276         -
   9. Accepting Warranty or Additional Liability. While redistributing
  277         -
      the Work or Derivative Works thereof, You may choose to offer,
  278         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  279         -
      or other liability obligations and/or rights consistent with this
  280         -
      License. However, in accepting such obligations, You may act only
  281         -
      on Your own behalf and on Your sole responsibility, not on behalf
  282         -
      of any other Contributor, and only if You agree to indemnify,
  283         -
      defend, and hold each Contributor harmless for any liability
  284         -
      incurred by, or claims asserted against, such Contributor by reason
  285         -
      of your accepting any such warranty or additional liability.
  286         -
  287         -
   END OF TERMS AND CONDITIONS
  288         -
  289         -
   APPENDIX: How to apply the Apache License to your work.
  290         -
  291         -
      To apply the Apache License to your work, attach the following
  292         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  293         -
      replaced with your own identifying information. (Don't include
  294         -
      the brackets!)  The text should be enclosed in the appropriate
  295         -
      comment syntax for the file format. We also recommend that a
  296         -
      file or class name and description of purpose be included on the
  297         -
      same "printed page" as the copyright notice for easier
  298         -
      identification within third-party archives.
  299         -
  300         -
   Copyright [yyyy] [name of copyright owner]
  301         -
  302         -
   Licensed under the Apache License, Version 2.0 (the "License");
  303         -
   you may not use this file except in compliance with the License.
  304         -
   You may obtain a copy of the License at
  305         -
  306         -
       http://www.apache.org/licenses/LICENSE-2.0
  307         -
  308         -
   Unless required by applicable law or agreed to in writing, software
  309         -
   distributed under the License is distributed on an "AS IS" BASIS,
  310         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  311         -
   See the License for the specific language governing permissions and
  312         -
   limitations under the License.
  313     65   
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
  314     66   
deleted file mode 100755
  315     67   
index d85f69e..0000000
  316         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
          68  +
++ /dev/null
  317     69   
@@ -1,2 +0,0 @@
  318         -
AWS Signature Version 4a Test Suite
  319         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  320     70   
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
  321     71   
deleted file mode 100644
  322     72   
index c716622..0000000
  323         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
          73  +
++ /dev/null
  324     74   
@@ -1,24 +0,0 @@
  325         -
Where did the files in this directory come from?
  326         -
================================================
  327         -
  328         -
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.
  329         -
  330         -
Signature Version 4A Test Suite
  331         -
------------------------------
  332         -
  333         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  334         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  335         -
  336         -
Each test group contains several files that you can use to validate most of the tasks described in
  337         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  338         -
  339         -
- context.json - Credentials and signer options to use when signing test requests
  340         -
- request.txt - The web request to be signed.
  341         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  342         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  343         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  344         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  345         -
  346         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  347         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  348         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  349     75   
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
  350     76   
deleted file mode 100644
  351     77   
index 45771c7..0000000
  352         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
          78  +
++ /dev/null
  353     79   
@@ -1,12 +0,0 @@
  354         -
{
  355         -
    "credentials": {
  356         -
        "access_key_id": "AKIDEXAMPLE",
  357         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  358         -
    },
  359         -
    "expiration_in_seconds": 3600,
  360         -
    "normalize": true,
  361         -
    "region": "us-east-1",
  362         -
    "service": "service",
  363         -
    "sign_body": false,
  364         -
    "timestamp": "2015-08-30T12:36:00Z"
  365         -
}
  366     80   
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
  367     81   
deleted file mode 100644
  368     82   
index 45771c7..0000000
  369         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
          83  +
++ /dev/null
  370     84   
@@ -1,12 +0,0 @@
  371         -
{
  372         -
    "credentials": {
  373         -
        "access_key_id": "AKIDEXAMPLE",
  374         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  375         -
    },
  376         -
    "expiration_in_seconds": 3600,
  377         -
    "normalize": true,
  378         -
    "region": "us-east-1",
  379         -
    "service": "service",
  380         -
    "sign_body": false,
  381         -
    "timestamp": "2015-08-30T12:36:00Z"
  382         -
}
  383     85   
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
  384     86   
deleted file mode 100644
  385     87   
index 45771c7..0000000
  386         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
          88  +
++ /dev/null
  387     89   
@@ -1,12 +0,0 @@
  388         -
{
  389         -
    "credentials": {
  390         -
        "access_key_id": "AKIDEXAMPLE",
  391         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  392         -
    },
  393         -
    "expiration_in_seconds": 3600,
  394         -
    "normalize": true,
  395         -
    "region": "us-east-1",
  396         -
    "service": "service",
  397         -
    "sign_body": false,
  398         -
    "timestamp": "2015-08-30T12:36:00Z"
  399         -
}
  400     90   
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
  401     91   
deleted file mode 100644
  402     92   
index 45771c7..0000000
  403         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
          93  +
++ /dev/null
  404     94   
@@ -1,12 +0,0 @@
  405         -
{
  406         -
    "credentials": {
  407         -
        "access_key_id": "AKIDEXAMPLE",
  408         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  409         -
    },
  410         -
    "expiration_in_seconds": 3600,
  411         -
    "normalize": true,
  412         -
    "region": "us-east-1",
  413         -
    "service": "service",
  414         -
    "sign_body": false,
  415         -
    "timestamp": "2015-08-30T12:36:00Z"
  416         -
}
  417     95   
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
  418     96   
deleted file mode 100644
  419     97   
index afe367b..0000000
  420         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
          98  +
++ /dev/null
  421     99   
@@ -1,12 +0,0 @@
  422         -
{
  423         -
    "credentials": {
  424         -
        "access_key_id": "AKIDEXAMPLE",
  425         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  426         -
    },
  427         -
    "expiration_in_seconds": 3600,
  428         -
    "normalize": false,
  429         -
    "region": "us-east-1",
  430         -
    "service": "service",
  431         -
    "sign_body": false,
  432         -
    "timestamp": "2015-08-30T12:36:00Z"
  433         -
}
  434    100   
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
  435    101   
deleted file mode 100644
  436    102   
index 45771c7..0000000
  437         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         103  +
++ /dev/null
  438    104   
@@ -1,12 +0,0 @@
  439         -
{
  440         -
    "credentials": {
  441         -
        "access_key_id": "AKIDEXAMPLE",
  442         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  443         -
    },
  444         -
    "expiration_in_seconds": 3600,
  445         -
    "normalize": true,
  446         -
    "region": "us-east-1",
  447         -
    "service": "service",
  448         -
    "sign_body": false,
  449         -
    "timestamp": "2015-08-30T12:36:00Z"
  450         -
}
  451    105   
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
  452    106   
deleted file mode 100644
  453    107   
index afe367b..0000000
  454         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         108  +
++ /dev/null
  455    109   
@@ -1,12 +0,0 @@
  456         -
{
  457         -
    "credentials": {
  458         -
        "access_key_id": "AKIDEXAMPLE",
  459         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  460         -
    },
  461         -
    "expiration_in_seconds": 3600,
  462         -
    "normalize": false,
  463         -
    "region": "us-east-1",
  464         -
    "service": "service",
  465         -
    "sign_body": false,
  466         -
    "timestamp": "2015-08-30T12:36:00Z"
  467         -
}
  468    110   
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
  469    111   
deleted file mode 100644
  470    112   
index 45771c7..0000000
  471         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         113  +
++ /dev/null
  472    114   
@@ -1,12 +0,0 @@
  473         -
{
  474         -
    "credentials": {
  475         -
        "access_key_id": "AKIDEXAMPLE",
  476         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  477         -
    },
  478         -
    "expiration_in_seconds": 3600,
  479         -
    "normalize": true,
  480         -
    "region": "us-east-1",
  481         -
    "service": "service",
  482         -
    "sign_body": false,
  483         -
    "timestamp": "2015-08-30T12:36:00Z"
  484         -
}
  485    115   
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
  486    116   
deleted file mode 100644
  487    117   
index 45771c7..0000000
  488         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         118  +
++ /dev/null
  489    119   
@@ -1,12 +0,0 @@
  490         -
{
  491         -
    "credentials": {
  492         -
        "access_key_id": "AKIDEXAMPLE",
  493         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  494         -
    },
  495         -
    "expiration_in_seconds": 3600,
  496         -
    "normalize": true,
  497         -
    "region": "us-east-1",
  498         -
    "service": "service",
  499         -
    "sign_body": false,
  500         -
    "timestamp": "2015-08-30T12:36:00Z"
  501         -
}
  502    120   
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
  503    121   
deleted file mode 100644
  504    122   
index 45771c7..0000000
  505         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         123  +
++ /dev/null
  506    124   
@@ -1,12 +0,0 @@
  507         -
{
  508         -
    "credentials": {
  509         -
        "access_key_id": "AKIDEXAMPLE",
  510         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  511         -
    },
  512         -
    "expiration_in_seconds": 3600,
  513         -
    "normalize": true,
  514         -
    "region": "us-east-1",
  515         -
    "service": "service",
  516         -
    "sign_body": false,
  517         -
    "timestamp": "2015-08-30T12:36:00Z"
  518         -
}
  519    125   
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
  520    126   
deleted file mode 100644
  521    127   
index 45771c7..0000000
  522         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         128  +
++ /dev/null
  523    129   
@@ -1,12 +0,0 @@
  524         -
{
  525         -
    "credentials": {
  526         -
        "access_key_id": "AKIDEXAMPLE",
  527         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  528         -
    },
  529         -
    "expiration_in_seconds": 3600,
  530         -
    "normalize": true,
  531         -
    "region": "us-east-1",
  532         -
    "service": "service",
  533         -
    "sign_body": false,
  534         -
    "timestamp": "2015-08-30T12:36:00Z"
  535         -
}
  536    130   
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
  537    131   
deleted file mode 100644
  538    132   
index 45771c7..0000000
  539         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         133  +
++ /dev/null
  540    134   
@@ -1,12 +0,0 @@
  541         -
{
  542         -
    "credentials": {
  543         -
        "access_key_id": "AKIDEXAMPLE",
  544         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  545         -
    },
  546         -
    "expiration_in_seconds": 3600,
  547         -
    "normalize": true,
  548         -
    "region": "us-east-1",
  549         -
    "service": "service",
  550         -
    "sign_body": false,
  551         -
    "timestamp": "2015-08-30T12:36:00Z"
  552         -
}
  553    135   
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
  554    136   
deleted file mode 100644
  555    137   
index 47e7128..0000000
  556         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         138  +
++ /dev/null
  557    139   
@@ -1,9 +0,0 @@
  558         -
GET
  559         -
/
  560         -
  561         -
host:example.amazonaws.com
  562         -
x-amz-date:20150830T123600Z
  563         -
x-amz-region-set:us-east-1
  564         -
  565         -
host;x-amz-date;x-amz-region-set
  566         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  567    140   
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
  568    141   
deleted file mode 100644
  569    142   
index 95d7219..0000000
  570         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         143  +
++ /dev/null
  571    144   
@@ -1,4 +0,0 @@
  572         -
AWS4-ECDSA-P256-SHA256
  573         -
20150830T123600Z
  574         -
20150830/service/aws4_request
  575         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  576    145   
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
  577    146   
deleted file mode 100644
  578    147   
index a34ea26..0000000
  579         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         148  +
++ /dev/null
  580    149   
@@ -1,7 +0,0 @@
  581         -
GET
  582         -
/
  583         -
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
  584         -
host:example.amazonaws.com
  585         -
  586         -
host
  587         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  588    150   
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
  589    151   
deleted file mode 100644
  590    152   
index 48f855c..0000000
  591         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         153  +
++ /dev/null
  592    154   
@@ -1,4 +0,0 @@
  593         -
AWS4-ECDSA-P256-SHA256
  594         -
20150830T123600Z
  595         -
20150830/service/aws4_request
  596         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  597    155   
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
  598    156   
deleted file mode 100644
  599    157   
index 45771c7..0000000
  600         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         158  +
++ /dev/null
  601    159   
@@ -1,12 +0,0 @@
  602         -
{
  603         -
    "credentials": {
  604         -
        "access_key_id": "AKIDEXAMPLE",
  605         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  606         -
    },
  607         -
    "expiration_in_seconds": 3600,
  608         -
    "normalize": true,
  609         -
    "region": "us-east-1",
  610         -
    "service": "service",
  611         -
    "sign_body": false,
  612         -
    "timestamp": "2015-08-30T12:36:00Z"
  613         -
}
  614    160   
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
  615    161   
deleted file mode 100644
  616    162   
index 47e7128..0000000
  617         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         163  +
++ /dev/null
  618    164   
@@ -1,9 +0,0 @@
  619         -
GET
  620         -
/
  621         -
  622         -
host:example.amazonaws.com
  623         -
x-amz-date:20150830T123600Z
  624         -
x-amz-region-set:us-east-1
  625         -
  626         -
host;x-amz-date;x-amz-region-set
  627         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  628    165   
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
  629    166   
deleted file mode 100644
  630    167   
index 95d7219..0000000
  631         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         168  +
++ /dev/null
  632    169   
@@ -1,4 +0,0 @@
  633         -
AWS4-ECDSA-P256-SHA256
  634         -
20150830T123600Z
  635         -
20150830/service/aws4_request
  636         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  637    170   
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
  638    171   
deleted file mode 100644
  639    172   
index a34ea26..0000000
  640         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         173  +
++ /dev/null
  641    174   
@@ -1,7 +0,0 @@
  642         -
GET
  643         -
/
  644         -
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
  645         -
host:example.amazonaws.com
  646         -
  647         -
host
  648         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  649    175   
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
  650    176   
deleted file mode 100644
  651    177   
index 48f855c..0000000
  652         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         178  +
++ /dev/null
  653    179   
@@ -1,4 +0,0 @@
  654         -
AWS4-ECDSA-P256-SHA256
  655         -
20150830T123600Z
  656         -
20150830/service/aws4_request
  657         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  658    180   
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
  659    181   
deleted file mode 100644
  660    182   
index 45771c7..0000000
  661         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         183  +
++ /dev/null
  662    184   
@@ -1,12 +0,0 @@
  663         -
{
  664         -
    "credentials": {
  665         -
        "access_key_id": "AKIDEXAMPLE",
  666         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  667         -
    },
  668         -
    "expiration_in_seconds": 3600,
  669         -
    "normalize": true,
  670         -
    "region": "us-east-1",
  671         -
    "service": "service",
  672         -
    "sign_body": false,
  673         -
    "timestamp": "2015-08-30T12:36:00Z"
  674         -
}
  675    185   
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
  676    186   
deleted file mode 100644
  677    187   
index 45771c7..0000000
  678         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         188  +
++ /dev/null
  679    189   
@@ -1,12 +0,0 @@
  680         -
{
  681         -
    "credentials": {
  682         -
        "access_key_id": "AKIDEXAMPLE",
  683         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  684         -
    },
  685         -
    "expiration_in_seconds": 3600,
  686         -
    "normalize": true,
  687         -
    "region": "us-east-1",
  688         -
    "service": "service",
  689         -
    "sign_body": false,
  690         -
    "timestamp": "2015-08-30T12:36:00Z"
  691         -
}
  692    190   
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
  693    191   
deleted file mode 100644
  694    192   
index 45771c7..0000000
  695         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         193  +
++ /dev/null
  696    194   
@@ -1,12 +0,0 @@
  697         -
{
  698         -
    "credentials": {
  699         -
        "access_key_id": "AKIDEXAMPLE",
  700         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  701         -
    },
  702         -
    "expiration_in_seconds": 3600,
  703         -
    "normalize": true,
  704         -
    "region": "us-east-1",
  705         -
    "service": "service",
  706         -
    "sign_body": false,
  707         -
    "timestamp": "2015-08-30T12:36:00Z"
  708         -
}
  709    195   
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
  710    196   
deleted file mode 100644
  711    197   
index 45771c7..0000000
  712         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         198  +
++ /dev/null
  713    199   
@@ -1,12 +0,0 @@
  714         -
{
  715         -
    "credentials": {
  716         -
        "access_key_id": "AKIDEXAMPLE",
  717         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  718         -
    },
  719         -
    "expiration_in_seconds": 3600,
  720         -
    "normalize": true,
  721         -
    "region": "us-east-1",
  722         -
    "service": "service",
  723         -
    "sign_body": false,
  724         -
    "timestamp": "2015-08-30T12:36:00Z"
  725         -
}
  726    200   
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
  727    201   
deleted file mode 100644
  728    202   
index 45771c7..0000000
  729         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         203  +
++ /dev/null
  730    204   
@@ -1,12 +0,0 @@
  731         -
{
  732         -
    "credentials": {
  733         -
        "access_key_id": "AKIDEXAMPLE",
  734         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  735         -
    },
  736         -
    "expiration_in_seconds": 3600,
  737         -
    "normalize": true,
  738         -
    "region": "us-east-1",
  739         -
    "service": "service",
  740         -
    "sign_body": false,
  741         -
    "timestamp": "2015-08-30T12:36:00Z"
  742         -
}
  743    205   
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
  744    206   
deleted file mode 100644
  745    207   
index 45771c7..0000000
  746         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         208  +
++ /dev/null
  747    209   
@@ -1,12 +0,0 @@
  748         -
{
  749         -
    "credentials": {
  750         -
        "access_key_id": "AKIDEXAMPLE",
  751         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  752         -
    },
  753         -
    "expiration_in_seconds": 3600,
  754         -
    "normalize": true,
  755         -
    "region": "us-east-1",
  756         -
    "service": "service",
  757         -
    "sign_body": false,
  758         -
    "timestamp": "2015-08-30T12:36:00Z"
  759         -
}
  760    210   
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
  761    211   
deleted file mode 100644
  762    212   
index b6fdecf..0000000
  763         -
-- 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
         213  +
++ /dev/null
  764    214   
@@ -1,4 +0,0 @@
  765         -
AWS4-ECDSA-P256-SHA256
  766         -
20150830T123600Z
  767         -
20150830/service/aws4_request
  768         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  769    215   
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
  770    216   
deleted file mode 100644
  771    217   
index a300bea..0000000
  772         -
-- 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
         218  +
++ /dev/null
  773    219   
@@ -1,4 +0,0 @@
  774         -
AWS4-ECDSA-P256-SHA256
  775         -
20150830T123600Z
  776         -
20150830/service/aws4_request
  777         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
  778    220   
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
  779    221   
deleted file mode 100644
  780    222   
index b6fdecf..0000000
  781         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         223  +
++ /dev/null
  782    224   
@@ -1,4 +0,0 @@
  783         -
AWS4-ECDSA-P256-SHA256
  784         -
20150830T123600Z
  785         -
20150830/service/aws4_request
  786         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  787    225   
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
  788    226   
new file mode 100644
  789    227   
index 0000000..a674243
  790         -
-- /dev/null
         228  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
  791    229   
@@ -0,0 +1,7 @@
         230  +
# AWS SigV4 and SigV4A Signing Test Suite
         231  +
         232  +
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).
         233  +
         234  +
We added the following changes:
         235  +
         236  +
* 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
  792    237   
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
  793    238   
similarity index 100%
  794    239   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
  795    240   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
  796    241   
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
  797    242   
similarity index 100%
  798    243   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
  799    244   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
  800    245   
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
  801    246   
similarity index 100%
  802    247   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
  803    248   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
  804    249   
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
  805    250   
similarity index 100%
  806    251   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
  807    252   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
  808    253   
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
  809    254   
similarity index 100%
  810    255   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
  811    256   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
  812    257   
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
  813    258   
similarity index 100%
  814    259   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
  815    260   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
  816    261   
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
  817    262   
similarity index 100%
  818    263   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
  819    264   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
  820    265   
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
  821    266   
similarity index 99%
  822    267   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
  823    268   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
  824    269   
index 45771c7..0468d80 100644
  825         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
         270  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
  826    271   
@@ -1,12 +1,12 @@
  827    272   
{
  828    273   
    "credentials": {
  829    274   
        "access_key_id": "AKIDEXAMPLE",
  830    275   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  831    276   
    },
  832    277   
    "expiration_in_seconds": 3600,
  833    278   
    "normalize": true,
  834    279   
    "region": "us-east-1",
  835    280   
    "service": "service",
  836    281   
    "sign_body": false,
  837    282   
    "timestamp": "2015-08-30T12:36:00Z"
  838         -
}
         283  +
}
              \
 No newline at end of file
  839    284   
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
  840    285   
similarity index 100%
  841    286   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
  842    287   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
  843    288   
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
  844    289   
new file mode 100644
  845    290   
index 0000000..7fc5d7a
  846         -
-- /dev/null
         291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
  847    292   
@@ -0,0 +1 @@
         293  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
  848    294   
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
  849    295   
new file mode 100644
  850    296   
index 0000000..36a1205
  851         -
-- /dev/null
         297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
  852    298   
@@ -0,0 +1,8 @@
         299  +
GET / HTTP/1.1
         300  +
Host:example.amazonaws.com
         301  +
My-Header1:value2
         302  +
My-Header1:value2
         303  +
My-Header1:value1
         304  +
X-Amz-Date:20150830T123600Z
         305  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         306  +
  853    307   
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
  854    308   
similarity index 100%
  855    309   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
  856    310   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
  857    311   
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
  858    312   
new file mode 100644
  859    313   
index 0000000..f9f4190
  860         -
-- /dev/null
         314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
  861    315   
@@ -0,0 +1,8 @@
         316  +
GET
         317  +
/
         318  +
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
         319  +
host:example.amazonaws.com
         320  +
my-header1:value2,value2,value1
         321  +
         322  +
host;my-header1
         323  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  862    324   
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
  863    325   
new file mode 100644
  864    326   
index 0000000..5d0d87f
  865         -
-- /dev/null
         327  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
  866    328   
@@ -0,0 +1 @@
         329  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
  867    330   
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
  868    331   
new file mode 100644
  869    332   
index 0000000..c1dfcf4
  870         -
-- /dev/null
         333  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
  871    334   
@@ -0,0 +1,6 @@
         335  +
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
         336  +
Host:example.amazonaws.com
         337  +
My-Header1:value2
         338  +
My-Header1:value2
         339  +
My-Header1:value1
         340  +
  872    341   
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
  873    342   
similarity index 53%
  874    343   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
  875    344   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
  876    345   
index 0a3350a..077c1bb 100644
  877         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         346  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
  878    347   
@@ -1,4 +1,4 @@
  879    348   
AWS4-HMAC-SHA256
  880    349   
20150830T123600Z
  881    350   
20150830/us-east-1/service/aws4_request
  882         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         351  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
  883    352   
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
  884    353   
similarity index 100%
  885    354   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
  886    355   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
  887    356   
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
  888    357   
similarity index 99%
  889    358   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
  890    359   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
  891    360   
index 45771c7..0468d80 100644
  892         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
         361  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
  893    362   
@@ -1,12 +1,12 @@
  894    363   
{
  895    364   
    "credentials": {
  896    365   
        "access_key_id": "AKIDEXAMPLE",
  897    366   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  898    367   
    },
  899    368   
    "expiration_in_seconds": 3600,
  900    369   
    "normalize": true,
  901    370   
    "region": "us-east-1",
  902    371   
    "service": "service",
  903    372   
    "sign_body": false,
  904    373   
    "timestamp": "2015-08-30T12:36:00Z"
  905         -
}
         374  +
}
              \
 No newline at end of file
  906    375   
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
  907    376   
similarity index 82%
  908    377   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
  909    378   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
  910    379   
index 721a39f..8cb5476 100644
  911         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         380  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
  912    381   
@@ -1,9 +1,9 @@
  913    382   
GET
  914    383   
/
  915    384   
  916    385   
host:example.amazonaws.com
  917         -
my-header1:value1,value2,value3
         386  +
my-header1:value1 value2 value3
  918    387   
x-amz-date:20150830T123600Z
  919    388   
  920    389   
host;my-header1;x-amz-date
  921    390   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  922    391   
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
  923    392   
new file mode 100644
  924    393   
index 0000000..e6ff7a9
  925         -
-- /dev/null
         394  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
  926    395   
@@ -0,0 +1 @@
         396  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
  927    397   
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
  928    398   
new file mode 100644
  929    399   
index 0000000..b5ef6a0
  930         -
-- /dev/null
         400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
  931    401   
@@ -0,0 +1,8 @@
         402  +
GET / HTTP/1.1
         403  +
Host:example.amazonaws.com
         404  +
My-Header1:value1
         405  +
  value2
         406  +
     value3
         407  +
X-Amz-Date:20150830T123600Z
         408  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         409  +
  932    410   
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
  933    411   
similarity index 53%
  934    412   
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
  935    413   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
  936    414   
index fd43a41..97c7430 100644
  937         -
-- 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
         415  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
  938    416   
@@ -1,4 +1,4 @@
  939    417   
AWS4-HMAC-SHA256
  940    418   
20150830T123600Z
  941    419   
20150830/us-east-1/service/aws4_request
  942         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         420  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
  943    421   
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
  944    422   
new file mode 100644
  945    423   
index 0000000..aac46de
  946         -
-- /dev/null
         424  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
  947    425   
@@ -0,0 +1,8 @@
         426  +
GET
         427  +
/
         428  +
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
         429  +
host:example.amazonaws.com
         430  +
my-header1:value1 value2 value3
         431  +
         432  +
host;my-header1
         433  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  948    434   
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
  949    435   
new file mode 100644
  950    436   
index 0000000..205732d
  951         -
-- /dev/null
         437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
  952    438   
@@ -0,0 +1 @@
         439  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
  953    440   
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
  954    441   
new file mode 100644
  955    442   
index 0000000..a891b87
  956         -
-- /dev/null
         443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
  957    444   
@@ -0,0 +1,6 @@
         445  +
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
         446  +
Host:example.amazonaws.com
         447  +
My-Header1:value1
         448  +
  value2
         449  +
     value3
         450  +
  958    451   
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
  959    452   
similarity index 53%
  960    453   
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
  961    454   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
  962    455   
index 90e66b8..ec3fe45 100644
  963         -
-- 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
         456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
  964    457   
@@ -1,4 +1,4 @@
  965    458   
AWS4-HMAC-SHA256
  966    459   
20150830T123600Z
  967    460   
20150830/us-east-1/service/aws4_request
  968         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         461  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
  969    462   
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
  970    463   
similarity index 75%
  971    464   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
  972    465   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
  973    466   
index 7caa6ac..b5026cd 100644
  974         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         467  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
  975    468   
@@ -1,6 +1,5 @@
  976    469   
GET / HTTP/1.1
  977    470   
Host:example.amazonaws.com
  978    471   
My-Header1:value1
  979    472   
  value2
  980    473   
     value3
  981         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  982    474   
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
  983    475   
similarity index 99%
  984    476   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
  985    477   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
  986    478   
index 45771c7..0468d80 100644
  987         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
         479  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
  988    480   
@@ -1,12 +1,12 @@
  989    481   
{
  990    482   
    "credentials": {
  991    483   
        "access_key_id": "AKIDEXAMPLE",
  992    484   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  993    485   
    },
  994    486   
    "expiration_in_seconds": 3600,
  995    487   
    "normalize": true,
  996    488   
    "region": "us-east-1",
  997    489   
    "service": "service",
  998    490   
    "sign_body": false,
  999    491   
    "timestamp": "2015-08-30T12:36:00Z"
 1000         -
}
         492  +
}
              \
 No newline at end of file
 1001    493   
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
 1002    494   
similarity index 100%
 1003    495   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1004    496   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1005    497   
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
 1006    498   
new file mode 100644
 1007    499   
index 0000000..8ef0494
 1008         -
-- /dev/null
         500  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1009    501   
@@ -0,0 +1 @@
         502  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1010    503   
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
 1011    504   
new file mode 100644
 1012    505   
index 0000000..b786dc9
 1013         -
-- /dev/null
         506  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1014    507   
@@ -0,0 +1,9 @@
         508  +
GET / HTTP/1.1
         509  +
Host:example.amazonaws.com
         510  +
My-Header1:value4
         511  +
My-Header1:value1
         512  +
My-Header1:value3
         513  +
My-Header1:value2
         514  +
X-Amz-Date:20150830T123600Z
         515  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         516  +
 1015    517   
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
 1016    518   
similarity index 100%
 1017    519   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1018    520   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1019    521   
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
 1020    522   
new file mode 100644
 1021    523   
index 0000000..a211cc5
 1022         -
-- /dev/null
         524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1023    525   
@@ -0,0 +1,8 @@
         526  +
GET
         527  +
/
         528  +
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
         529  +
host:example.amazonaws.com
         530  +
my-header1:value4,value1,value3,value2
         531  +
         532  +
host;my-header1
         533  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1024    534   
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
 1025    535   
new file mode 100644
 1026    536   
index 0000000..417b0fa
 1027         -
-- /dev/null
         537  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1028    538   
@@ -0,0 +1 @@
         539  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1029    540   
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
 1030    541   
new file mode 100644
 1031    542   
index 0000000..b615e5d
 1032         -
-- /dev/null
         543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1033    544   
@@ -0,0 +1,7 @@
         545  +
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
         546  +
Host:example.amazonaws.com
         547  +
My-Header1:value4
         548  +
My-Header1:value1
         549  +
My-Header1:value3
         550  +
My-Header1:value2
         551  +
 1034    552   
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
 1035    553   
similarity index 53%
 1036    554   
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
 1037    555   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1038    556   
index f7e615e..dcaaa1b 100644
 1039         -
-- 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
         557  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1040    558   
@@ -1,4 +1,4 @@
 1041    559   
AWS4-HMAC-SHA256
 1042    560   
20150830T123600Z
 1043    561   
20150830/us-east-1/service/aws4_request
 1044         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         562  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1045    563   
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
 1046    564   
similarity index 100%
 1047    565   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1048    566   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1049    567   
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
 1050    568   
similarity index 99%
 1051    569   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1052    570   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1053    571   
index 45771c7..0468d80 100644
 1054         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
         572  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1055    573   
@@ -1,12 +1,12 @@
 1056    574   
{
 1057    575   
    "credentials": {
 1058    576   
        "access_key_id": "AKIDEXAMPLE",
 1059    577   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1060    578   
    },
 1061    579   
    "expiration_in_seconds": 3600,
 1062    580   
    "normalize": true,
 1063    581   
    "region": "us-east-1",
 1064    582   
    "service": "service",
 1065    583   
    "sign_body": false,
 1066    584   
    "timestamp": "2015-08-30T12:36:00Z"
 1067         -
}
         585  +
}
              \
 No newline at end of file
 1068    586   
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
 1069    587   
similarity index 100%
 1070    588   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1071    589   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1072    590   
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
 1073    591   
new file mode 100644
 1074    592   
index 0000000..36081a9
 1075         -
-- /dev/null
         593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1076    594   
@@ -0,0 +1 @@
         595  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1077    596   
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
 1078    597   
new file mode 100644
 1079    598   
index 0000000..6331d16
 1080         -
-- /dev/null
         599  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1081    600   
@@ -0,0 +1,7 @@
         601  +
GET / HTTP/1.1
         602  +
Host:example.amazonaws.com
         603  +
My-Header1: value1
         604  +
My-Header2: "a   b   c"
         605  +
X-Amz-Date:20150830T123600Z
         606  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         607  +
 1082    608   
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
 1083    609   
similarity index 100%
 1084    610   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1085    611   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1086    612   
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
 1087    613   
new file mode 100644
 1088    614   
index 0000000..125c1f9
 1089         -
-- /dev/null
         615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1090    616   
@@ -0,0 +1,9 @@
         617  +
GET
         618  +
/
         619  +
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
         620  +
host:example.amazonaws.com
         621  +
my-header1:value1
         622  +
my-header2:"a b c"
         623  +
         624  +
host;my-header1;my-header2
         625  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1091    626   
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
 1092    627   
new file mode 100644
 1093    628   
index 0000000..17007a8
 1094         -
-- /dev/null
         629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1095    630   
@@ -0,0 +1 @@
         631  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1096    632   
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
 1097    633   
new file mode 100644
 1098    634   
index 0000000..e519fd9
 1099         -
-- /dev/null
         635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1100    636   
@@ -0,0 +1,5 @@
         637  +
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
         638  +
Host:example.amazonaws.com
         639  +
My-Header1: value1
         640  +
My-Header2: "a   b   c"
         641  +
 1101    642   
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
 1102    643   
new file mode 100644
 1103    644   
index 0000000..6b4b781
 1104         -
-- /dev/null
         645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1105    646   
@@ -0,0 +1,4 @@
         647  +
AWS4-HMAC-SHA256
         648  +
20150830T123600Z
         649  +
20150830/us-east-1/service/aws4_request
         650  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1106    651   
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
 1107    652   
similarity index 100%
 1108    653   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1109    654   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1110    655   
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
 1111    656   
new file mode 100644
 1112    657   
index 0000000..0468d80
 1113         -
-- /dev/null
         658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1114    659   
@@ -0,0 +1,12 @@
         660  +
{
         661  +
    "credentials": {
         662  +
        "access_key_id": "AKIDEXAMPLE",
         663  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         664  +
    },
         665  +
    "expiration_in_seconds": 3600,
         666  +
    "normalize": true,
         667  +
    "region": "us-east-1",
         668  +
    "service": "service",
         669  +
    "sign_body": false,
         670  +
    "timestamp": "2015-08-30T12:36:00Z"
         671  +
}
              \
 No newline at end of file
 1115    672   
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
 1116    673   
similarity index 100%
 1117    674   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1118    675   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1119    676   
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
 1120    677   
new file mode 100644
 1121    678   
index 0000000..87f295f
 1122         -
-- /dev/null
         679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1123    680   
@@ -0,0 +1 @@
         681  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1124    682   
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
 1125    683   
new file mode 100644
 1126    684   
index 0000000..0de8327
 1127         -
-- /dev/null
         685  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1128    686   
@@ -0,0 +1,5 @@
         687  +
GET /example/.. HTTP/1.1
         688  +
Host:example.amazonaws.com
         689  +
X-Amz-Date:20150830T123600Z
         690  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         691  +
 1129    692   
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
 1130    693   
similarity index 100%
 1131    694   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1132    695   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1133    696   
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
 1134    697   
new file mode 100644
 1135    698   
index 0000000..fb2420d
 1136         -
-- /dev/null
         699  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1137    700   
@@ -0,0 +1,7 @@
         701  +
GET
         702  +
/
         703  +
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
         704  +
host:example.amazonaws.com
         705  +
         706  +
host
         707  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1138    708   
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
 1139    709   
new file mode 100644
 1140    710   
index 0000000..da5c905
 1141         -
-- /dev/null
         711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1142    712   
@@ -0,0 +1 @@
         713  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1143    714   
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
 1144    715   
new file mode 100644
 1145    716   
index 0000000..4329c98
 1146         -
-- /dev/null
         717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1147    718   
@@ -0,0 +1,3 @@
         719  +
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
         720  +
Host:example.amazonaws.com
         721  +
 1148    722   
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
 1149    723   
new file mode 100644
 1150    724   
index 0000000..d837e67
 1151         -
-- /dev/null
         725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1152    726   
@@ -0,0 +1,4 @@
         727  +
AWS4-HMAC-SHA256
         728  +
20150830T123600Z
         729  +
20150830/us-east-1/service/aws4_request
         730  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1153    731   
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
 1154    732   
similarity index 100%
 1155    733   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1156    734   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1157    735   
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
 1158    736   
new file mode 100644
 1159    737   
index 0000000..0468d80
 1160         -
-- /dev/null
         738  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1161    739   
@@ -0,0 +1,12 @@
         740  +
{
         741  +
    "credentials": {
         742  +
        "access_key_id": "AKIDEXAMPLE",
         743  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         744  +
    },
         745  +
    "expiration_in_seconds": 3600,
         746  +
    "normalize": true,
         747  +
    "region": "us-east-1",
         748  +
    "service": "service",
         749  +
    "sign_body": false,
         750  +
    "timestamp": "2015-08-30T12:36:00Z"
         751  +
}
              \
 No newline at end of file
 1162    752   
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
 1163    753   
similarity index 100%
 1164    754   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1165    755   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1166    756   
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
 1167    757   
new file mode 100644
 1168    758   
index 0000000..87f295f
 1169         -
-- /dev/null
         759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1170    760   
@@ -0,0 +1 @@
         761  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1171    762   
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
 1172    763   
new file mode 100644
 1173    764   
index 0000000..f9b3815
 1174         -
-- /dev/null
         765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1175    766   
@@ -0,0 +1,5 @@
         767  +
GET /example1/example2/../.. HTTP/1.1
         768  +
Host:example.amazonaws.com
         769  +
X-Amz-Date:20150830T123600Z
         770  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         771  +
 1176    772   
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
 1177    773   
similarity index 100%
 1178    774   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1179    775   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1180    776   
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
 1181    777   
new file mode 100644
 1182    778   
index 0000000..fb2420d
 1183         -
-- /dev/null
         779  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1184    780   
@@ -0,0 +1,7 @@
         781  +
GET
         782  +
/
         783  +
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
         784  +
host:example.amazonaws.com
         785  +
         786  +
host
         787  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1185    788   
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
 1186    789   
new file mode 100644
 1187    790   
index 0000000..da5c905
 1188         -
-- /dev/null
         791  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1189    792   
@@ -0,0 +1 @@
         793  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1190    794   
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
 1191    795   
new file mode 100644
 1192    796   
index 0000000..b2988b7
 1193         -
-- /dev/null
         797  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1194    798   
@@ -0,0 +1,3 @@
         799  +
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
         800  +
Host:example.amazonaws.com
         801  +
 1195    802   
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
 1196    803   
new file mode 100644
 1197    804   
index 0000000..d837e67
 1198         -
-- /dev/null
         805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1199    806   
@@ -0,0 +1,4 @@
         807  +
AWS4-HMAC-SHA256
         808  +
20150830T123600Z
         809  +
20150830/us-east-1/service/aws4_request
         810  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1200    811   
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
 1201    812   
similarity index 100%
 1202    813   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1203    814   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1204    815   
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
 1205    816   
similarity index 99%
 1206    817   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1207    818   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1208    819   
index afe367b..7bee5c7 100644
 1209         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
         820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1210    821   
@@ -1,12 +1,12 @@
 1211    822   
{
 1212    823   
    "credentials": {
 1213    824   
        "access_key_id": "AKIDEXAMPLE",
 1214    825   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1215    826   
    },
 1216    827   
    "expiration_in_seconds": 3600,
 1217    828   
    "normalize": false,
 1218    829   
    "region": "us-east-1",
 1219    830   
    "service": "service",
 1220    831   
    "sign_body": false,
 1221    832   
    "timestamp": "2015-08-30T12:36:00Z"
 1222         -
}
         833  +
}
              \
 No newline at end of file
 1223    834   
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
 1224    835   
similarity index 82%
 1225    836   
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
 1226    837   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1227    838   
index 36c3cdf..6919c44 100644
 1228         -
-- 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
         839  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1229    840   
@@ -1,8 +1,8 @@
 1230    841   
GET
 1231         -
/
 1232         -
Param1=Value1&Param1=value2
         842  +
/example1/example2/../..
         843  +
 1233    844   
host:example.amazonaws.com
 1234    845   
x-amz-date:20150830T123600Z
 1235    846   
 1236    847   
host;x-amz-date
 1237    848   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1238    849   
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
 1239    850   
new file mode 100644
 1240    851   
index 0000000..4092d83
 1241         -
-- /dev/null
         852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1242    853   
@@ -0,0 +1 @@
         854  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1243    855   
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
 1244    856   
new file mode 100644
 1245    857   
index 0000000..e731b35
 1246         -
-- /dev/null
         858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1247    859   
@@ -0,0 +1,5 @@
         860  +
GET /example1/example2/../.. HTTP/1.1
         861  +
Host:example.amazonaws.com
         862  +
X-Amz-Date:20150830T123600Z
         863  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
         864  +
 1248    865   
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
 1249    866   
new file mode 100644
 1250    867   
index 0000000..4f45752
 1251         -
-- /dev/null
         868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1252    869   
@@ -0,0 +1,4 @@
         870  +
AWS4-HMAC-SHA256
         871  +
20150830T123600Z
         872  +
20150830/us-east-1/service/aws4_request
         873  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1253    874   
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
 1254    875   
new file mode 100644
 1255    876   
index 0000000..e1fb07d
 1256         -
-- /dev/null
         877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1257    878   
@@ -0,0 +1,7 @@
         879  +
GET
         880  +
/example1/example2/../..
         881  +
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
         882  +
host:example.amazonaws.com
         883  +
         884  +
host
         885  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1258    886   
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
 1259    887   
new file mode 100644
 1260    888   
index 0000000..8ac31d7
 1261         -
-- /dev/null
         889  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1262    890   
@@ -0,0 +1 @@
         891  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1263    892   
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
 1264    893   
new file mode 100644
 1265    894   
index 0000000..ac074f9
 1266         -
-- /dev/null
         895  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1267    896   
@@ -0,0 +1,3 @@
         897  +
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
         898  +
Host:example.amazonaws.com
         899  +
 1268    900   
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
 1269    901   
new file mode 100644
 1270    902   
index 0000000..8dcb6ff
 1271         -
-- /dev/null
         903  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1272    904   
@@ -0,0 +1,4 @@
         905  +
AWS4-HMAC-SHA256
         906  +
20150830T123600Z
         907  +
20150830/us-east-1/service/aws4_request
         908  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1273    909   
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
 1274    910   
similarity index 100%
 1275    911   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1276    912   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1277    913   
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
 1278    914   
similarity index 99%
 1279    915   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1280    916   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1281    917   
index afe367b..7bee5c7 100644
 1282         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
         918  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1283    919   
@@ -1,12 +1,12 @@
 1284    920   
{
 1285    921   
    "credentials": {
 1286    922   
        "access_key_id": "AKIDEXAMPLE",
 1287    923   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1288    924   
    },
 1289    925   
    "expiration_in_seconds": 3600,
 1290    926   
    "normalize": false,
 1291    927   
    "region": "us-east-1",
 1292    928   
    "service": "service",
 1293    929   
    "sign_body": false,
 1294    930   
    "timestamp": "2015-08-30T12:36:00Z"
 1295         -
}
         931  +
}
              \
 No newline at end of file
 1296    932   
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
 1297    933   
similarity index 82%
 1298    934   
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
 1299    935   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1300    936   
index 26898eb..f640bc2 100644
 1301         -
-- 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
         937  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1302    938   
@@ -1,8 +1,8 @@
 1303    939   
GET
 1304         -
/
 1305         -
Param1=value1&Param1=value2
         940  +
/example/..
         941  +
 1306    942   
host:example.amazonaws.com
 1307    943   
x-amz-date:20150830T123600Z
 1308    944   
 1309    945   
host;x-amz-date
 1310    946   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1311    947   
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
 1312    948   
new file mode 100644
 1313    949   
index 0000000..d957303
 1314         -
-- /dev/null
         950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1315    951   
@@ -0,0 +1 @@
         952  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1316    953   
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
 1317    954   
new file mode 100644
 1318    955   
index 0000000..4f42ffc
 1319         -
-- /dev/null
         956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1320    957   
@@ -0,0 +1,5 @@
         958  +
GET /example/.. HTTP/1.1
         959  +
Host:example.amazonaws.com
         960  +
X-Amz-Date:20150830T123600Z
         961  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
         962  +
 1321    963   
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
 1322    964   
new file mode 100644
 1323    965   
index 0000000..ca54bda
 1324         -
-- /dev/null
         966  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1325    967   
@@ -0,0 +1,4 @@
         968  +
AWS4-HMAC-SHA256
         969  +
20150830T123600Z
         970  +
20150830/us-east-1/service/aws4_request
         971  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1326    972   
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
 1327    973   
new file mode 100644
 1328    974   
index 0000000..dc80036
 1329         -
-- /dev/null
         975  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1330    976   
@@ -0,0 +1,7 @@
         977  +
GET
         978  +
/example/..
         979  +
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
         980  +
host:example.amazonaws.com
         981  +
         982  +
host
         983  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1331    984   
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
 1332    985   
new file mode 100644
 1333    986   
index 0000000..dfa0437
 1334         -
-- /dev/null
         987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1335    988   
@@ -0,0 +1 @@
         989  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1336    990   
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
 1337    991   
new file mode 100644
 1338    992   
index 0000000..98367b1
 1339         -
-- /dev/null
         993  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1340    994   
@@ -0,0 +1,3 @@
         995  +
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
         996  +
Host:example.amazonaws.com
         997  +
 1341    998   
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
 1342    999   
new file mode 100644
 1343   1000   
index 0000000..f65dd66
 1344         -
-- /dev/null
        1001  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1345   1002   
@@ -0,0 +1,4 @@
        1003  +
AWS4-HMAC-SHA256
        1004  +
20150830T123600Z
        1005  +
20150830/us-east-1/service/aws4_request
        1006  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1346   1007   
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
 1347   1008   
similarity index 100%
 1348   1009   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1349   1010   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1350   1011   
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
 1351   1012   
new file mode 100644
 1352   1013   
index 0000000..0468d80
 1353         -
-- /dev/null
        1014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1354   1015   
@@ -0,0 +1,12 @@
        1016  +
{
        1017  +
    "credentials": {
        1018  +
        "access_key_id": "AKIDEXAMPLE",
        1019  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1020  +
    },
        1021  +
    "expiration_in_seconds": 3600,
        1022  +
    "normalize": true,
        1023  +
    "region": "us-east-1",
        1024  +
    "service": "service",
        1025  +
    "sign_body": false,
        1026  +
    "timestamp": "2015-08-30T12:36:00Z"
        1027  +
}
              \
 No newline at end of file
 1355   1028   
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
 1356   1029   
similarity index 100%
 1357   1030   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1358   1031   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1359   1032   
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
 1360   1033   
new file mode 100644
 1361   1034   
index 0000000..87f295f
 1362         -
-- /dev/null
        1035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1363   1036   
@@ -0,0 +1 @@
        1037  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1364   1038   
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
 1365   1039   
new file mode 100644
 1366   1040   
index 0000000..99c8eeb
 1367         -
-- /dev/null
        1041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1368   1042   
@@ -0,0 +1,5 @@
        1043  +
GET /./ HTTP/1.1
        1044  +
Host:example.amazonaws.com
        1045  +
X-Amz-Date:20150830T123600Z
        1046  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1047  +
 1369   1048   
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
 1370   1049   
similarity index 100%
 1371   1050   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1372   1051   
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
 1373   1052   
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
 1374   1053   
new file mode 100644
 1375   1054   
index 0000000..fb2420d
 1376         -
-- /dev/null
        1055  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1377   1056   
@@ -0,0 +1,7 @@
        1057  +
GET
        1058  +
/
        1059  +
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
        1060  +
host:example.amazonaws.com
        1061  +
        1062  +
host
        1063  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1378   1064   
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
 1379   1065   
new file mode 100644
 1380   1066   
index 0000000..da5c905
 1381         -
-- /dev/null
        1067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1382   1068   
@@ -0,0 +1 @@
        1069  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1383   1070   
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
 1384   1071   
new file mode 100644
 1385   1072   
index 0000000..2e47f69
 1386         -
-- /dev/null
        1073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1387   1074   
@@ -0,0 +1,3 @@
        1075  +
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
        1076  +
Host:example.amazonaws.com
        1077  +
 1388   1078   
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
 1389   1079   
new file mode 100644
 1390   1080   
index 0000000..d837e67
 1391         -
-- /dev/null
        1081  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1392   1082   
@@ -0,0 +1,4 @@
        1083  +
AWS4-HMAC-SHA256
        1084  +
20150830T123600Z
        1085  +
20150830/us-east-1/service/aws4_request
        1086  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1393   1087   
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
 1394   1088   
similarity index 100%
 1395   1089   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1396   1090   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1397   1091   
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
 1398   1092   
similarity index 99%
 1399   1093   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1400   1094   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1401   1095   
index afe367b..7bee5c7 100644
 1402         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
        1096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1403   1097   
@@ -1,12 +1,12 @@
 1404   1098   
{
 1405   1099   
    "credentials": {
 1406   1100   
        "access_key_id": "AKIDEXAMPLE",
 1407   1101   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1408   1102   
    },
 1409   1103   
    "expiration_in_seconds": 3600,
 1410   1104   
    "normalize": false,
 1411   1105   
    "region": "us-east-1",
 1412   1106   
    "service": "service",
 1413   1107   
    "sign_body": false,
 1414   1108   
    "timestamp": "2015-08-30T12:36:00Z"
 1415         -
}
        1109  +
}
              \
 No newline at end of file
 1416   1110   
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
 1417   1111   
new file mode 100644
 1418   1112   
index 0000000..5159048
 1419         -
-- /dev/null
        1113  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1420   1114   
@@ -0,0 +1,8 @@
        1115  +
GET
        1116  +
/./
        1117  +
        1118  +
host:example.amazonaws.com
        1119  +
x-amz-date:20150830T123600Z
        1120  +
        1121  +
host;x-amz-date
        1122  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1421   1123   
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
 1422   1124   
new file mode 100644
 1423   1125   
index 0000000..b49ff0e
 1424         -
-- /dev/null
        1126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1425   1127   
@@ -0,0 +1 @@
        1128  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1426   1129   
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
 1427   1130   
new file mode 100644
 1428   1131   
index 0000000..aeb1ffa
 1429         -
-- /dev/null
        1132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1430   1133   
@@ -0,0 +1,5 @@
        1134  +
GET /./ HTTP/1.1
        1135  +
Host:example.amazonaws.com
        1136  +
X-Amz-Date:20150830T123600Z
        1137  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1138  +
 1431   1139   
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
 1432   1140   
new file mode 100644
 1433   1141   
index 0000000..b7d8caf
 1434         -
-- /dev/null
        1142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1435   1143   
@@ -0,0 +1,4 @@
        1144  +
AWS4-HMAC-SHA256
        1145  +
20150830T123600Z
        1146  +
20150830/us-east-1/service/aws4_request
        1147  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1436   1148   
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
 1437   1149   
new file mode 100644
 1438   1150   
index 0000000..d4e029e
 1439         -
-- /dev/null
        1151  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1440   1152   
@@ -0,0 +1,7 @@
        1153  +
GET
        1154  +
/./
        1155  +
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
        1156  +
host:example.amazonaws.com
        1157  +
        1158  +
host
        1159  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1441   1160   
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
 1442   1161   
new file mode 100644
 1443   1162   
index 0000000..fe8f4cc
 1444         -
-- /dev/null
        1163  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1445   1164   
@@ -0,0 +1 @@
        1165  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1446   1166   
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
 1447   1167   
new file mode 100644
 1448   1168   
index 0000000..dcc4fc4
 1449         -
-- /dev/null
        1169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1450   1170   
@@ -0,0 +1,3 @@
        1171  +
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
        1172  +
Host:example.amazonaws.com
        1173  +
 1451   1174   
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
 1452   1175   
new file mode 100644
 1453   1176   
index 0000000..5fb3ada
 1454         -
-- /dev/null
        1177  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1455   1178   
@@ -0,0 +1,4 @@
        1179  +
AWS4-HMAC-SHA256
        1180  +
20150830T123600Z
        1181  +
20150830/us-east-1/service/aws4_request
        1182  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1456   1183   
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
 1457   1184   
similarity index 100%
 1458   1185   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1459   1186   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1460   1187   
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
 1461   1188   
new file mode 100644
 1462   1189   
index 0000000..0468d80
 1463         -
-- /dev/null
        1190  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1464   1191   
@@ -0,0 +1,12 @@
        1192  +
{
        1193  +
    "credentials": {
        1194  +
        "access_key_id": "AKIDEXAMPLE",
        1195  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1196  +
    },
        1197  +
    "expiration_in_seconds": 3600,
        1198  +
    "normalize": true,
        1199  +
    "region": "us-east-1",
        1200  +
    "service": "service",
        1201  +
    "sign_body": false,
        1202  +
    "timestamp": "2015-08-30T12:36:00Z"
        1203  +
}
              \
 No newline at end of file
 1465   1204   
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
 1466   1205   
similarity index 100%
 1467   1206   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1468   1207   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1469   1208   
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
 1470   1209   
new file mode 100644
 1471   1210   
index 0000000..87f295f
 1472         -
-- /dev/null
        1211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1473   1212   
@@ -0,0 +1 @@
        1213  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1474   1214   
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
 1475   1215   
new file mode 100644
 1476   1216   
index 0000000..b91087b
 1477         -
-- /dev/null
        1217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1478   1218   
@@ -0,0 +1,5 @@
        1219  +
GET // HTTP/1.1
        1220  +
Host:example.amazonaws.com
        1221  +
X-Amz-Date:20150830T123600Z
        1222  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1223  +
 1479   1224   
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
 1480   1225   
similarity index 100%
 1481   1226   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1482   1227   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1483   1228   
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
 1484   1229   
new file mode 100644
 1485   1230   
index 0000000..fb2420d
 1486         -
-- /dev/null
        1231  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1487   1232   
@@ -0,0 +1,7 @@
        1233  +
GET
        1234  +
/
        1235  +
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
        1236  +
host:example.amazonaws.com
        1237  +
        1238  +
host
        1239  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1488   1240   
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
 1489   1241   
new file mode 100644
 1490   1242   
index 0000000..da5c905
 1491         -
-- /dev/null
        1243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1492   1244   
@@ -0,0 +1 @@
        1245  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1493   1246   
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
 1494   1247   
new file mode 100644
 1495   1248   
index 0000000..0290ba4
 1496         -
-- /dev/null
        1249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1497   1250   
@@ -0,0 +1,3 @@
        1251  +
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
        1252  +
Host:example.amazonaws.com
        1253  +
 1498   1254   
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
 1499   1255   
new file mode 100644
 1500   1256   
index 0000000..d837e67
 1501         -
-- /dev/null
        1257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1502   1258   
@@ -0,0 +1,4 @@
        1259  +
AWS4-HMAC-SHA256
        1260  +
20150830T123600Z
        1261  +
20150830/us-east-1/service/aws4_request
        1262  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1503   1263   
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
 1504   1264   
similarity index 100%
 1505   1265   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1506   1266   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1507   1267   
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
 1508   1268   
new file mode 100644
 1509   1269   
index 0000000..0468d80
 1510         -
-- /dev/null
        1270  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1511   1271   
@@ -0,0 +1,12 @@
        1272  +
{
        1273  +
    "credentials": {
        1274  +
        "access_key_id": "AKIDEXAMPLE",
        1275  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1276  +
    },
        1277  +
    "expiration_in_seconds": 3600,
        1278  +
    "normalize": true,
        1279  +
    "region": "us-east-1",
        1280  +
    "service": "service",
        1281  +
    "sign_body": false,
        1282  +
    "timestamp": "2015-08-30T12:36:00Z"
        1283  +
}
              \
 No newline at end of file
 1512   1284   
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
 1513   1285   
similarity index 100%
 1514   1286   
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
 1515   1287   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1516   1288   
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
 1517   1289   
new file mode 100644
 1518   1290   
index 0000000..8f892bf
 1519         -
-- /dev/null
        1291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1520   1292   
@@ -0,0 +1 @@
        1293  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1521   1294   
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
 1522   1295   
new file mode 100644
 1523   1296   
index 0000000..2a1895c
 1524         -
-- /dev/null
        1297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1525   1298   
@@ -0,0 +1,5 @@
        1299  +
GET /./example HTTP/1.1
        1300  +
Host:example.amazonaws.com
        1301  +
X-Amz-Date:20150830T123600Z
        1302  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1303  +
 1526   1304   
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
 1527   1305   
similarity index 100%
 1528   1306   
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
 1529   1307   
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
 1530   1308   
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
 1531   1309   
new file mode 100644
 1532   1310   
index 0000000..99dfc2a
 1533         -
-- /dev/null
        1311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1534   1312   
@@ -0,0 +1,7 @@
        1313  +
GET
        1314  +
/example
        1315  +
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
        1316  +
host:example.amazonaws.com
        1317  +
        1318  +
host
        1319  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1535   1320   
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
 1536   1321   
new file mode 100644
 1537   1322   
index 0000000..fcd7a17
 1538         -
-- /dev/null
        1323  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1539   1324   
@@ -0,0 +1 @@
        1325  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1540   1326   
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
 1541   1327   
new file mode 100644
 1542   1328   
index 0000000..f671de2
 1543         -
-- /dev/null
        1329  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1544   1330   
@@ -0,0 +1,3 @@
        1331  +
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
        1332  +
Host:example.amazonaws.com
        1333  +
 1545   1334   
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
 1546   1335   
new file mode 100644
 1547   1336   
index 0000000..f8456dc
 1548         -
-- /dev/null
        1337  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1549   1338   
@@ -0,0 +1,4 @@
        1339  +
AWS4-HMAC-SHA256
        1340  +
20150830T123600Z
        1341  +
20150830/us-east-1/service/aws4_request
        1342  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1550   1343   
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
 1551   1344   
similarity index 100%
 1552   1345   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1553   1346   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1554   1347   
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
 1555   1348   
similarity index 99%
 1556   1349   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1557   1350   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1558   1351   
index afe367b..7bee5c7 100644
 1559         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
        1352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1560   1353   
@@ -1,12 +1,12 @@
 1561   1354   
{
 1562   1355   
    "credentials": {
 1563   1356   
        "access_key_id": "AKIDEXAMPLE",
 1564   1357   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1565   1358   
    },
 1566   1359   
    "expiration_in_seconds": 3600,
 1567   1360   
    "normalize": false,
 1568   1361   
    "region": "us-east-1",
 1569   1362   
    "service": "service",
 1570   1363   
    "sign_body": false,
 1571   1364   
    "timestamp": "2015-08-30T12:36:00Z"
 1572         -
}
        1365  +
}
              \
 No newline at end of file
 1573   1366   
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
 1574   1367   
new file mode 100644
 1575   1368   
index 0000000..36698c7
 1576         -
-- /dev/null
        1369  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1577   1370   
@@ -0,0 +1,8 @@
        1371  +
GET
        1372  +
/./example
        1373  +
        1374  +
host:example.amazonaws.com
        1375  +
x-amz-date:20150830T123600Z
        1376  +
        1377  +
host;x-amz-date
        1378  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1578   1379   
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
 1579   1380   
new file mode 100644
 1580   1381   
index 0000000..4a4b8f2
 1581         -
-- /dev/null
        1382  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1582   1383   
@@ -0,0 +1 @@
        1384  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1583   1385   
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
 1584   1386   
new file mode 100644
 1585   1387   
index 0000000..d462bcd
 1586         -
-- /dev/null
        1388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1587   1389   
@@ -0,0 +1,5 @@
        1390  +
GET /./example HTTP/1.1
        1391  +
Host:example.amazonaws.com
        1392  +
X-Amz-Date:20150830T123600Z
        1393  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1394  +
 1588   1395   
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
 1589   1396   
new file mode 100644
 1590   1397   
index 0000000..8be78c9
 1591         -
-- /dev/null
        1398  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1592   1399   
@@ -0,0 +1,4 @@
        1400  +
AWS4-HMAC-SHA256
        1401  +
20150830T123600Z
        1402  +
20150830/us-east-1/service/aws4_request
        1403  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1593   1404   
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
 1594   1405   
new file mode 100644
 1595   1406   
index 0000000..fe1103c
 1596         -
-- /dev/null
        1407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1597   1408   
@@ -0,0 +1,7 @@
        1409  +
GET
        1410  +
/./example
        1411  +
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
        1412  +
host:example.amazonaws.com
        1413  +
        1414  +
host
        1415  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1598   1416   
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
 1599   1417   
new file mode 100644
 1600   1418   
index 0000000..ce80762
 1601         -
-- /dev/null
        1419  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1602   1420   
@@ -0,0 +1 @@
        1421  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1603   1422   
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
 1604   1423   
new file mode 100644
 1605   1424   
index 0000000..30841a6
 1606         -
-- /dev/null
        1425  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1607   1426   
@@ -0,0 +1,3 @@
        1427  +
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
        1428  +
Host:example.amazonaws.com
        1429  +
 1608   1430   
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
 1609   1431   
new file mode 100644
 1610   1432   
index 0000000..5c66509
 1611         -
-- /dev/null
        1433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1612   1434   
@@ -0,0 +1,4 @@
        1435  +
AWS4-HMAC-SHA256
        1436  +
20150830T123600Z
        1437  +
20150830/us-east-1/service/aws4_request
        1438  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1613   1439   
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
 1614   1440   
similarity index 100%
 1615   1441   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1616   1442   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1617   1443   
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
 1618   1444   
new file mode 100644
 1619   1445   
index 0000000..7bee5c7
 1620         -
-- /dev/null
        1446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1621   1447   
@@ -0,0 +1,12 @@
        1448  +
{
        1449  +
    "credentials": {
        1450  +
        "access_key_id": "AKIDEXAMPLE",
        1451  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1452  +
    },
        1453  +
    "expiration_in_seconds": 3600,
        1454  +
    "normalize": false,
        1455  +
    "region": "us-east-1",
        1456  +
    "service": "service",
        1457  +
    "sign_body": false,
        1458  +
    "timestamp": "2015-08-30T12:36:00Z"
        1459  +
}
              \
 No newline at end of file
 1622   1460   
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
 1623   1461   
new file mode 100644
 1624   1462   
index 0000000..5860c8a
 1625         -
-- /dev/null
        1463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1626   1464   
@@ -0,0 +1,8 @@
        1465  +
GET
        1466  +
//
        1467  +
        1468  +
host:example.amazonaws.com
        1469  +
x-amz-date:20150830T123600Z
        1470  +
        1471  +
host;x-amz-date
        1472  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1627   1473   
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
 1628   1474   
new file mode 100644
 1629   1475   
index 0000000..8310471
 1630         -
-- /dev/null
        1476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1631   1477   
@@ -0,0 +1 @@
        1478  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1632   1479   
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
 1633   1480   
new file mode 100644
 1634   1481   
index 0000000..2a7afef
 1635         -
-- /dev/null
        1482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1636   1483   
@@ -0,0 +1,5 @@
        1484  +
GET // HTTP/1.1
        1485  +
Host:example.amazonaws.com
        1486  +
X-Amz-Date:20150830T123600Z
        1487  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1488  +
 1637   1489   
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
 1638   1490   
new file mode 100644
 1639   1491   
index 0000000..06059dd
 1640         -
-- /dev/null
        1492  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1641   1493   
@@ -0,0 +1,4 @@
        1494  +
AWS4-HMAC-SHA256
        1495  +
20150830T123600Z
        1496  +
20150830/us-east-1/service/aws4_request
        1497  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1642   1498   
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
 1643   1499   
new file mode 100644
 1644   1500   
index 0000000..6d63aef
 1645         -
-- /dev/null
        1501  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1646   1502   
@@ -0,0 +1,7 @@
        1503  +
GET
        1504  +
//
        1505  +
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
        1506  +
host:example.amazonaws.com
        1507  +
        1508  +
host
        1509  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1647   1510   
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
 1648   1511   
new file mode 100644
 1649   1512   
index 0000000..e5b7b6c
 1650         -
-- /dev/null
        1513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1651   1514   
@@ -0,0 +1 @@
        1515  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1652   1516   
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
 1653   1517   
new file mode 100644
 1654   1518   
index 0000000..46fe3fd
 1655         -
-- /dev/null
        1519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1656   1520   
@@ -0,0 +1,3 @@
        1521  +
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
        1522  +
Host:example.amazonaws.com
        1523  +
 1657   1524   
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
 1658   1525   
new file mode 100644
 1659   1526   
index 0000000..ea79940
 1660         -
-- /dev/null
        1527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1661   1528   
@@ -0,0 +1,4 @@
        1529  +
AWS4-HMAC-SHA256
        1530  +
20150830T123600Z
        1531  +
20150830/us-east-1/service/aws4_request
        1532  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1662   1533   
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
 1663   1534   
similarity index 100%
 1664   1535   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1665   1536   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1666   1537   
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
 1667   1538   
new file mode 100644
 1668   1539   
index 0000000..0468d80
 1669         -
-- /dev/null
        1540  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1670   1541   
@@ -0,0 +1,12 @@
        1542  +
{
        1543  +
    "credentials": {
        1544  +
        "access_key_id": "AKIDEXAMPLE",
        1545  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1546  +
    },
        1547  +
    "expiration_in_seconds": 3600,
        1548  +
    "normalize": true,
        1549  +
    "region": "us-east-1",
        1550  +
    "service": "service",
        1551  +
    "sign_body": false,
        1552  +
    "timestamp": "2015-08-30T12:36:00Z"
        1553  +
}
              \
 No newline at end of file
 1671   1554   
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
 1672   1555   
similarity index 100%
 1673   1556   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1674   1557   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1675   1558   
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
 1676   1559   
new file mode 100644
 1677   1560   
index 0000000..71c7bac
 1678         -
-- /dev/null
        1561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1679   1562   
@@ -0,0 +1 @@
        1563  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1680   1564   
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
 1681   1565   
new file mode 100644
 1682   1566   
index 0000000..0add1f1
 1683         -
-- /dev/null
        1567  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1684   1568   
@@ -0,0 +1,5 @@
        1569  +
GET //example// HTTP/1.1
        1570  +
Host:example.amazonaws.com
        1571  +
X-Amz-Date:20150830T123600Z
        1572  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1573  +
 1685   1574   
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
 1686   1575   
similarity index 100%
 1687   1576   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1688   1577   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1689   1578   
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
 1690   1579   
new file mode 100644
 1691   1580   
index 0000000..ce72510
 1692         -
-- /dev/null
        1581  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1693   1582   
@@ -0,0 +1,7 @@
        1583  +
GET
        1584  +
/example/
        1585  +
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
        1586  +
host:example.amazonaws.com
        1587  +
        1588  +
host
        1589  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1694   1590   
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
 1695   1591   
new file mode 100644
 1696   1592   
index 0000000..265f387
 1697         -
-- /dev/null
        1593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1698   1594   
@@ -0,0 +1 @@
        1595  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1699   1596   
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
 1700   1597   
new file mode 100644
 1701   1598   
index 0000000..e1fcb2e
 1702         -
-- /dev/null
        1599  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1703   1600   
@@ -0,0 +1,3 @@
        1601  +
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
        1602  +
Host:example.amazonaws.com
        1603  +
 1704   1604   
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
 1705   1605   
new file mode 100644
 1706   1606   
index 0000000..a14de61
 1707         -
-- /dev/null
        1607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1708   1608   
@@ -0,0 +1,4 @@
        1609  +
AWS4-HMAC-SHA256
        1610  +
20150830T123600Z
        1611  +
20150830/us-east-1/service/aws4_request
        1612  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1709   1613   
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
 1710   1614   
similarity index 100%
 1711   1615   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1712   1616   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1713   1617   
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
 1714   1618   
new file mode 100644
 1715   1619   
index 0000000..7bee5c7
 1716         -
-- /dev/null
        1620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1717   1621   
@@ -0,0 +1,12 @@
        1622  +
{
        1623  +
    "credentials": {
        1624  +
        "access_key_id": "AKIDEXAMPLE",
        1625  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1626  +
    },
        1627  +
    "expiration_in_seconds": 3600,
        1628  +
    "normalize": false,
        1629  +
    "region": "us-east-1",
        1630  +
    "service": "service",
        1631  +
    "sign_body": false,
        1632  +
    "timestamp": "2015-08-30T12:36:00Z"
        1633  +
}
              \
 No newline at end of file
 1718   1634   
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
 1719   1635   
new file mode 100644
 1720   1636   
index 0000000..dfffaaf
 1721         -
-- /dev/null
        1637  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1722   1638   
@@ -0,0 +1,8 @@
        1639  +
GET
        1640  +
//example//
        1641  +
        1642  +
host:example.amazonaws.com
        1643  +
x-amz-date:20150830T123600Z
        1644  +
        1645  +
host;x-amz-date
        1646  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1723   1647   
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
 1724   1648   
new file mode 100644
 1725   1649   
index 0000000..edbcc0d
 1726         -
-- /dev/null
        1650  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1727   1651   
@@ -0,0 +1 @@
        1652  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1728   1653   
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
 1729   1654   
new file mode 100644
 1730   1655   
index 0000000..4cc12dd
 1731         -
-- /dev/null
        1656  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 1732   1657   
@@ -0,0 +1,5 @@
        1658  +
GET //example// HTTP/1.1
        1659  +
Host:example.amazonaws.com
        1660  +
X-Amz-Date:20150830T123600Z
        1661  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1662  +
 1733   1663   
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
 1734   1664   
new file mode 100644
 1735   1665   
index 0000000..3eba390
 1736         -
-- /dev/null
        1666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 1737   1667   
@@ -0,0 +1,4 @@
        1668  +
AWS4-HMAC-SHA256
        1669  +
20150830T123600Z
        1670  +
20150830/us-east-1/service/aws4_request
        1671  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 1738   1672   
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
 1739   1673   
new file mode 100644
 1740   1674   
index 0000000..f7844e3
 1741         -
-- /dev/null
        1675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 1742   1676   
@@ -0,0 +1,7 @@
        1677  +
GET
        1678  +
//example//
        1679  +
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
        1680  +
host:example.amazonaws.com
        1681  +
        1682  +
host
        1683  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1743   1684   
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
 1744   1685   
new file mode 100644
 1745   1686   
index 0000000..a8d6b96
 1746         -
-- /dev/null
        1687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 1747   1688   
@@ -0,0 +1 @@
        1689  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 1748   1690   
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
 1749   1691   
new file mode 100644
 1750   1692   
index 0000000..a8322c6
 1751         -
-- /dev/null
        1693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 1752   1694   
@@ -0,0 +1,3 @@
        1695  +
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
        1696  +
Host:example.amazonaws.com
        1697  +
 1753   1698   
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
 1754   1699   
new file mode 100644
 1755   1700   
index 0000000..068724d
 1756         -
-- /dev/null
        1701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 1757   1702   
@@ -0,0 +1,4 @@
        1703  +
AWS4-HMAC-SHA256
        1704  +
20150830T123600Z
        1705  +
20150830/us-east-1/service/aws4_request
        1706  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 1758   1707   
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
 1759   1708   
similarity index 100%
 1760   1709   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 1761   1710   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 1762   1711   
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
 1763   1712   
new file mode 100644
 1764   1713   
index 0000000..0468d80
 1765         -
-- /dev/null
        1714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 1766   1715   
@@ -0,0 +1,12 @@
        1716  +
{
        1717  +
    "credentials": {
        1718  +
        "access_key_id": "AKIDEXAMPLE",
        1719  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1720  +
    },
        1721  +
    "expiration_in_seconds": 3600,
        1722  +
    "normalize": true,
        1723  +
    "region": "us-east-1",
        1724  +
    "service": "service",
        1725  +
    "sign_body": false,
        1726  +
    "timestamp": "2015-08-30T12:36:00Z"
        1727  +
}
              \
 No newline at end of file
 1767   1728   
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
 1768   1729   
similarity index 100%
 1769   1730   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 1770   1731   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 1771   1732   
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
 1772   1733   
new file mode 100644
 1773   1734   
index 0000000..f63892b
 1774         -
-- /dev/null
        1735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 1775   1736   
@@ -0,0 +1 @@
        1737  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1776   1738   
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
 1777   1739   
new file mode 100644
 1778   1740   
index 0000000..19cd5cb
 1779         -
-- /dev/null
        1741  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 1780   1742   
@@ -0,0 +1,5 @@
        1743  +
GET /example space/ HTTP/1.1
        1744  +
Host:example.amazonaws.com
        1745  +
X-Amz-Date:20150830T123600Z
        1746  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1747  +
 1781   1748   
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
 1782   1749   
similarity index 100%
 1783   1750   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 1784   1751   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 1785   1752   
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
 1786   1753   
new file mode 100644
 1787   1754   
index 0000000..fa3d3e2
 1788         -
-- /dev/null
        1755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 1789   1756   
@@ -0,0 +1,7 @@
        1757  +
GET
        1758  +
/example%20space/
        1759  +
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
        1760  +
host:example.amazonaws.com
        1761  +
        1762  +
host
        1763  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1790   1764   
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
 1791   1765   
new file mode 100644
 1792   1766   
index 0000000..5b2e204
 1793         -
-- /dev/null
        1767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 1794   1768   
@@ -0,0 +1 @@
        1769  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1795   1770   
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
 1796   1771   
new file mode 100644
 1797   1772   
index 0000000..93ca1d0
 1798         -
-- /dev/null
        1773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 1799   1774   
@@ -0,0 +1,3 @@
        1775  +
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
        1776  +
Host:example.amazonaws.com
        1777  +
 1800   1778   
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
 1801   1779   
new file mode 100644
 1802   1780   
index 0000000..b4cb789
 1803         -
-- /dev/null
        1781  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 1804   1782   
@@ -0,0 +1,4 @@
        1783  +
AWS4-HMAC-SHA256
        1784  +
20150830T123600Z
        1785  +
20150830/us-east-1/service/aws4_request
        1786  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1805   1787   
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
 1806   1788   
new file mode 100644
 1807   1789   
index 0000000..860a277
 1808         -
-- /dev/null
        1790  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 1809   1791   
@@ -0,0 +1,2 @@
        1792  +
GET /example%20space/ HTTP/1.1
        1793  +
Host:example.amazonaws.com
 1810   1794   
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
 1811   1795   
new file mode 100644
 1812   1796   
index 0000000..7bee5c7
 1813         -
-- /dev/null
        1797  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 1814   1798   
@@ -0,0 +1,12 @@
        1799  +
{
        1800  +
    "credentials": {
        1801  +
        "access_key_id": "AKIDEXAMPLE",
        1802  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1803  +
    },
        1804  +
    "expiration_in_seconds": 3600,
        1805  +
    "normalize": false,
        1806  +
    "region": "us-east-1",
        1807  +
    "service": "service",
        1808  +
    "sign_body": false,
        1809  +
    "timestamp": "2015-08-30T12:36:00Z"
        1810  +
}
              \
 No newline at end of file
 1815   1811   
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
 1816   1812   
similarity index 66%
 1817   1813   
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
 1818   1814   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1819   1815   
index 71dc981..124a709 100644
 1820         -
-- 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
        1816  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1821   1817   
@@ -1,9 +1,8 @@
 1822         -
POST
 1823         -
/
        1818  +
GET
        1819  +
/example%20space/
 1824   1820   
 1825         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 1826   1821   
host:example.amazonaws.com
 1827   1822   
x-amz-date:20150830T123600Z
 1828   1823   
 1829   1824   
host;x-amz-date
 1830   1825   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1831   1826   
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
 1832   1827   
new file mode 100644
 1833   1828   
index 0000000..f63892b
 1834         -
-- /dev/null
        1829  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 1835   1830   
@@ -0,0 +1 @@
        1831  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1836   1832   
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
 1837   1833   
new file mode 100644
 1838   1834   
index 0000000..19cd5cb
 1839         -
-- /dev/null
        1835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 1840   1836   
@@ -0,0 +1,5 @@
        1837  +
GET /example space/ HTTP/1.1
        1838  +
Host:example.amazonaws.com
        1839  +
X-Amz-Date:20150830T123600Z
        1840  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1841  +
 1841   1842   
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
 1842   1843   
new file mode 100644
 1843   1844   
index 0000000..a633f0c
 1844         -
-- /dev/null
        1845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 1845   1846   
@@ -0,0 +1,4 @@
        1847  +
AWS4-HMAC-SHA256
        1848  +
20150830T123600Z
        1849  +
20150830/us-east-1/service/aws4_request
        1850  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 1846   1851   
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
 1847   1852   
new file mode 100644
 1848   1853   
index 0000000..fa3d3e2
 1849         -
-- /dev/null
        1854  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 1850   1855   
@@ -0,0 +1,7 @@
        1856  +
GET
        1857  +
/example%20space/
        1858  +
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
        1859  +
host:example.amazonaws.com
        1860  +
        1861  +
host
        1862  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1851   1863   
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
 1852   1864   
new file mode 100644
 1853   1865   
index 0000000..5b2e204
 1854         -
-- /dev/null
        1866  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 1855   1867   
@@ -0,0 +1 @@
        1868  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1856   1869   
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
 1857   1870   
new file mode 100644
 1858   1871   
index 0000000..93ca1d0
 1859         -
-- /dev/null
        1872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 1860   1873   
@@ -0,0 +1,3 @@
        1874  +
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
        1875  +
Host:example.amazonaws.com
        1876  +
 1861   1877   
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
 1862   1878   
new file mode 100644
 1863   1879   
index 0000000..b4cb789
 1864         -
-- /dev/null
        1880  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 1865   1881   
@@ -0,0 +1,4 @@
        1882  +
AWS4-HMAC-SHA256
        1883  +
20150830T123600Z
        1884  +
20150830/us-east-1/service/aws4_request
        1885  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1866   1886   
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
 1867   1887   
similarity index 67%
 1868   1888   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 1869   1889   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1870   1890   
index b7d5e8b..ab509ab 100644
 1871         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        1891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1872   1892   
@@ -1,3 +1,2 @@
 1873   1893   
GET /example space/ HTTP/1.1
 1874   1894   
Host:example.amazonaws.com
 1875         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1876   1895   
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
 1877   1896   
new file mode 100644
 1878   1897   
index 0000000..0468d80
 1879         -
-- /dev/null
        1898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 1880   1899   
@@ -0,0 +1,12 @@
        1900  +
{
        1901  +
    "credentials": {
        1902  +
        "access_key_id": "AKIDEXAMPLE",
        1903  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1904  +
    },
        1905  +
    "expiration_in_seconds": 3600,
        1906  +
    "normalize": true,
        1907  +
    "region": "us-east-1",
        1908  +
    "service": "service",
        1909  +
    "sign_body": false,
        1910  +
    "timestamp": "2015-08-30T12:36:00Z"
        1911  +
}
              \
 No newline at end of file
 1881   1912   
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
 1882   1913   
similarity index 100%
 1883   1914   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 1884   1915   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 1885   1916   
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
 1886   1917   
new file mode 100644
 1887   1918   
index 0000000..e503354
 1888         -
-- /dev/null
        1919  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 1889   1920   
@@ -0,0 +1 @@
        1921  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 1890   1922   
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
 1891   1923   
new file mode 100644
 1892   1924   
index 0000000..4367892
 1893         -
-- /dev/null
        1925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 1894   1926   
@@ -0,0 +1,5 @@
        1927  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        1928  +
Host:example.amazonaws.com
        1929  +
X-Amz-Date:20150830T123600Z
        1930  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        1931  +
 1895   1932   
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
 1896   1933   
similarity index 100%
 1897   1934   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 1898   1935   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 1899   1936   
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
 1900   1937   
new file mode 100644
 1901   1938   
index 0000000..d7f0696
 1902         -
-- /dev/null
        1939  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 1903   1940   
@@ -0,0 +1,7 @@
        1941  +
GET
        1942  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        1943  +
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
        1944  +
host:example.amazonaws.com
        1945  +
        1946  +
host
        1947  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1904   1948   
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
 1905   1949   
new file mode 100644
 1906   1950   
index 0000000..509e972
 1907         -
-- /dev/null
        1951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 1908   1952   
@@ -0,0 +1 @@
        1953  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 1909   1954   
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
 1910   1955   
new file mode 100644
 1911   1956   
index 0000000..79aad36
 1912         -
-- /dev/null
        1957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 1913   1958   
@@ -0,0 +1,3 @@
        1959  +
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
        1960  +
Host:example.amazonaws.com
        1961  +
 1914   1962   
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
 1915   1963   
new file mode 100644
 1916   1964   
index 0000000..e8068b3
 1917         -
-- /dev/null
        1965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 1918   1966   
@@ -0,0 +1,4 @@
        1967  +
AWS4-HMAC-SHA256
        1968  +
20150830T123600Z
        1969  +
20150830/us-east-1/service/aws4_request
        1970  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 1919   1971   
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
 1920   1972   
similarity index 100%
 1921   1973   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 1922   1974   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 1923   1975   
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
 1924   1976   
new file mode 100644
 1925   1977   
index 0000000..0468d80
 1926         -
-- /dev/null
        1978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 1927   1979   
@@ -0,0 +1,12 @@
        1980  +
{
        1981  +
    "credentials": {
        1982  +
        "access_key_id": "AKIDEXAMPLE",
        1983  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1984  +
    },
        1985  +
    "expiration_in_seconds": 3600,
        1986  +
    "normalize": true,
        1987  +
    "region": "us-east-1",
        1988  +
    "service": "service",
        1989  +
    "sign_body": false,
        1990  +
    "timestamp": "2015-08-30T12:36:00Z"
        1991  +
}
              \
 No newline at end of file
 1928   1992   
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
 1929   1993   
similarity index 100%
 1930   1994   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 1931   1995   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 1932   1996   
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
 1933   1997   
new file mode 100644
 1934   1998   
index 0000000..9a13676
 1935         -
-- /dev/null
        1999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 1936   2000   
@@ -0,0 +1 @@
        2001  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 1937   2002   
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
 1938   2003   
new file mode 100644
 1939   2004   
index 0000000..5aaf47c
 1940         -
-- /dev/null
        2005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 1941   2006   
@@ -0,0 +1,5 @@
        2007  +
GET /ሴ HTTP/1.1
        2008  +
Host:example.amazonaws.com
        2009  +
X-Amz-Date:20150830T123600Z
        2010  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2011  +
 1942   2012   
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
 1943   2013   
similarity index 100%
 1944   2014   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 1945   2015   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 1946   2016   
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
 1947   2017   
new file mode 100644
 1948   2018   
index 0000000..bdb77c9
 1949         -
-- /dev/null
        2019  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 1950   2020   
@@ -0,0 +1,7 @@
        2021  +
GET
        2022  +
/%E1%88%B4
        2023  +
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
        2024  +
host:example.amazonaws.com
        2025  +
        2026  +
host
        2027  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1951   2028   
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
 1952   2029   
new file mode 100644
 1953   2030   
index 0000000..21342b3
 1954         -
-- /dev/null
        2031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 1955   2032   
@@ -0,0 +1 @@
        2033  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 1956   2034   
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
 1957   2035   
new file mode 100644
 1958   2036   
index 0000000..368c2ff
 1959         -
-- /dev/null
        2037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 1960   2038   
@@ -0,0 +1,3 @@
        2039  +
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
        2040  +
Host:example.amazonaws.com
        2041  +
 1961   2042   
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
 1962   2043   
new file mode 100644
 1963   2044   
index 0000000..56b8fbf
 1964         -
-- /dev/null
        2045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 1965   2046   
@@ -0,0 +1,4 @@
        2047  +
AWS4-HMAC-SHA256
        2048  +
20150830T123600Z
        2049  +
20150830/us-east-1/service/aws4_request
        2050  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 1966   2051   
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
 1967   2052   
similarity index 62%
 1968   2053   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 1969   2054   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 1970   2055   
index da4808d..9e273f6 100644
 1971         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 1972   2057   
@@ -1,3 +1,2 @@
 1973   2058   
GET /ሴ HTTP/1.1
 1974   2059   
Host:example.amazonaws.com
 1975         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1976   2060   
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
 1977   2061   
new file mode 100644
 1978   2062   
index 0000000..0468d80
 1979         -
-- /dev/null
        2063  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 1980   2064   
@@ -0,0 +1,12 @@
        2065  +
{
        2066  +
    "credentials": {
        2067  +
        "access_key_id": "AKIDEXAMPLE",
        2068  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2069  +
    },
        2070  +
    "expiration_in_seconds": 3600,
        2071  +
    "normalize": true,
        2072  +
    "region": "us-east-1",
        2073  +
    "service": "service",
        2074  +
    "sign_body": false,
        2075  +
    "timestamp": "2015-08-30T12:36:00Z"
        2076  +
}
              \
 No newline at end of file
 1981   2077   
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
 1982   2078   
similarity index 100%
 1983   2079   
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
 1984   2080   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 1985   2081   
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
 1986   2082   
new file mode 100644
 1987   2083   
index 0000000..d7f1c1c
 1988         -
-- /dev/null
        2084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 1989   2085   
@@ -0,0 +1 @@
        2086  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 1990   2087   
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
 1991   2088   
new file mode 100644
 1992   2089   
index 0000000..1c60790
 1993         -
-- /dev/null
        2090  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 1994   2091   
@@ -0,0 +1,5 @@
        2092  +
GET /?Param1=value1 HTTP/1.1
        2093  +
Host:example.amazonaws.com
        2094  +
X-Amz-Date:20150830T123600Z
        2095  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2096  +
 1995   2097   
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
 1996   2098   
similarity index 100%
 1997   2099   
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
 1998   2100   
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
 1999   2101   
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
 2000   2102   
new file mode 100644
 2001   2103   
index 0000000..6a823ed
 2002         -
-- /dev/null
        2104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2003   2105   
@@ -0,0 +1,7 @@
        2106  +
GET
        2107  +
/
        2108  +
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
        2109  +
host:example.amazonaws.com
        2110  +
        2111  +
host
        2112  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2004   2113   
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
 2005   2114   
new file mode 100644
 2006   2115   
index 0000000..8c77136
 2007         -
-- /dev/null
        2116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2008   2117   
@@ -0,0 +1 @@
        2118  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2009   2119   
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
 2010   2120   
new file mode 100644
 2011   2121   
index 0000000..2d337d8
 2012         -
-- /dev/null
        2122  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2013   2123   
@@ -0,0 +1,3 @@
        2124  +
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
        2125  +
Host:example.amazonaws.com
        2126  +
 2014   2127   
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
 2015   2128   
new file mode 100644
 2016   2129   
index 0000000..191a484
 2017         -
-- /dev/null
        2130  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2018   2131   
@@ -0,0 +1,4 @@
        2132  +
AWS4-HMAC-SHA256
        2133  +
20150830T123600Z
        2134  +
20150830/us-east-1/service/aws4_request
        2135  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2019   2136   
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
 2020   2137   
similarity index 100%
 2021   2138   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2022   2139   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2023   2140   
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
 2024   2141   
new file mode 100644
 2025   2142   
index 0000000..0468d80
 2026         -
-- /dev/null
        2143  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2027   2144   
@@ -0,0 +1,12 @@
        2145  +
{
        2146  +
    "credentials": {
        2147  +
        "access_key_id": "AKIDEXAMPLE",
        2148  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2149  +
    },
        2150  +
    "expiration_in_seconds": 3600,
        2151  +
    "normalize": true,
        2152  +
    "region": "us-east-1",
        2153  +
    "service": "service",
        2154  +
    "sign_body": false,
        2155  +
    "timestamp": "2015-08-30T12:36:00Z"
        2156  +
}
              \
 No newline at end of file
 2028   2157   
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
 2029   2158   
new file mode 100644
 2030   2159   
index 0000000..0c8ba21
 2031         -
-- /dev/null
        2160  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2032   2161   
@@ -0,0 +1,8 @@
        2162  +
GET
        2163  +
/
        2164  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2165  +
host:example.amazonaws.com
        2166  +
x-amz-date:20150830T123600Z
        2167  +
        2168  +
host;x-amz-date
        2169  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2033   2170   
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
 2034   2171   
new file mode 100644
 2035   2172   
index 0000000..9ab65ed
 2036         -
-- /dev/null
        2173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2037   2174   
@@ -0,0 +1 @@
        2175  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2038   2176   
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
 2039   2177   
new file mode 100644
 2040   2178   
index 0000000..0bcdf98
 2041         -
-- /dev/null
        2179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2042   2180   
@@ -0,0 +1,5 @@
        2181  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2182  +
Host:example.amazonaws.com
        2183  +
X-Amz-Date:20150830T123600Z
        2184  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2185  +
 2043   2186   
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
 2044   2187   
new file mode 100644
 2045   2188   
index 0000000..bf674ad
 2046         -
-- /dev/null
        2189  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2047   2190   
@@ -0,0 +1,4 @@
        2191  +
AWS4-HMAC-SHA256
        2192  +
20150830T123600Z
        2193  +
20150830/us-east-1/service/aws4_request
        2194  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2048   2195   
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
 2049   2196   
new file mode 100644
 2050   2197   
index 0000000..3f590a4
 2051         -
-- /dev/null
        2198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2052   2199   
@@ -0,0 +1,7 @@
        2200  +
GET
        2201  +
/
        2202  +
%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
        2203  +
host:example.amazonaws.com
        2204  +
        2205  +
host
        2206  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2053   2207   
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
 2054   2208   
new file mode 100644
 2055   2209   
index 0000000..e225eab
 2056         -
-- /dev/null
        2210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2057   2211   
@@ -0,0 +1 @@
        2212  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2058   2213   
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
 2059   2214   
new file mode 100644
 2060   2215   
index 0000000..6206719
 2061         -
-- /dev/null
        2216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2062   2217   
@@ -0,0 +1,3 @@
        2218  +
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
        2219  +
Host:example.amazonaws.com
        2220  +
 2063   2221   
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
 2064   2222   
new file mode 100644
 2065   2223   
index 0000000..81a4210
 2066         -
-- /dev/null
        2224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2067   2225   
@@ -0,0 +1,4 @@
        2226  +
AWS4-HMAC-SHA256
        2227  +
20150830T123600Z
        2228  +
20150830/us-east-1/service/aws4_request
        2229  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2068   2230   
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
 2069   2231   
new file mode 100644
 2070   2232   
index 0000000..368c6e3
 2071         -
-- /dev/null
        2233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2072   2234   
@@ -0,0 +1,2 @@
        2235  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2236  +
Host:example.amazonaws.com
 2073   2237   
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
 2074   2238   
new file mode 100644
 2075   2239   
index 0000000..0468d80
 2076         -
-- /dev/null
        2240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2077   2241   
@@ -0,0 +1,12 @@
        2242  +
{
        2243  +
    "credentials": {
        2244  +
        "access_key_id": "AKIDEXAMPLE",
        2245  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2246  +
    },
        2247  +
    "expiration_in_seconds": 3600,
        2248  +
    "normalize": true,
        2249  +
    "region": "us-east-1",
        2250  +
    "service": "service",
        2251  +
    "sign_body": false,
        2252  +
    "timestamp": "2015-08-30T12:36:00Z"
        2253  +
}
              \
 No newline at end of file
 2078   2254   
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
 2079   2255   
similarity index 100%
 2080   2256   
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
 2081   2257   
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
 2082   2258   
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
 2083   2259   
new file mode 100644
 2084   2260   
index 0000000..6a8cb9d
 2085         -
-- /dev/null
        2261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2086   2262   
@@ -0,0 +1 @@
        2263  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2087   2264   
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
 2088   2265   
new file mode 100644
 2089   2266   
index 0000000..f78a9d2
 2090         -
-- /dev/null
        2267  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2091   2268   
@@ -0,0 +1,5 @@
        2269  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2270  +
Host:example.amazonaws.com
        2271  +
X-Amz-Date:20150830T123600Z
        2272  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2273  +
 2092   2274   
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
 2093   2275   
similarity index 100%
 2094   2276   
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
 2095   2277   
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
 2096   2278   
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
 2097   2279   
new file mode 100644
 2098   2280   
index 0000000..a6e1bc7
 2099         -
-- /dev/null
        2281  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2100   2282   
@@ -0,0 +1,7 @@
        2283  +
GET
        2284  +
/
        2285  +
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
        2286  +
host:example.amazonaws.com
        2287  +
        2288  +
host
        2289  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2101   2290   
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
 2102   2291   
new file mode 100644
 2103   2292   
index 0000000..d6e6a88
 2104         -
-- /dev/null
        2293  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2105   2294   
@@ -0,0 +1 @@
        2295  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2106   2296   
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
 2107   2297   
new file mode 100644
 2108   2298   
index 0000000..538e2f0
 2109         -
-- /dev/null
        2299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2110   2300   
@@ -0,0 +1,3 @@
        2301  +
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
        2302  +
Host:example.amazonaws.com
        2303  +
 2111   2304   
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
 2112   2305   
new file mode 100644
 2113   2306   
index 0000000..e696085
 2114         -
-- /dev/null
        2307  +
++ 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
 2115   2308   
@@ -0,0 +1,4 @@
        2309  +
AWS4-HMAC-SHA256
        2310  +
20150830T123600Z
        2311  +
20150830/us-east-1/service/aws4_request
        2312  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2116   2313   
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
 2117   2314   
similarity index 100%
 2118   2315   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2119   2316   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2120   2317   
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
 2121   2318   
new file mode 100644
 2122   2319   
index 0000000..0468d80
 2123         -
-- /dev/null
        2320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2124   2321   
@@ -0,0 +1,12 @@
        2322  +
{
        2323  +
    "credentials": {
        2324  +
        "access_key_id": "AKIDEXAMPLE",
        2325  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2326  +
    },
        2327  +
    "expiration_in_seconds": 3600,
        2328  +
    "normalize": true,
        2329  +
    "region": "us-east-1",
        2330  +
    "service": "service",
        2331  +
    "sign_body": false,
        2332  +
    "timestamp": "2015-08-30T12:36:00Z"
        2333  +
}
              \
 No newline at end of file
 2125   2334   
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
 2126   2335   
similarity index 100%
 2127   2336   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2128   2337   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2129   2338   
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
 2130   2339   
new file mode 100644
 2131   2340   
index 0000000..876a64b
 2132         -
-- /dev/null
        2341  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2133   2342   
@@ -0,0 +1 @@
        2343  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2134   2344   
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
 2135   2345   
similarity index 50%
 2136   2346   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2137   2347   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2138   2348   
index ba1ef40..9d0d993 100644
 2139         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2349  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2140   2350   
@@ -1,4 +1,5 @@
 2141   2351   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2142   2352   
Host:example.amazonaws.com
 2143   2353   
X-Amz-Date:20150830T123600Z
 2144         -
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
        2354  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2355  +
 2145   2356   
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
 2146   2357   
similarity index 100%
 2147   2358   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2148   2359   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2149   2360   
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
 2150   2361   
new file mode 100644
 2151   2362   
index 0000000..a1bac59
 2152         -
-- /dev/null
        2363  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2153   2364   
@@ -0,0 +1,7 @@
        2365  +
GET
        2366  +
/
        2367  +
-._~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
        2368  +
host:example.amazonaws.com
        2369  +
        2370  +
host
        2371  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2154   2372   
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
 2155   2373   
new file mode 100644
 2156   2374   
index 0000000..41881e9
 2157         -
-- /dev/null
        2375  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2158   2376   
@@ -0,0 +1 @@
        2377  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2159   2378   
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
 2160   2379   
new file mode 100644
 2161   2380   
index 0000000..3179076
 2162         -
-- /dev/null
        2381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2163   2382   
@@ -0,0 +1,3 @@
        2383  +
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
        2384  +
Host:example.amazonaws.com
        2385  +
 2164   2386   
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
 2165   2387   
new file mode 100644
 2166   2388   
index 0000000..6d675fc
 2167         -
-- /dev/null
        2389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2168   2390   
@@ -0,0 +1,4 @@
        2391  +
AWS4-HMAC-SHA256
        2392  +
20150830T123600Z
        2393  +
20150830/us-east-1/service/aws4_request
        2394  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2169   2395   
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
 2170   2396   
similarity index 100%
 2171   2397   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2172   2398   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2173   2399   
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
 2174   2400   
new file mode 100644
 2175   2401   
index 0000000..0468d80
 2176         -
-- /dev/null
        2402  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2177   2403   
@@ -0,0 +1,12 @@
        2404  +
{
        2405  +
    "credentials": {
        2406  +
        "access_key_id": "AKIDEXAMPLE",
        2407  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2408  +
    },
        2409  +
    "expiration_in_seconds": 3600,
        2410  +
    "normalize": true,
        2411  +
    "region": "us-east-1",
        2412  +
    "service": "service",
        2413  +
    "sign_body": false,
        2414  +
    "timestamp": "2015-08-30T12:36:00Z"
        2415  +
}
              \
 No newline at end of file
 2178   2416   
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
 2179   2417   
similarity index 100%
 2180   2418   
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
 2181   2419   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2182   2420   
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
 2183   2421   
new file mode 100644
 2184   2422   
index 0000000..87f295f
 2185         -
-- /dev/null
        2423  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2186   2424   
@@ -0,0 +1 @@
        2425  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2187   2426   
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
 2188   2427   
new file mode 100644
 2189   2428   
index 0000000..36b86e7
 2190         -
-- /dev/null
        2429  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2191   2430   
@@ -0,0 +1,5 @@
        2431  +
GET / HTTP/1.1
        2432  +
Host:example.amazonaws.com
        2433  +
X-Amz-Date:20150830T123600Z
        2434  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2435  +
 2192   2436   
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
 2193   2437   
similarity index 100%
 2194   2438   
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
 2195   2439   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2196   2440   
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
 2197   2441   
new file mode 100644
 2198   2442   
index 0000000..fb2420d
 2199         -
-- /dev/null
        2443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2200   2444   
@@ -0,0 +1,7 @@
        2445  +
GET
        2446  +
/
        2447  +
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
        2448  +
host:example.amazonaws.com
        2449  +
        2450  +
host
        2451  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2201   2452   
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
 2202   2453   
new file mode 100644
 2203   2454   
index 0000000..da5c905
 2204         -
-- /dev/null
        2455  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2205   2456   
@@ -0,0 +1 @@
        2457  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2206   2458   
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
 2207   2459   
new file mode 100644
 2208   2460   
index 0000000..eeb7a8f
 2209         -
-- /dev/null
        2461  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2210   2462   
@@ -0,0 +1,3 @@
        2463  +
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
        2464  +
Host:example.amazonaws.com
        2465  +
 2211   2466   
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
 2212   2467   
new file mode 100644
 2213   2468   
index 0000000..d837e67
 2214         -
-- /dev/null
        2469  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2215   2470   
@@ -0,0 +1,4 @@
        2471  +
AWS4-HMAC-SHA256
        2472  +
20150830T123600Z
        2473  +
20150830/us-east-1/service/aws4_request
        2474  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2216   2475   
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
 2217   2476   
similarity index 100%
 2218   2477   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2219   2478   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2220   2479   
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
 2221   2480   
new file mode 100644
 2222   2481   
index 0000000..0468d80
 2223         -
-- /dev/null
        2482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2224   2483   
@@ -0,0 +1,12 @@
        2484  +
{
        2485  +
    "credentials": {
        2486  +
        "access_key_id": "AKIDEXAMPLE",
        2487  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2488  +
    },
        2489  +
    "expiration_in_seconds": 3600,
        2490  +
    "normalize": true,
        2491  +
    "region": "us-east-1",
        2492  +
    "service": "service",
        2493  +
    "sign_body": false,
        2494  +
    "timestamp": "2015-08-30T12:36:00Z"
        2495  +
}
              \
 No newline at end of file
 2225   2496   
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
 2226   2497   
similarity index 100%
 2227   2498   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2228   2499   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2229   2500   
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
 2230   2501   
new file mode 100644
 2231   2502   
index 0000000..19a2cc9
 2232         -
-- /dev/null
        2503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2233   2504   
@@ -0,0 +1 @@
        2505  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2234   2506   
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
 2235   2507   
new file mode 100644
 2236   2508   
index 0000000..acb13ee
 2237         -
-- /dev/null
        2509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2238   2510   
@@ -0,0 +1,5 @@
        2511  +
GET /?ሴ=bar HTTP/1.1
        2512  +
Host:example.amazonaws.com
        2513  +
X-Amz-Date:20150830T123600Z
        2514  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2515  +
 2239   2516   
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
 2240   2517   
similarity index 100%
 2241   2518   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2242   2519   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2243   2520   
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
 2244   2521   
new file mode 100644
 2245   2522   
index 0000000..92cee62
 2246         -
-- /dev/null
        2523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2247   2524   
@@ -0,0 +1,7 @@
        2525  +
GET
        2526  +
/
        2527  +
%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
        2528  +
host:example.amazonaws.com
        2529  +
        2530  +
host
        2531  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2248   2532   
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
 2249   2533   
new file mode 100644
 2250   2534   
index 0000000..c9e49de
 2251         -
-- /dev/null
        2535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2252   2536   
@@ -0,0 +1 @@
        2537  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2253   2538   
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
 2254   2539   
new file mode 100644
 2255   2540   
index 0000000..8f4d8d0
 2256         -
-- /dev/null
        2541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2257   2542   
@@ -0,0 +1,3 @@
        2543  +
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
        2544  +
Host:example.amazonaws.com
        2545  +
 2258   2546   
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
 2259   2547   
new file mode 100644
 2260   2548   
index 0000000..a6181dc
 2261         -
-- /dev/null
        2549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2262   2550   
@@ -0,0 +1,4 @@
        2551  +
AWS4-HMAC-SHA256
        2552  +
20150830T123600Z
        2553  +
20150830/us-east-1/service/aws4_request
        2554  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2263   2555   
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
 2264   2556   
similarity index 64%
 2265   2557   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2266   2558   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2267   2559   
index cc2757e..aff333a 100644
 2268         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2269   2561   
@@ -1,3 +1,2 @@
 2270   2562   
GET /?ሴ=bar HTTP/1.1
 2271   2563   
Host:example.amazonaws.com
 2272         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2273   2564   
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
 2274   2565   
similarity index 99%
 2275   2566   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2276   2567   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2277   2568   
index a457c8a..a334e18 100644
 2278         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
        2569  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2279   2570   
@@ -1,13 +1,13 @@
 2280   2571   
{
 2281   2572   
    "credentials": {
 2282   2573   
        "access_key_id": "AKIDEXAMPLE",
 2283   2574   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
 2284   2575   
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
 2285   2576   
    },
 2286   2577   
    "expiration_in_seconds": 3600,
 2287   2578   
    "normalize": true,
 2288   2579   
    "region": "us-east-1",
 2289   2580   
    "service": "service",
 2290   2581   
    "sign_body": false,
 2291   2582   
    "timestamp": "2015-08-30T12:36:00Z"
 2292         -
}
        2583  +
}
              \
 No newline at end of file
 2293   2584   
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
 2294   2585   
new file mode 100644
 2295   2586   
index 0000000..ccacdeb
 2296         -
-- /dev/null
        2587  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2297   2588   
@@ -0,0 +1,9 @@
        2589  +
GET
        2590  +
/
        2591  +
        2592  +
host:example.amazonaws.com
        2593  +
x-amz-date:20150830T123600Z
        2594  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2595  +
        2596  +
host;x-amz-date;x-amz-security-token
        2597  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2298   2598   
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
 2299   2599   
new file mode 100644
 2300   2600   
index 0000000..083e30d
 2301         -
-- /dev/null
        2601  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2302   2602   
@@ -0,0 +1 @@
        2603  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2303   2604   
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
 2304   2605   
new file mode 100644
 2305   2606   
index 0000000..5287932
 2306         -
-- /dev/null
        2607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2307   2608   
@@ -0,0 +1,6 @@
        2609  +
GET / HTTP/1.1
        2610  +
Host:example.amazonaws.com
        2611  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2612  +
X-Amz-Date:20150830T123600Z
        2613  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2614  +
 2308   2615   
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
 2309   2616   
new file mode 100644
 2310   2617   
index 0000000..742b880
 2311         -
-- /dev/null
        2618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2312   2619   
@@ -0,0 +1,4 @@
        2620  +
AWS4-HMAC-SHA256
        2621  +
20150830T123600Z
        2622  +
20150830/us-east-1/service/aws4_request
        2623  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2313   2624   
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
 2314   2625   
new file mode 100644
 2315   2626   
index 0000000..5e75179
 2316         -
-- /dev/null
        2627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2317   2628   
@@ -0,0 +1,7 @@
        2629  +
GET
        2630  +
/
        2631  +
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
        2632  +
host:example.amazonaws.com
        2633  +
        2634  +
host
        2635  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2318   2636   
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
 2319   2637   
new file mode 100644
 2320   2638   
index 0000000..50b947f
 2321         -
-- /dev/null
        2639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2322   2640   
@@ -0,0 +1 @@
        2641  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2323   2642   
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
 2324   2643   
new file mode 100644
 2325   2644   
index 0000000..aee910b
 2326         -
-- /dev/null
        2645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2327   2646   
@@ -0,0 +1,3 @@
        2647  +
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
        2648  +
Host:example.amazonaws.com
        2649  +
 2328   2650   
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
 2329   2651   
new file mode 100644
 2330   2652   
index 0000000..04a6c17
 2331         -
-- /dev/null
        2653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2332   2654   
@@ -0,0 +1,4 @@
        2655  +
AWS4-HMAC-SHA256
        2656  +
20150830T123600Z
        2657  +
20150830/us-east-1/service/aws4_request
        2658  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2333   2659   
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
 2334   2660   
similarity index 100%
 2335   2661   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2336   2662   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2337   2663   
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
 2338   2664   
new file mode 100644
 2339   2665   
index 0000000..0468d80
 2340         -
-- /dev/null
        2666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2341   2667   
@@ -0,0 +1,12 @@
        2668  +
{
        2669  +
    "credentials": {
        2670  +
        "access_key_id": "AKIDEXAMPLE",
        2671  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2672  +
    },
        2673  +
    "expiration_in_seconds": 3600,
        2674  +
    "normalize": true,
        2675  +
    "region": "us-east-1",
        2676  +
    "service": "service",
        2677  +
    "sign_body": false,
        2678  +
    "timestamp": "2015-08-30T12:36:00Z"
        2679  +
}
              \
 No newline at end of file
 2342   2680   
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
 2343   2681   
similarity index 100%
 2344   2682   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2345   2683   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2346   2684   
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
 2347   2685   
new file mode 100644
 2348   2686   
index 0000000..87f295f
 2349         -
-- /dev/null
        2687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2350   2688   
@@ -0,0 +1 @@
        2689  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2351   2690   
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
 2352   2691   
new file mode 100644
 2353   2692   
index 0000000..36b86e7
 2354         -
-- /dev/null
        2693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2355   2694   
@@ -0,0 +1,5 @@
        2695  +
GET / HTTP/1.1
        2696  +
Host:example.amazonaws.com
        2697  +
X-Amz-Date:20150830T123600Z
        2698  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2699  +
 2356   2700   
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
 2357   2701   
similarity index 100%
 2358   2702   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2359   2703   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2360   2704   
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
 2361   2705   
new file mode 100644
 2362   2706   
index 0000000..fb2420d
 2363         -
-- /dev/null
        2707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2364   2708   
@@ -0,0 +1,7 @@
        2709  +
GET
        2710  +
/
        2711  +
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
        2712  +
host:example.amazonaws.com
        2713  +
        2714  +
host
        2715  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2365   2716   
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
 2366   2717   
new file mode 100644
 2367   2718   
index 0000000..da5c905
 2368         -
-- /dev/null
        2719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2369   2720   
@@ -0,0 +1 @@
        2721  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2370   2722   
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
 2371   2723   
new file mode 100644
 2372   2724   
index 0000000..eeb7a8f
 2373         -
-- /dev/null
        2725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2374   2726   
@@ -0,0 +1,3 @@
        2727  +
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
        2728  +
Host:example.amazonaws.com
        2729  +
 2375   2730   
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
 2376   2731   
new file mode 100644
 2377   2732   
index 0000000..d837e67
 2378         -
-- /dev/null
        2733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2379   2734   
@@ -0,0 +1,4 @@
        2735  +
AWS4-HMAC-SHA256
        2736  +
20150830T123600Z
        2737  +
20150830/us-east-1/service/aws4_request
        2738  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2380   2739   
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
 2381   2740   
similarity index 100%
 2382   2741   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2383   2742   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2384   2743   
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
 2385   2744   
new file mode 100644
 2386   2745   
index 0000000..0468d80
 2387         -
-- /dev/null
        2746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2388   2747   
@@ -0,0 +1,12 @@
        2748  +
{
        2749  +
    "credentials": {
        2750  +
        "access_key_id": "AKIDEXAMPLE",
        2751  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2752  +
    },
        2753  +
    "expiration_in_seconds": 3600,
        2754  +
    "normalize": true,
        2755  +
    "region": "us-east-1",
        2756  +
    "service": "service",
        2757  +
    "sign_body": false,
        2758  +
    "timestamp": "2015-08-30T12:36:00Z"
        2759  +
}
              \
 No newline at end of file
 2389   2760   
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
 2390   2761   
similarity index 100%
 2391   2762   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2392   2763   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2393   2764   
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
 2394   2765   
new file mode 100644
 2395   2766   
index 0000000..629487f
 2396         -
-- /dev/null
        2767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2397   2768   
@@ -0,0 +1 @@
        2769  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2398   2770   
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
 2399   2771   
new file mode 100644
 2400   2772   
index 0000000..0d99b1c
 2401         -
-- /dev/null
        2773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2402   2774   
@@ -0,0 +1,5 @@
        2775  +
POST / HTTP/1.1
        2776  +
Host:example.amazonaws.com
        2777  +
X-Amz-Date:20150830T123600Z
        2778  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2779  +
 2403   2780   
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
 2404   2781   
similarity index 100%
 2405   2782   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2406   2783   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2407   2784   
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
 2408   2785   
new file mode 100644
 2409   2786   
index 0000000..d3341e7
 2410         -
-- /dev/null
        2787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2411   2788   
@@ -0,0 +1,7 @@
        2789  +
POST
        2790  +
/
        2791  +
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
        2792  +
host:example.amazonaws.com
        2793  +
        2794  +
host
        2795  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2412   2796   
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
 2413   2797   
new file mode 100644
 2414   2798   
index 0000000..79f7e0d
 2415         -
-- /dev/null
        2799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2416   2800   
@@ -0,0 +1 @@
        2801  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2417   2802   
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
 2418   2803   
new file mode 100644
 2419   2804   
index 0000000..94f1b21
 2420         -
-- /dev/null
        2805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2421   2806   
@@ -0,0 +1,3 @@
        2807  +
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
        2808  +
Host:example.amazonaws.com
        2809  +
 2422   2810   
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
 2423   2811   
new file mode 100644
 2424   2812   
index 0000000..e8f335b
 2425         -
-- /dev/null
        2813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2426   2814   
@@ -0,0 +1,4 @@
        2815  +
AWS4-HMAC-SHA256
        2816  +
20150830T123600Z
        2817  +
20150830/us-east-1/service/aws4_request
        2818  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2427   2819   
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
 2428   2820   
similarity index 100%
 2429   2821   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2430   2822   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2431   2823   
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
 2432   2824   
new file mode 100644
 2433   2825   
index 0000000..0468d80
 2434         -
-- /dev/null
        2826  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2435   2827   
@@ -0,0 +1,12 @@
        2828  +
{
        2829  +
    "credentials": {
        2830  +
        "access_key_id": "AKIDEXAMPLE",
        2831  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2832  +
    },
        2833  +
    "expiration_in_seconds": 3600,
        2834  +
    "normalize": true,
        2835  +
    "region": "us-east-1",
        2836  +
    "service": "service",
        2837  +
    "sign_body": false,
        2838  +
    "timestamp": "2015-08-30T12:36:00Z"
        2839  +
}
              \
 No newline at end of file
 2436   2840   
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
 2437   2841   
similarity index 100%
 2438   2842   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2439   2843   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2440   2844   
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
 2441   2845   
new file mode 100644
 2442   2846   
index 0000000..e4e6428
 2443         -
-- /dev/null
        2847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2444   2848   
@@ -0,0 +1 @@
        2849  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2445   2850   
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
 2446   2851   
new file mode 100644
 2447   2852   
index 0000000..e3778f5
 2448         -
-- /dev/null
        2853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2449   2854   
@@ -0,0 +1,6 @@
        2855  +
POST / HTTP/1.1
        2856  +
Host:example.amazonaws.com
        2857  +
My-Header1:value1
        2858  +
X-Amz-Date:20150830T123600Z
        2859  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2860  +
 2450   2861   
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
 2451   2862   
similarity index 100%
 2452   2863   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2453   2864   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2454   2865   
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
 2455   2866   
new file mode 100644
 2456   2867   
index 0000000..bd7c937
 2457         -
-- /dev/null
        2868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2458   2869   
@@ -0,0 +1,8 @@
        2870  +
POST
        2871  +
/
        2872  +
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
        2873  +
host:example.amazonaws.com
        2874  +
my-header1:value1
        2875  +
        2876  +
host;my-header1
        2877  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2459   2878   
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
 2460   2879   
new file mode 100644
 2461   2880   
index 0000000..0416f13
 2462         -
-- /dev/null
        2881  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2463   2882   
@@ -0,0 +1 @@
        2883  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2464   2884   
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
 2465   2885   
new file mode 100644
 2466   2886   
index 0000000..5e6522f
 2467         -
-- /dev/null
        2887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2468   2888   
@@ -0,0 +1,4 @@
        2889  +
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
        2890  +
Host:example.amazonaws.com
        2891  +
My-Header1:value1
        2892  +
 2469   2893   
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
 2470   2894   
new file mode 100644
 2471   2895   
index 0000000..d06d1df
 2472         -
-- /dev/null
        2896  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2473   2897   
@@ -0,0 +1,4 @@
        2898  +
AWS4-HMAC-SHA256
        2899  +
20150830T123600Z
        2900  +
20150830/us-east-1/service/aws4_request
        2901  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2474   2902   
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
 2475   2903   
similarity index 100%
 2476   2904   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2477   2905   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2478   2906   
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
 2479   2907   
new file mode 100644
 2480   2908   
index 0000000..0468d80
 2481         -
-- /dev/null
        2909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2482   2910   
@@ -0,0 +1,12 @@
        2911  +
{
        2912  +
    "credentials": {
        2913  +
        "access_key_id": "AKIDEXAMPLE",
        2914  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2915  +
    },
        2916  +
    "expiration_in_seconds": 3600,
        2917  +
    "normalize": true,
        2918  +
    "region": "us-east-1",
        2919  +
    "service": "service",
        2920  +
    "sign_body": false,
        2921  +
    "timestamp": "2015-08-30T12:36:00Z"
        2922  +
}
              \
 No newline at end of file
 2483   2923   
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
 2484   2924   
similarity index 100%
 2485   2925   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2486   2926   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2487   2927   
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
 2488   2928   
new file mode 100644
 2489   2929   
index 0000000..bb3809c
 2490         -
-- /dev/null
        2930  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2491   2931   
@@ -0,0 +1 @@
        2932  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2492   2933   
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
 2493   2934   
new file mode 100644
 2494   2935   
index 0000000..10f6761
 2495         -
-- /dev/null
        2936  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2496   2937   
@@ -0,0 +1,6 @@
        2938  +
POST / HTTP/1.1
        2939  +
Host:example.amazonaws.com
        2940  +
My-Header1:VALUE1
        2941  +
X-Amz-Date:20150830T123600Z
        2942  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        2943  +
 2497   2944   
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
 2498   2945   
similarity index 100%
 2499   2946   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2500   2947   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2501   2948   
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
 2502   2949   
new file mode 100644
 2503   2950   
index 0000000..f84856f
 2504         -
-- /dev/null
        2951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2505   2952   
@@ -0,0 +1,8 @@
        2953  +
POST
        2954  +
/
        2955  +
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
        2956  +
host:example.amazonaws.com
        2957  +
my-header1:VALUE1
        2958  +
        2959  +
host;my-header1
        2960  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2506   2961   
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
 2507   2962   
new file mode 100644
 2508   2963   
index 0000000..a9d3cac
 2509         -
-- /dev/null
        2964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2510   2965   
@@ -0,0 +1 @@
        2966  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2511   2967   
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
 2512   2968   
new file mode 100644
 2513   2969   
index 0000000..cf96c7c
 2514         -
-- /dev/null
        2970  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2515   2971   
@@ -0,0 +1,4 @@
        2972  +
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
        2973  +
Host:example.amazonaws.com
        2974  +
My-Header1:VALUE1
        2975  +
 2516   2976   
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
 2517   2977   
new file mode 100644
 2518   2978   
index 0000000..47ef566
 2519         -
-- /dev/null
        2979  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2520   2980   
@@ -0,0 +1,4 @@
        2981  +
AWS4-HMAC-SHA256
        2982  +
20150830T123600Z
        2983  +
20150830/us-east-1/service/aws4_request
        2984  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2521   2985   
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
 2522   2986   
similarity index 100%
 2523   2987   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2524   2988   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2525   2989   
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
 2526   2990   
similarity index 100%
 2527   2991   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2528   2992   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2529   2993   
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
 2530   2994   
similarity index 100%
 2531   2995   
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
 2532   2996   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2533   2997   
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
 2534   2998   
new file mode 100644
 2535   2999   
index 0000000..629487f
 2536         -
-- /dev/null
        3000  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2537   3001   
@@ -0,0 +1 @@
        3002  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2538   3003   
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
 2539   3004   
similarity index 67%
 2540   3005   
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
 2541   3006   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2542   3007   
index 291ed07..f96ff9e 100644
 2543         -
-- 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
        3008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2544   3009   
@@ -1,5 +1,6 @@
 2545   3010   
POST / HTTP/1.1
 2546   3011   
Host:example.amazonaws.com
 2547         -
X-Amz-Date:20150830T123600Z
 2548   3012   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2549         -
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
        3013  +
X-Amz-Date:20150830T123600Z
        3014  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3015  +
 2550   3016   
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
 2551   3017   
similarity index 100%
 2552   3018   
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
 2553   3019   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2554   3020   
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
 2555   3021   
new file mode 100644
 2556   3022   
index 0000000..d3341e7
 2557         -
-- /dev/null
        3023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2558   3024   
@@ -0,0 +1,7 @@
        3025  +
POST
        3026  +
/
        3027  +
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
        3028  +
host:example.amazonaws.com
        3029  +
        3030  +
host
        3031  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2559   3032   
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
 2560   3033   
new file mode 100644
 2561   3034   
index 0000000..79f7e0d
 2562         -
-- /dev/null
        3035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2563   3036   
@@ -0,0 +1 @@
        3037  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2564   3038   
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
 2565   3039   
new file mode 100644
 2566   3040   
index 0000000..4983268
 2567         -
-- /dev/null
        3041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2568   3042   
@@ -0,0 +1,3 @@
        3043  +
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
        3044  +
Host:example.amazonaws.com
        3045  +
 2569   3046   
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
 2570   3047   
new file mode 100644
 2571   3048   
index 0000000..e8f335b
 2572         -
-- /dev/null
        3049  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2573   3050   
@@ -0,0 +1,4 @@
        3051  +
AWS4-HMAC-SHA256
        3052  +
20150830T123600Z
        3053  +
20150830/us-east-1/service/aws4_request
        3054  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2574   3055   
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
 2575   3056   
similarity index 100%
 2576   3057   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2577   3058   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2578   3059   
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
 2579   3060   
similarity index 100%
 2580   3061   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2581   3062   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2582   3063   
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
 2583   3064   
similarity index 100%
 2584   3065   
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
 2585   3066   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2586   3067   
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
 2587   3068   
new file mode 100644
 2588   3069   
index 0000000..85a7c29
 2589         -
-- /dev/null
        3070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2590   3071   
@@ -0,0 +1 @@
        3072  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2591   3073   
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
 2592   3074   
similarity index 65%
 2593   3075   
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
 2594   3076   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2595   3077   
index 37b2f04..4d0b143 100644
 2596         -
-- 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
        3078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2597   3079   
@@ -1,5 +1,6 @@
 2598   3080   
POST / HTTP/1.1
 2599   3081   
Host:example.amazonaws.com
 2600         -
X-Amz-Date:20150830T123600Z
 2601   3082   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2602         -
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
        3083  +
X-Amz-Date:20150830T123600Z
        3084  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3085  +
 2603   3086   
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
 2604   3087   
similarity index 100%
 2605   3088   
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
 2606   3089   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2607   3090   
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
 2608   3091   
new file mode 100644
 2609   3092   
index 0000000..57a7bc3
 2610         -
-- /dev/null
        3093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2611   3094   
@@ -0,0 +1,7 @@
        3095  +
POST
        3096  +
/
        3097  +
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
        3098  +
host:example.amazonaws.com
        3099  +
        3100  +
host
        3101  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2612   3102   
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
 2613   3103   
new file mode 100644
 2614   3104   
index 0000000..eb905d2
 2615         -
-- /dev/null
        3105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2616   3106   
@@ -0,0 +1 @@
        3107  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2617   3108   
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
 2618   3109   
new file mode 100644
 2619   3110   
index 0000000..1d80ec0
 2620         -
-- /dev/null
        3111  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2621   3112   
@@ -0,0 +1,3 @@
        3113  +
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
        3114  +
Host:example.amazonaws.com
        3115  +
 2622   3116   
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
 2623   3117   
new file mode 100644
 2624   3118   
index 0000000..bd0239a
 2625         -
-- /dev/null
        3119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2626   3120   
@@ -0,0 +1,4 @@
        3121  +
AWS4-HMAC-SHA256
        3122  +
20150830T123600Z
        3123  +
20150830/us-east-1/service/aws4_request
        3124  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2627   3125   
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
 2628   3126   
similarity index 100%
 2629   3127   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2630   3128   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2631   3129   
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
 2632   3130   
new file mode 100644
 2633   3131   
index 0000000..0468d80
 2634         -
-- /dev/null
        3132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2635   3133   
@@ -0,0 +1,12 @@
        3134  +
{
        3135  +
    "credentials": {
        3136  +
        "access_key_id": "AKIDEXAMPLE",
        3137  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3138  +
    },
        3139  +
    "expiration_in_seconds": 3600,
        3140  +
    "normalize": true,
        3141  +
    "region": "us-east-1",
        3142  +
    "service": "service",
        3143  +
    "sign_body": false,
        3144  +
    "timestamp": "2015-08-30T12:36:00Z"
        3145  +
}
              \
 No newline at end of file
 2636   3146   
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
 2637   3147   
similarity index 100%
 2638   3148   
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
 2639   3149   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2640   3150   
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
 2641   3151   
new file mode 100644
 2642   3152   
index 0000000..80ed433
 2643         -
-- /dev/null
        3153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2644   3154   
@@ -0,0 +1 @@
        3155  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2645   3156   
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
 2646   3157   
new file mode 100644
 2647   3158   
index 0000000..4e614f8
 2648         -
-- /dev/null
        3159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2649   3160   
@@ -0,0 +1,5 @@
        3161  +
POST /?Param1=value1 HTTP/1.1
        3162  +
Host:example.amazonaws.com
        3163  +
X-Amz-Date:20150830T123600Z
        3164  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3165  +
 2650   3166   
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
 2651   3167   
similarity index 100%
 2652   3168   
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
 2653   3169   
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
 2654   3170   
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
 2655   3171   
new file mode 100644
 2656   3172   
index 0000000..be66403
 2657         -
-- /dev/null
        3173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2658   3174   
@@ -0,0 +1,7 @@
        3175  +
POST
        3176  +
/
        3177  +
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
        3178  +
host:example.amazonaws.com
        3179  +
        3180  +
host
        3181  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2659   3182   
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
 2660   3183   
new file mode 100644
 2661   3184   
index 0000000..20fd32b
 2662         -
-- /dev/null
        3185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2663   3186   
@@ -0,0 +1 @@
        3187  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2664   3188   
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
 2665   3189   
new file mode 100644
 2666   3190   
index 0000000..d1148d0
 2667         -
-- /dev/null
        3191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2668   3192   
@@ -0,0 +1,3 @@
        3193  +
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
        3194  +
Host:example.amazonaws.com
        3195  +
 2669   3196   
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
 2670   3197   
new file mode 100644
 2671   3198   
index 0000000..1a77103
 2672         -
-- /dev/null
        3199  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2673   3200   
@@ -0,0 +1,4 @@
        3201  +
AWS4-HMAC-SHA256
        3202  +
20150830T123600Z
        3203  +
20150830/us-east-1/service/aws4_request
        3204  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2674   3205   
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
 2675   3206   
similarity index 100%
 2676   3207   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2677   3208   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2678   3209   
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
 2679   3210   
new file mode 100644
 2680   3211   
index 0000000..0468d80
 2681         -
-- /dev/null
        3212  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2682   3213   
@@ -0,0 +1,12 @@
        3214  +
{
        3215  +
    "credentials": {
        3216  +
        "access_key_id": "AKIDEXAMPLE",
        3217  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3218  +
    },
        3219  +
    "expiration_in_seconds": 3600,
        3220  +
    "normalize": true,
        3221  +
    "region": "us-east-1",
        3222  +
    "service": "service",
        3223  +
    "sign_body": false,
        3224  +
    "timestamp": "2015-08-30T12:36:00Z"
        3225  +
}
              \
 No newline at end of file
 2683   3226   
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
 2684   3227   
similarity index 100%
 2685   3228   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2686   3229   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2687   3230   
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
 2688   3231   
new file mode 100644
 2689   3232   
index 0000000..80ed433
 2690         -
-- /dev/null
        3233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2691   3234   
@@ -0,0 +1 @@
        3235  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2692   3236   
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
 2693   3237   
new file mode 100644
 2694   3238   
index 0000000..4e614f8
 2695         -
-- /dev/null
        3239  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2696   3240   
@@ -0,0 +1,5 @@
        3241  +
POST /?Param1=value1 HTTP/1.1
        3242  +
Host:example.amazonaws.com
        3243  +
X-Amz-Date:20150830T123600Z
        3244  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3245  +
 2697   3246   
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
 2698   3247   
similarity index 100%
 2699   3248   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2700   3249   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2701   3250   
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
 2702   3251   
new file mode 100644
 2703   3252   
index 0000000..be66403
 2704         -
-- /dev/null
        3253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2705   3254   
@@ -0,0 +1,7 @@
        3255  +
POST
        3256  +
/
        3257  +
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
        3258  +
host:example.amazonaws.com
        3259  +
        3260  +
host
        3261  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2706   3262   
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
 2707   3263   
new file mode 100644
 2708   3264   
index 0000000..20fd32b
 2709         -
-- /dev/null
        3265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2710   3266   
@@ -0,0 +1 @@
        3267  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2711   3268   
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
 2712   3269   
new file mode 100644
 2713   3270   
index 0000000..d1148d0
 2714         -
-- /dev/null
        3271  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2715   3272   
@@ -0,0 +1,3 @@
        3273  +
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
        3274  +
Host:example.amazonaws.com
        3275  +
 2716   3276   
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
 2717   3277   
new file mode 100644
 2718   3278   
index 0000000..1a77103
 2719         -
-- /dev/null
        3279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2720   3280   
@@ -0,0 +1,4 @@
        3281  +
AWS4-HMAC-SHA256
        3282  +
20150830T123600Z
        3283  +
20150830/us-east-1/service/aws4_request
        3284  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2721   3285   
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
 2722   3286   
similarity index 100%
 2723   3287   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2724   3288   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2725   3289   
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
 2726   3290   
new file mode 100644
 2727   3291   
index 0000000..0468d80
 2728         -
-- /dev/null
        3292  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2729   3293   
@@ -0,0 +1,12 @@
        3294  +
{
        3295  +
    "credentials": {
        3296  +
        "access_key_id": "AKIDEXAMPLE",
        3297  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3298  +
    },
        3299  +
    "expiration_in_seconds": 3600,
        3300  +
    "normalize": true,
        3301  +
    "region": "us-east-1",
        3302  +
    "service": "service",
        3303  +
    "sign_body": false,
        3304  +
    "timestamp": "2015-08-30T12:36:00Z"
        3305  +
}
              \
 No newline at end of file
 2730   3306   
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
 2731   3307   
similarity index 100%
 2732   3308   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2733   3309   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2734   3310   
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
 2735   3311   
new file mode 100644
 2736   3312   
index 0000000..629487f
 2737         -
-- /dev/null
        3313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2738   3314   
@@ -0,0 +1 @@
        3315  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2739   3316   
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
 2740   3317   
new file mode 100644
 2741   3318   
index 0000000..0d99b1c
 2742         -
-- /dev/null
        3319  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2743   3320   
@@ -0,0 +1,5 @@
        3321  +
POST / HTTP/1.1
        3322  +
Host:example.amazonaws.com
        3323  +
X-Amz-Date:20150830T123600Z
        3324  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3325  +
 2744   3326   
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
 2745   3327   
similarity index 100%
 2746   3328   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 2747   3329   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 2748   3330   
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
 2749   3331   
new file mode 100644
 2750   3332   
index 0000000..d3341e7
 2751         -
-- /dev/null
        3333  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 2752   3334   
@@ -0,0 +1,7 @@
        3335  +
POST
        3336  +
/
        3337  +
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
        3338  +
host:example.amazonaws.com
        3339  +
        3340  +
host
        3341  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2753   3342   
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
 2754   3343   
new file mode 100644
 2755   3344   
index 0000000..79f7e0d
 2756         -
-- /dev/null
        3345  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 2757   3346   
@@ -0,0 +1 @@
        3347  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2758   3348   
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
 2759   3349   
new file mode 100644
 2760   3350   
index 0000000..94f1b21
 2761         -
-- /dev/null
        3351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 2762   3352   
@@ -0,0 +1,3 @@
        3353  +
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
        3354  +
Host:example.amazonaws.com
        3355  +
 2763   3356   
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
 2764   3357   
new file mode 100644
 2765   3358   
index 0000000..e8f335b
 2766         -
-- /dev/null
        3359  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 2767   3360   
@@ -0,0 +1,4 @@
        3361  +
AWS4-HMAC-SHA256
        3362  +
20150830T123600Z
        3363  +
20150830/us-east-1/service/aws4_request
        3364  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2768   3365   
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
 2769   3366   
similarity index 100%
 2770   3367   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 2771   3368   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 2772   3369   
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
 2773   3370   
similarity index 99%
 2774   3371   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 2775   3372   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2776   3373   
index fc4bce6..0db1df1 100644
 2777         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
        3374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2778   3375   
@@ -1,12 +1,12 @@
 2779   3376   
{
 2780   3377   
    "credentials": {
 2781   3378   
        "access_key_id": "AKIDEXAMPLE",
 2782   3379   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 2783   3380   
    },
 2784   3381   
    "expiration_in_seconds": 3600,
 2785   3382   
    "normalize": true,
 2786   3383   
    "region": "us-east-1",
 2787   3384   
    "service": "service",
 2788   3385   
    "sign_body": true,
 2789   3386   
    "timestamp": "2015-08-30T12:36:00Z"
 2790         -
}
        3387  +
}
              \
 No newline at end of file
 2791   3388   
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
 2792   3389   
new file mode 100644
 2793   3390   
index 0000000..c218fdf
 2794         -
-- /dev/null
        3391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 2795   3392   
@@ -0,0 +1,11 @@
        3393  +
POST
        3394  +
/
        3395  +
        3396  +
content-length:13
        3397  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3398  +
host:example.amazonaws.com
        3399  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3400  +
x-amz-date:20150830T123600Z
        3401  +
        3402  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3403  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2796   3404   
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
 2797   3405   
new file mode 100644
 2798   3406   
index 0000000..836aa8b
 2799         -
-- /dev/null
        3407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 2800   3408   
@@ -0,0 +1 @@
        3409  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 2801   3410   
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
 2802   3411   
new file mode 100644
 2803   3412   
index 0000000..9262d53
 2804         -
-- /dev/null
        3413  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 2805   3414   
@@ -0,0 +1,9 @@
        3415  +
POST / HTTP/1.1
        3416  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3417  +
Host:example.amazonaws.com
        3418  +
Content-Length:13
        3419  +
X-Amz-Date:20150830T123600Z
        3420  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3421  +
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
        3422  +
        3423  +
Param1=value1
              \
 No newline at end of file
 2806   3424   
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
 2807   3425   
new file mode 100644
 2808   3426   
index 0000000..ddbdccc
 2809         -
-- /dev/null
        3427  +
++ 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
 2810   3428   
@@ -0,0 +1,4 @@
        3429  +
AWS4-HMAC-SHA256
        3430  +
20150830T123600Z
        3431  +
20150830/us-east-1/service/aws4_request
        3432  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 2811   3433   
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
 2812   3434   
new file mode 100644
 2813   3435   
index 0000000..596a579
 2814         -
-- /dev/null
        3436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 2815   3437   
@@ -0,0 +1,9 @@
        3438  +
POST
        3439  +
/
        3440  +
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
        3441  +
content-length:13
        3442  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3443  +
host:example.amazonaws.com
        3444  +
        3445  +
content-length;content-type;host
        3446  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2816   3447   
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
 2817   3448   
new file mode 100644
 2818   3449   
index 0000000..bc85cd8
 2819         -
-- /dev/null
        3450  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 2820   3451   
@@ -0,0 +1 @@
        3452  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 2821   3453   
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
 2822   3454   
new file mode 100644
 2823   3455   
index 0000000..16b59e5
 2824         -
-- /dev/null
        3456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 2825   3457   
@@ -0,0 +1,6 @@
        3458  +
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
        3459  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3460  +
Host:example.amazonaws.com
        3461  +
Content-Length:13
        3462  +
        3463  +
Param1=value1
              \
 No newline at end of file
 2826   3464   
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
 2827   3465   
new file mode 100644
 2828   3466   
index 0000000..50074af
 2829         -
-- /dev/null
        3467  +
++ 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
 2830   3468   
@@ -0,0 +1,4 @@
        3469  +
AWS4-HMAC-SHA256
        3470  +
20150830T123600Z
        3471  +
20150830/us-east-1/service/aws4_request
        3472  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 2831   3473   
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
 2832   3474   
similarity index 89%
 2833   3475   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 2834   3476   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2835   3477   
index b711c25..8289eaa 100644
 2836         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
        3478  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2837   3479   
@@ -1,6 +1,6 @@
 2838   3480   
POST / HTTP/1.1
 2839   3481   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 2840   3482   
Host:example.amazonaws.com
 2841   3483   
Content-Length:13
 2842   3484   
 2843         -
Param1=value1
        3485  +
Param1=value1
              \
 No newline at end of file
 2844   3486   
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
 2845   3487   
similarity index 99%
 2846   3488   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 2847   3489   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 2848   3490   
index fc4bce6..0db1df1 100644
 2849         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
        3491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 2850   3492   
@@ -1,12 +1,12 @@
 2851   3493   
{
 2852   3494   
    "credentials": {
 2853   3495   
        "access_key_id": "AKIDEXAMPLE",
 2854   3496   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 2855   3497   
    },
 2856   3498   
    "expiration_in_seconds": 3600,
 2857   3499   
    "normalize": true,
 2858   3500   
    "region": "us-east-1",
 2859   3501   
    "service": "service",
 2860   3502   
    "sign_body": true,
 2861   3503   
    "timestamp": "2015-08-30T12:36:00Z"
 2862         -
}
        3504  +
}
              \
 No newline at end of file
 2863   3505   
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
 2864   3506   
new file mode 100644
 2865   3507   
index 0000000..4d116a5
 2866         -
-- /dev/null
        3508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 2867   3509   
@@ -0,0 +1,11 @@
        3510  +
POST
        3511  +
/
        3512  +
        3513  +
content-length:13
        3514  +
content-type:application/x-www-form-urlencoded
        3515  +
host:example.amazonaws.com
        3516  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3517  +
x-amz-date:20150830T123600Z
        3518  +
        3519  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3520  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2868   3521   
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
 2869   3522   
new file mode 100644
 2870   3523   
index 0000000..0d2ac37
 2871         -
-- /dev/null
        3524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 2872   3525   
@@ -0,0 +1 @@
        3526  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 2873   3527   
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
 2874   3528   
new file mode 100644
 2875   3529   
index 0000000..bd5e49c
 2876         -
-- /dev/null
        3530  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 2877   3531   
@@ -0,0 +1,9 @@
        3532  +
POST / HTTP/1.1
        3533  +
Content-Type:application/x-www-form-urlencoded
        3534  +
Host:example.amazonaws.com
        3535  +
Content-Length:13
        3536  +
X-Amz-Date:20150830T123600Z
        3537  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3538  +
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
        3539  +
        3540  +
Param1=value1
              \
 No newline at end of file
 2878   3541   
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
 2879   3542   
new file mode 100644
 2880   3543   
index 0000000..f1c599c
 2881         -
-- /dev/null
        3544  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 2882   3545   
@@ -0,0 +1,4 @@
        3546  +
AWS4-HMAC-SHA256
        3547  +
20150830T123600Z
        3548  +
20150830/us-east-1/service/aws4_request
        3549  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 2883   3550   
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
 2884   3551   
new file mode 100644
 2885   3552   
index 0000000..1fc1bb7
 2886         -
-- /dev/null
        3553  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 2887   3554   
@@ -0,0 +1,9 @@
        3555  +
POST
        3556  +
/
        3557  +
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
        3558  +
content-length:13
        3559  +
content-type:application/x-www-form-urlencoded
        3560  +
host:example.amazonaws.com
        3561  +
        3562  +
content-length;content-type;host
        3563  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2888   3564   
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
 2889   3565   
new file mode 100644
 2890   3566   
index 0000000..98c91b3
 2891         -
-- /dev/null
        3567  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 2892   3568   
@@ -0,0 +1 @@
        3569  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 2893   3570   
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
 2894   3571   
new file mode 100644
 2895   3572   
index 0000000..055cd7a
 2896         -
-- /dev/null
        3573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 2897   3574   
@@ -0,0 +1,6 @@
        3575  +
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
        3576  +
Content-Type:application/x-www-form-urlencoded
        3577  +
Host:example.amazonaws.com
        3578  +
Content-Length:13
        3579  +
        3580  +
Param1=value1
              \
 No newline at end of file
 2898   3581   
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
 2899   3582   
new file mode 100644
 2900   3583   
index 0000000..db7fc27
 2901         -
-- /dev/null
        3584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 2902   3585   
@@ -0,0 +1,4 @@
        3586  +
AWS4-HMAC-SHA256
        3587  +
20150830T123600Z
        3588  +
20150830/us-east-1/service/aws4_request
        3589  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 2903   3590   
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
 2904   3591   
similarity index 88%
 2905   3592   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 2906   3593   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 2907   3594   
index 0091102..760b2d3 100644
 2908         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
        3595  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 2909   3596   
@@ -1,6 +1,6 @@
 2910   3597   
POST / HTTP/1.1
 2911   3598   
Content-Type:application/x-www-form-urlencoded
 2912   3599   
Host:example.amazonaws.com
 2913   3600   
Content-Length:13
 2914   3601   
 2915         -
Param1=value1
        3602  +
Param1=value1
              \
 No newline at end of file
 2916   3603   
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
 2917   3604   
new file mode 100644
 2918   3605   
index 0000000..0468d80
 2919         -
-- /dev/null
        3606  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 2920   3607   
@@ -0,0 +1,12 @@
        3608  +
{
        3609  +
    "credentials": {
        3610  +
        "access_key_id": "AKIDEXAMPLE",
        3611  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3612  +
    },
        3613  +
    "expiration_in_seconds": 3600,
        3614  +
    "normalize": true,
        3615  +
    "region": "us-east-1",
        3616  +
    "service": "service",
        3617  +
    "sign_body": false,
        3618  +
    "timestamp": "2015-08-30T12:36:00Z"
        3619  +
}
              \
 No newline at end of file
 2921   3620   
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
 2922   3621   
similarity index 99%
 2923   3622   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 2924   3623   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 2925   3624   
index ccb5f43..1bc448e 100644
 2926         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
        3625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 2927   3626   
@@ -1,10 +1,10 @@
 2928   3627   
GET
 2929   3628   
/
 2930   3629   
 2931   3630   
host:example.amazonaws.com
 2932   3631   
my-header1:value2,value2,value1
 2933   3632   
x-amz-date:20150830T123600Z
 2934   3633   
x-amz-region-set:us-east-1
 2935   3634   
 2936   3635   
host;my-header1;x-amz-date;x-amz-region-set
 2937         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3636  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2938   3637   
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
 2939   3638   
new file mode 100644
 2940   3639   
index 0000000..489c182
 2941         -
-- /dev/null
        3640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 2942   3641   
@@ -0,0 +1 @@
        3642  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 2943   3643   
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
 2944   3644   
new file mode 100644
 2945   3645   
index 0000000..e1b8dbf
 2946         -
-- /dev/null
        3646  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 2947   3647   
@@ -0,0 +1,9 @@
        3648  +
GET / HTTP/1.1
        3649  +
Host:example.amazonaws.com
        3650  +
My-Header1:value2
        3651  +
My-Header1:value2
        3652  +
My-Header1:value1
        3653  +
X-Amz-Date:20150830T123600Z
        3654  +
X-Amz-Region-Set:us-east-1
        3655  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3656  +
 2948   3657   
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
 2949   3658   
similarity index 99%
 2950   3659   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 2951   3660   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 2952   3661   
index 8783461..bfc4619 100644
 2953         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
        3662  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 2954   3663   
@@ -1,4 +1,4 @@
 2955   3664   
AWS4-ECDSA-P256-SHA256
 2956   3665   
20150830T123600Z
 2957   3666   
20150830/service/aws4_request
 2958         -
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
        3667  +
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
              \
 No newline at end of file
 2959   3668   
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
 2960   3669   
new file mode 100644
 2961   3670   
index 0000000..379dcb2
 2962         -
-- /dev/null
        3671  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 2963   3672   
@@ -0,0 +1,4 @@
        3673  +
{
        3674  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3675  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3676  +
}
 2964   3677   
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
 2965   3678   
similarity index 99%
 2966   3679   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 2967   3680   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 2968   3681   
index 9561297..c05c3f5 100644
 2969         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
        3682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 2970   3683   
@@ -1,8 +1,8 @@
 2971   3684   
GET
 2972   3685   
/
 2973   3686   
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
 2974   3687   
host:example.amazonaws.com
 2975   3688   
my-header1:value2,value2,value1
 2976   3689   
 2977   3690   
host;my-header1
 2978         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3691  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2979   3692   
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
 2980   3693   
new file mode 100644
 2981   3694   
index 0000000..de9a4c3
 2982         -
-- /dev/null
        3695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 2983   3696   
@@ -0,0 +1 @@
        3697  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 2984   3698   
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
 2985   3699   
new file mode 100644
 2986   3700   
index 0000000..6c6b8c4
 2987         -
-- /dev/null
        3701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 2988   3702   
@@ -0,0 +1,6 @@
        3703  +
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
        3704  +
Host:example.amazonaws.com
        3705  +
My-Header1:value2
        3706  +
My-Header1:value2
        3707  +
My-Header1:value1
        3708  +
 2989   3709   
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
 2990   3710   
similarity index 99%
 2991   3711   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 2992   3712   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 2993   3713   
index 3140f6f..4eef106 100644
 2994         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
        3714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 2995   3715   
@@ -1,4 +1,4 @@
 2996   3716   
AWS4-ECDSA-P256-SHA256
 2997   3717   
20150830T123600Z
 2998   3718   
20150830/service/aws4_request
 2999         -
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
        3719  +
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
              \
 No newline at end of file
 3000   3720   
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
 3001   3721   
similarity index 78%
 3002   3722   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3003   3723   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3004   3724   
index 08a0364..40455ce 100644
 3005         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3006   3726   
@@ -1,6 +1,5 @@
 3007   3727   
GET / HTTP/1.1
 3008   3728   
Host:example.amazonaws.com
 3009   3729   
My-Header1:value2
 3010   3730   
My-Header1:value2
 3011   3731   
My-Header1:value1
 3012         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3013   3732   
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
 3014   3733   
new file mode 100644
 3015   3734   
index 0000000..0468d80
 3016         -
-- /dev/null
        3735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3017   3736   
@@ -0,0 +1,12 @@
        3737  +
{
        3738  +
    "credentials": {
        3739  +
        "access_key_id": "AKIDEXAMPLE",
        3740  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3741  +
    },
        3742  +
    "expiration_in_seconds": 3600,
        3743  +
    "normalize": true,
        3744  +
    "region": "us-east-1",
        3745  +
    "service": "service",
        3746  +
    "sign_body": false,
        3747  +
    "timestamp": "2015-08-30T12:36:00Z"
        3748  +
}
              \
 No newline at end of file
 3018   3749   
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
 3019   3750   
new file mode 100644
 3020   3751   
index 0000000..69526cd
 3021         -
-- /dev/null
        3752  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3022   3753   
@@ -0,0 +1,10 @@
        3754  +
GET
        3755  +
/
        3756  +
        3757  +
host:example.amazonaws.com
        3758  +
my-header1:value1 value2 value3
        3759  +
x-amz-date:20150830T123600Z
        3760  +
x-amz-region-set:us-east-1
        3761  +
        3762  +
host;my-header1;x-amz-date;x-amz-region-set
        3763  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3023   3764   
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
 3024   3765   
new file mode 100644
 3025   3766   
index 0000000..d51b4f3
 3026         -
-- /dev/null
        3767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3027   3768   
@@ -0,0 +1 @@
        3769  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3028   3770   
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
 3029   3771   
new file mode 100644
 3030   3772   
index 0000000..8131420
 3031         -
-- /dev/null
        3773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3032   3774   
@@ -0,0 +1,9 @@
        3775  +
GET / HTTP/1.1
        3776  +
Host:example.amazonaws.com
        3777  +
My-Header1:value1
        3778  +
  value2
        3779  +
     value3
        3780  +
X-Amz-Date:20150830T123600Z
        3781  +
X-Amz-Region-Set:us-east-1
        3782  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3783  +
 3033   3784   
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
 3034   3785   
new file mode 100644
 3035   3786   
index 0000000..e4d99fa
 3036         -
-- /dev/null
        3787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3037   3788   
@@ -0,0 +1,4 @@
        3789  +
AWS4-ECDSA-P256-SHA256
        3790  +
20150830T123600Z
        3791  +
20150830/service/aws4_request
        3792  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3038   3793   
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
 3039   3794   
new file mode 100644
 3040   3795   
index 0000000..379dcb2
 3041         -
-- /dev/null
        3796  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3042   3797   
@@ -0,0 +1,4 @@
        3798  +
{
        3799  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3800  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3801  +
}
 3043   3802   
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
 3044   3803   
new file mode 100644
 3045   3804   
index 0000000..3c4d52f
 3046         -
-- /dev/null
        3805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3047   3806   
@@ -0,0 +1,8 @@
        3807  +
GET
        3808  +
/
        3809  +
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
        3810  +
host:example.amazonaws.com
        3811  +
my-header1:value1 value2 value3
        3812  +
        3813  +
host;my-header1
        3814  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3048   3815   
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
 3049   3816   
new file mode 100644
 3050   3817   
index 0000000..4e63f9a
 3051         -
-- /dev/null
        3818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3052   3819   
@@ -0,0 +1 @@
        3820  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3053   3821   
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
 3054   3822   
new file mode 100644
 3055   3823   
index 0000000..adf1f09
 3056         -
-- /dev/null
        3824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3057   3825   
@@ -0,0 +1,6 @@
        3826  +
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
        3827  +
Host:example.amazonaws.com
        3828  +
My-Header1:value1
        3829  +
  value2
        3830  +
     value3
        3831  +
 3058   3832   
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
 3059   3833   
new file mode 100644
 3060   3834   
index 0000000..e085407
 3061         -
-- /dev/null
        3835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3062   3836   
@@ -0,0 +1,4 @@
        3837  +
AWS4-ECDSA-P256-SHA256
        3838  +
20150830T123600Z
        3839  +
20150830/service/aws4_request
        3840  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3063   3841   
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
 3064   3842   
new file mode 100644
 3065   3843   
index 0000000..b5026cd
 3066         -
-- /dev/null
        3844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3067   3845   
@@ -0,0 +1,5 @@
        3846  +
GET / HTTP/1.1
        3847  +
Host:example.amazonaws.com
        3848  +
My-Header1:value1
        3849  +
  value2
        3850  +
     value3
 3068   3851   
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
 3069   3852   
new file mode 100644
 3070   3853   
index 0000000..0468d80
 3071         -
-- /dev/null
        3854  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3072   3855   
@@ -0,0 +1,12 @@
        3856  +
{
        3857  +
    "credentials": {
        3858  +
        "access_key_id": "AKIDEXAMPLE",
        3859  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3860  +
    },
        3861  +
    "expiration_in_seconds": 3600,
        3862  +
    "normalize": true,
        3863  +
    "region": "us-east-1",
        3864  +
    "service": "service",
        3865  +
    "sign_body": false,
        3866  +
    "timestamp": "2015-08-30T12:36:00Z"
        3867  +
}
              \
 No newline at end of file
 3073   3868   
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
 3074   3869   
similarity index 99%
 3075   3870   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3076   3871   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3077   3872   
index 9375193..533afdb 100644
 3078         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
        3873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3079   3874   
@@ -1,10 +1,10 @@
 3080   3875   
GET
 3081   3876   
/
 3082   3877   
 3083   3878   
host:example.amazonaws.com
 3084   3879   
my-header1:value4,value1,value3,value2
 3085   3880   
x-amz-date:20150830T123600Z
 3086   3881   
x-amz-region-set:us-east-1
 3087   3882   
 3088   3883   
host;my-header1;x-amz-date;x-amz-region-set
 3089         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3884  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3090   3885   
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
 3091   3886   
new file mode 100644
 3092   3887   
index 0000000..057b426
 3093         -
-- /dev/null
        3888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3094   3889   
@@ -0,0 +1 @@
        3890  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3095   3891   
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
 3096   3892   
new file mode 100644
 3097   3893   
index 0000000..4e4ccf0
 3098         -
-- /dev/null
        3894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3099   3895   
@@ -0,0 +1,10 @@
        3896  +
GET / HTTP/1.1
        3897  +
Host:example.amazonaws.com
        3898  +
My-Header1:value4
        3899  +
My-Header1:value1
        3900  +
My-Header1:value3
        3901  +
My-Header1:value2
        3902  +
X-Amz-Date:20150830T123600Z
        3903  +
X-Amz-Region-Set:us-east-1
        3904  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        3905  +
 3100   3906   
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
 3101   3907   
similarity index 99%
 3102   3908   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3103   3909   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3104   3910   
index 6400baf..e68c952 100644
 3105         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
        3911  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3106   3912   
@@ -1,4 +1,4 @@
 3107   3913   
AWS4-ECDSA-P256-SHA256
 3108   3914   
20150830T123600Z
 3109   3915   
20150830/service/aws4_request
 3110         -
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
        3916  +
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
              \
 No newline at end of file
 3111   3917   
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
 3112   3918   
new file mode 100644
 3113   3919   
index 0000000..379dcb2
 3114         -
-- /dev/null
        3920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3115   3921   
@@ -0,0 +1,4 @@
        3922  +
{
        3923  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3924  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3925  +
}
 3116   3926   
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
 3117   3927   
similarity index 99%
 3118   3928   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3119   3929   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3120   3930   
index ecf494a..68450fe 100644
 3121         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
        3931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3122   3932   
@@ -1,8 +1,8 @@
 3123   3933   
GET
 3124   3934   
/
 3125   3935   
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
 3126   3936   
host:example.amazonaws.com
 3127   3937   
my-header1:value4,value1,value3,value2
 3128   3938   
 3129   3939   
host;my-header1
 3130         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3940  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3131   3941   
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
 3132   3942   
new file mode 100644
 3133   3943   
index 0000000..9df2eb3
 3134         -
-- /dev/null
        3944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3135   3945   
@@ -0,0 +1 @@
        3946  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3136   3947   
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
 3137   3948   
new file mode 100644
 3138   3949   
index 0000000..62f8cb7
 3139         -
-- /dev/null
        3950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3140   3951   
@@ -0,0 +1,7 @@
        3952  +
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
        3953  +
Host:example.amazonaws.com
        3954  +
My-Header1:value4
        3955  +
My-Header1:value1
        3956  +
My-Header1:value3
        3957  +
My-Header1:value2
        3958  +
 3141   3959   
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
 3142   3960   
similarity index 99%
 3143   3961   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3144   3962   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3145   3963   
index b584179..2bcf7b1 100644
 3146         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
        3964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3147   3965   
@@ -1,4 +1,4 @@
 3148   3966   
AWS4-ECDSA-P256-SHA256
 3149   3967   
20150830T123600Z
 3150   3968   
20150830/service/aws4_request
 3151         -
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
        3969  +
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
              \
 No newline at end of file
 3152   3970   
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
 3153   3971   
similarity index 80%
 3154   3972   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3155   3973   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3156   3974   
index f7bd9e6..2c6f49d 100644
 3157         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        3975  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3158   3976   
@@ -1,7 +1,6 @@
 3159   3977   
GET / HTTP/1.1
 3160   3978   
Host:example.amazonaws.com
 3161   3979   
My-Header1:value4
 3162   3980   
My-Header1:value1
 3163   3981   
My-Header1:value3
 3164   3982   
My-Header1:value2
 3165         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3166   3983   
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
 3167   3984   
new file mode 100644
 3168   3985   
index 0000000..0468d80
 3169         -
-- /dev/null
        3986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3170   3987   
@@ -0,0 +1,12 @@
        3988  +
{
        3989  +
    "credentials": {
        3990  +
        "access_key_id": "AKIDEXAMPLE",
        3991  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3992  +
    },
        3993  +
    "expiration_in_seconds": 3600,
        3994  +
    "normalize": true,
        3995  +
    "region": "us-east-1",
        3996  +
    "service": "service",
        3997  +
    "sign_body": false,
        3998  +
    "timestamp": "2015-08-30T12:36:00Z"
        3999  +
}
              \
 No newline at end of file
 3171   4000   
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
 3172   4001   
similarity index 99%
 3173   4002   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3174   4003   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3175   4004   
index e91e952..94b6be5 100644
 3176         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
        4005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3177   4006   
@@ -1,11 +1,11 @@
 3178   4007   
GET
 3179   4008   
/
 3180   4009   
 3181   4010   
host:example.amazonaws.com
 3182   4011   
my-header1:value1
 3183   4012   
my-header2:"a b c"
 3184   4013   
x-amz-date:20150830T123600Z
 3185   4014   
x-amz-region-set:us-east-1
 3186   4015   
 3187   4016   
host;my-header1;my-header2;x-amz-date;x-amz-region-set
 3188         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4017  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3189   4018   
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
 3190   4019   
new file mode 100644
 3191   4020   
index 0000000..bf8c3cb
 3192         -
-- /dev/null
        4021  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3193   4022   
@@ -0,0 +1 @@
        4023  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3194   4024   
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
 3195   4025   
new file mode 100644
 3196   4026   
index 0000000..f7f054d
 3197         -
-- /dev/null
        4027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3198   4028   
@@ -0,0 +1,8 @@
        4029  +
GET / HTTP/1.1
        4030  +
Host:example.amazonaws.com
        4031  +
My-Header1: value1
        4032  +
My-Header2: "a   b   c"
        4033  +
X-Amz-Date:20150830T123600Z
        4034  +
X-Amz-Region-Set:us-east-1
        4035  +
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
        4036  +
 3199   4037   
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
 3200   4038   
similarity index 99%
 3201   4039   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3202   4040   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3203   4041   
index 0e407d8..a2c9c05 100644
 3204         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
        4042  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3205   4043   
@@ -1,4 +1,4 @@
 3206   4044   
AWS4-ECDSA-P256-SHA256
 3207   4045   
20150830T123600Z
 3208   4046   
20150830/service/aws4_request
 3209         -
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
        4047  +
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
              \
 No newline at end of file
 3210   4048   
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
 3211   4049   
new file mode 100644
 3212   4050   
index 0000000..379dcb2
 3213         -
-- /dev/null
        4051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3214   4052   
@@ -0,0 +1,4 @@
        4053  +
{
        4054  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4055  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4056  +
}
 3215   4057   
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
 3216   4058   
similarity index 99%
 3217   4059   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3218   4060   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3219   4061   
index 8a3b042..3a51150 100644
 3220         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
        4062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3221   4063   
@@ -1,9 +1,9 @@
 3222   4064   
GET
 3223   4065   
/
 3224   4066   
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
 3225   4067   
host:example.amazonaws.com
 3226   4068   
my-header1:value1
 3227   4069   
my-header2:"a b c"
 3228   4070   
 3229   4071   
host;my-header1;my-header2
 3230         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4072  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3231   4073   
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
 3232   4074   
new file mode 100644
 3233   4075   
index 0000000..0033053
 3234         -
-- /dev/null
        4076  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3235   4077   
@@ -0,0 +1 @@
        4078  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3236   4079   
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
 3237   4080   
new file mode 100644
 3238   4081   
index 0000000..1537888
 3239         -
-- /dev/null
        4082  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3240   4083   
@@ -0,0 +1,5 @@
        4084  +
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
        4085  +
Host:example.amazonaws.com
        4086  +
My-Header1: value1
        4087  +
My-Header2: "a   b   c"
        4088  +
 3241   4089   
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
 3242   4090   
similarity index 99%
 3243   4091   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3244   4092   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3245   4093   
index 5eead25..633dc1f 100644
 3246         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
        4094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3247   4095   
@@ -1,4 +1,4 @@
 3248   4096   
AWS4-ECDSA-P256-SHA256
 3249   4097   
20150830T123600Z
 3250   4098   
20150830/service/aws4_request
 3251         -
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
        4099  +
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
              \
 No newline at end of file
 3252   4100   
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
 3253   4101   
similarity index 75%
 3254   4102   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3255   4103   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3256   4104   
index 901f36c..ad1ea98 100644
 3257         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3258   4106   
@@ -1,5 +1,4 @@
 3259   4107   
GET / HTTP/1.1
 3260   4108   
Host:example.amazonaws.com
 3261   4109   
My-Header1: value1
 3262   4110   
My-Header2: "a   b   c"
 3263         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3264   4111   
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
 3265   4112   
new file mode 100644
 3266   4113   
index 0000000..0468d80
 3267         -
-- /dev/null
        4114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3268   4115   
@@ -0,0 +1,12 @@
        4116  +
{
        4117  +
    "credentials": {
        4118  +
        "access_key_id": "AKIDEXAMPLE",
        4119  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4120  +
    },
        4121  +
    "expiration_in_seconds": 3600,
        4122  +
    "normalize": true,
        4123  +
    "region": "us-east-1",
        4124  +
    "service": "service",
        4125  +
    "sign_body": false,
        4126  +
    "timestamp": "2015-08-30T12:36:00Z"
        4127  +
}
              \
 No newline at end of file
 3269   4128   
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
 3270   4129   
similarity index 99%
 3271   4130   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3272   4131   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3273   4132   
index 47e7128..76db73d 100644
 3274         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
        4133  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3275   4134   
@@ -1,9 +1,9 @@
 3276   4135   
GET
 3277   4136   
/
 3278   4137   
 3279   4138   
host:example.amazonaws.com
 3280   4139   
x-amz-date:20150830T123600Z
 3281   4140   
x-amz-region-set:us-east-1
 3282   4141   
 3283   4142   
host;x-amz-date;x-amz-region-set
 3284         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4143  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3285   4144   
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
 3286   4145   
new file mode 100644
 3287   4146   
index 0000000..cbd6ae2
 3288         -
-- /dev/null
        4147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3289   4148   
@@ -0,0 +1 @@
        4149  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3290   4150   
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
 3291   4151   
new file mode 100644
 3292   4152   
index 0000000..a343fcf
 3293         -
-- /dev/null
        4153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3294   4154   
@@ -0,0 +1,6 @@
        4155  +
GET /example/.. HTTP/1.1
        4156  +
Host:example.amazonaws.com
        4157  +
X-Amz-Date:20150830T123600Z
        4158  +
X-Amz-Region-Set:us-east-1
        4159  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4160  +
 3295   4161   
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
 3296   4162   
similarity index 99%
 3297   4163   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3298   4164   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3299   4165   
index 95d7219..600f1d8 100644
 3300         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
        4166  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3301   4167   
@@ -1,4 +1,4 @@
 3302   4168   
AWS4-ECDSA-P256-SHA256
 3303   4169   
20150830T123600Z
 3304   4170   
20150830/service/aws4_request
 3305         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4171  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3306   4172   
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
 3307   4173   
new file mode 100644
 3308   4174   
index 0000000..379dcb2
 3309         -
-- /dev/null
        4175  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3310   4176   
@@ -0,0 +1,4 @@
        4177  +
{
        4178  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4179  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4180  +
}
 3311   4181   
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
 3312   4182   
similarity index 99%
 3313   4183   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3314   4184   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3315   4185   
index a34ea26..779c51c 100644
 3316         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
        4186  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3317   4187   
@@ -1,7 +1,7 @@
 3318   4188   
GET
 3319   4189   
/
 3320   4190   
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
 3321   4191   
host:example.amazonaws.com
 3322   4192   
 3323   4193   
host
 3324         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4194  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3325   4195   
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
 3326   4196   
new file mode 100644
 3327   4197   
index 0000000..3cc88e6
 3328         -
-- /dev/null
        4198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3329   4199   
@@ -0,0 +1 @@
        4200  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3330   4201   
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
 3331   4202   
new file mode 100644
 3332   4203   
index 0000000..f68dde8
 3333         -
-- /dev/null
        4204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3334   4205   
@@ -0,0 +1,3 @@
        4206  +
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
        4207  +
Host:example.amazonaws.com
        4208  +
 3335   4209   
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
 3336   4210   
similarity index 99%
 3337   4211   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3338   4212   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3339   4213   
index 48f855c..6e29a7e 100644
 3340         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
        4214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3341   4215   
@@ -1,4 +1,4 @@
 3342   4216   
AWS4-ECDSA-P256-SHA256
 3343   4217   
20150830T123600Z
 3344   4218   
20150830/service/aws4_request
 3345         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4219  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3346   4220   
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
 3347   4221   
similarity index 65%
 3348   4222   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3349   4223   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3350   4224   
index 9d6d7ca..6aa9f99 100644
 3351         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4225  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3352   4226   
@@ -1,3 +1,2 @@
 3353   4227   
GET /example/.. HTTP/1.1
 3354   4228   
Host:example.amazonaws.com
 3355         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3356   4229   
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
 3357   4230   
new file mode 100644
 3358   4231   
index 0000000..0468d80
 3359         -
-- /dev/null
        4232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3360   4233   
@@ -0,0 +1,12 @@
        4234  +
{
        4235  +
    "credentials": {
        4236  +
        "access_key_id": "AKIDEXAMPLE",
        4237  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4238  +
    },
        4239  +
    "expiration_in_seconds": 3600,
        4240  +
    "normalize": true,
        4241  +
    "region": "us-east-1",
        4242  +
    "service": "service",
        4243  +
    "sign_body": false,
        4244  +
    "timestamp": "2015-08-30T12:36:00Z"
        4245  +
}
              \
 No newline at end of file
 3361   4246   
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
 3362   4247   
similarity index 99%
 3363   4248   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3364   4249   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3365   4250   
index 47e7128..76db73d 100644
 3366         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
        4251  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3367   4252   
@@ -1,9 +1,9 @@
 3368   4253   
GET
 3369   4254   
/
 3370   4255   
 3371   4256   
host:example.amazonaws.com
 3372   4257   
x-amz-date:20150830T123600Z
 3373   4258   
x-amz-region-set:us-east-1
 3374   4259   
 3375   4260   
host;x-amz-date;x-amz-region-set
 3376         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4261  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3377   4262   
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
 3378   4263   
new file mode 100644
 3379   4264   
index 0000000..f7a7ebe
 3380         -
-- /dev/null
        4265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3381   4266   
@@ -0,0 +1 @@
        4267  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3382   4268   
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
 3383   4269   
new file mode 100644
 3384   4270   
index 0000000..9d2c50d
 3385         -
-- /dev/null
        4271  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3386   4272   
@@ -0,0 +1,6 @@
        4273  +
GET /example1/example2/../.. HTTP/1.1
        4274  +
Host:example.amazonaws.com
        4275  +
X-Amz-Date:20150830T123600Z
        4276  +
X-Amz-Region-Set:us-east-1
        4277  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4278  +
 3387   4279   
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
 3388   4280   
similarity index 99%
 3389   4281   
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
 3390   4282   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3391   4283   
index 95d7219..600f1d8 100644
 3392         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-string-to-sign.txt
        4284  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3393   4285   
@@ -1,4 +1,4 @@
 3394   4286   
AWS4-ECDSA-P256-SHA256
 3395   4287   
20150830T123600Z
 3396   4288   
20150830/service/aws4_request
 3397         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4289  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3398   4290   
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
 3399   4291   
new file mode 100644
 3400   4292   
index 0000000..379dcb2
 3401         -
-- /dev/null
        4293  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3402   4294   
@@ -0,0 +1,4 @@
        4295  +
{
        4296  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4297  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4298  +
}
 3403   4299   
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
 3404   4300   
similarity index 99%
 3405   4301   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3406   4302   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3407   4303   
index a34ea26..779c51c 100644
 3408         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
        4304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3409   4305   
@@ -1,7 +1,7 @@
 3410   4306   
GET
 3411   4307   
/
 3412   4308   
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
 3413   4309   
host:example.amazonaws.com
 3414   4310   
 3415   4311   
host
 3416         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4312  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3417   4313   
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
 3418   4314   
new file mode 100644
 3419   4315   
index 0000000..45ef286
 3420         -
-- /dev/null
        4316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3421   4317   
@@ -0,0 +1 @@
        4318  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3422   4319   
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
 3423   4320   
new file mode 100644
 3424   4321   
index 0000000..0d16f66
 3425         -
-- /dev/null
        4322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3426   4323   
@@ -0,0 +1,3 @@
        4324  +
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
        4325  +
Host:example.amazonaws.com
        4326  +
 3427   4327   
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
 3428   4328   
similarity index 99%
 3429   4329   
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
 3430   4330   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3431   4331   
index 48f855c..6e29a7e 100644
 3432         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-string-to-sign.txt
        4332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3433   4333   
@@ -1,4 +1,4 @@
 3434   4334   
AWS4-ECDSA-P256-SHA256
 3435   4335   
20150830T123600Z
 3436   4336   
20150830/service/aws4_request
 3437         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4337  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3438   4338   
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
 3439   4339   
similarity index 70%
 3440   4340   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3441   4341   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3442   4342   
index cfd4e8b..a856c10 100644
 3443         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3444   4344   
@@ -1,3 +1,2 @@
 3445   4345   
GET /example1/example2/../.. HTTP/1.1
 3446   4346   
Host:example.amazonaws.com
 3447         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3448   4347   
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
 3449   4348   
new file mode 100644
 3450   4349   
index 0000000..7bee5c7
 3451         -
-- /dev/null
        4350  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3452   4351   
@@ -0,0 +1,12 @@
        4352  +
{
        4353  +
    "credentials": {
        4354  +
        "access_key_id": "AKIDEXAMPLE",
        4355  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4356  +
    },
        4357  +
    "expiration_in_seconds": 3600,
        4358  +
    "normalize": false,
        4359  +
    "region": "us-east-1",
        4360  +
    "service": "service",
        4361  +
    "sign_body": false,
        4362  +
    "timestamp": "2015-08-30T12:36:00Z"
        4363  +
}
              \
 No newline at end of file
 3453   4364   
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
 3454   4365   
similarity index 99%
 3455   4366   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3456   4367   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3457   4368   
index 5e1d1cf..e4e6d57 100644
 3458         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
        4369  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3459   4370   
@@ -1,9 +1,9 @@
 3460   4371   
GET
 3461   4372   
/example1/example2/../..
 3462   4373   
 3463   4374   
host:example.amazonaws.com
 3464   4375   
x-amz-date:20150830T123600Z
 3465   4376   
x-amz-region-set:us-east-1
 3466   4377   
 3467   4378   
host;x-amz-date;x-amz-region-set
 3468         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4379  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3469   4380   
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
 3470   4381   
new file mode 100644
 3471   4382   
index 0000000..2d1b47c
 3472         -
-- /dev/null
        4383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3473   4384   
@@ -0,0 +1 @@
        4385  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3474   4386   
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
 3475   4387   
new file mode 100644
 3476   4388   
index 0000000..7158179
 3477         -
-- /dev/null
        4389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3478   4390   
@@ -0,0 +1,6 @@
        4391  +
GET /example1/example2/../.. HTTP/1.1
        4392  +
Host:example.amazonaws.com
        4393  +
X-Amz-Date:20150830T123600Z
        4394  +
X-Amz-Region-Set:us-east-1
        4395  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4396  +
 3479   4397   
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
 3480   4398   
similarity index 99%
 3481   4399   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3482   4400   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3483   4401   
index 1cca6cf..db60c8e 100644
 3484         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
        4402  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3485   4403   
@@ -1,4 +1,4 @@
 3486   4404   
AWS4-ECDSA-P256-SHA256
 3487   4405   
20150830T123600Z
 3488   4406   
20150830/service/aws4_request
 3489         -
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
        4407  +
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
              \
 No newline at end of file
 3490   4408   
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
 3491   4409   
new file mode 100644
 3492   4410   
index 0000000..379dcb2
 3493         -
-- /dev/null
        4411  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3494   4412   
@@ -0,0 +1,4 @@
        4413  +
{
        4414  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4415  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4416  +
}
 3495   4417   
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
 3496   4418   
similarity index 99%
 3497   4419   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3498   4420   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3499   4421   
index 95dc104..0d963ba 100644
 3500         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
        4422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3501   4423   
@@ -1,7 +1,7 @@
 3502   4424   
GET
 3503   4425   
/example1/example2/../..
 3504   4426   
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
 3505   4427   
host:example.amazonaws.com
 3506   4428   
 3507   4429   
host
 3508         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4430  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3509   4431   
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
 3510   4432   
new file mode 100644
 3511   4433   
index 0000000..ae774e4
 3512         -
-- /dev/null
        4434  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3513   4435   
@@ -0,0 +1 @@
        4436  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3514   4437   
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
 3515   4438   
new file mode 100644
 3516   4439   
index 0000000..be6b86e
 3517         -
-- /dev/null
        4440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3518   4441   
@@ -0,0 +1,3 @@
        4442  +
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
        4443  +
Host:example.amazonaws.com
        4444  +
 3519   4445   
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
 3520   4446   
similarity index 99%
 3521   4447   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3522   4448   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3523   4449   
index 50edce6..fcc70cd 100644
 3524         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
        4450  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3525   4451   
@@ -1,4 +1,4 @@
 3526   4452   
AWS4-ECDSA-P256-SHA256
 3527   4453   
20150830T123600Z
 3528   4454   
20150830/service/aws4_request
 3529         -
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
        4455  +
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
              \
 No newline at end of file
 3530   4456   
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
 3531   4457   
new file mode 100644
 3532   4458   
index 0000000..a856c10
 3533         -
-- /dev/null
        4459  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3534   4460   
@@ -0,0 +1,2 @@
        4461  +
GET /example1/example2/../.. HTTP/1.1
        4462  +
Host:example.amazonaws.com
 3535   4463   
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
 3536   4464   
new file mode 100644
 3537   4465   
index 0000000..7bee5c7
 3538         -
-- /dev/null
        4466  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3539   4467   
@@ -0,0 +1,12 @@
        4468  +
{
        4469  +
    "credentials": {
        4470  +
        "access_key_id": "AKIDEXAMPLE",
        4471  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4472  +
    },
        4473  +
    "expiration_in_seconds": 3600,
        4474  +
    "normalize": false,
        4475  +
    "region": "us-east-1",
        4476  +
    "service": "service",
        4477  +
    "sign_body": false,
        4478  +
    "timestamp": "2015-08-30T12:36:00Z"
        4479  +
}
              \
 No newline at end of file
 3540   4480   
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
 3541   4481   
similarity index 99%
 3542   4482   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3543   4483   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3544   4484   
index d6a0abe..22def1a 100644
 3545         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
        4485  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3546   4486   
@@ -1,9 +1,9 @@
 3547   4487   
GET
 3548   4488   
/example/..
 3549   4489   
 3550   4490   
host:example.amazonaws.com
 3551   4491   
x-amz-date:20150830T123600Z
 3552   4492   
x-amz-region-set:us-east-1
 3553   4493   
 3554   4494   
host;x-amz-date;x-amz-region-set
 3555         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4495  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3556   4496   
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
 3557   4497   
new file mode 100644
 3558   4498   
index 0000000..9251bad
 3559         -
-- /dev/null
        4499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3560   4500   
@@ -0,0 +1 @@
        4501  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3561   4502   
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
 3562   4503   
new file mode 100644
 3563   4504   
index 0000000..f1bb60f
 3564         -
-- /dev/null
        4505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3565   4506   
@@ -0,0 +1,6 @@
        4507  +
GET /example/.. HTTP/1.1
        4508  +
Host:example.amazonaws.com
        4509  +
X-Amz-Date:20150830T123600Z
        4510  +
X-Amz-Region-Set:us-east-1
        4511  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4512  +
 3566   4513   
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
 3567   4514   
similarity index 99%
 3568   4515   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3569   4516   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3570   4517   
index 4a34e93..5673a20 100644
 3571         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
        4518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3572   4519   
@@ -1,4 +1,4 @@
 3573   4520   
AWS4-ECDSA-P256-SHA256
 3574   4521   
20150830T123600Z
 3575   4522   
20150830/service/aws4_request
 3576         -
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
        4523  +
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
              \
 No newline at end of file
 3577   4524   
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
 3578   4525   
new file mode 100644
 3579   4526   
index 0000000..379dcb2
 3580         -
-- /dev/null
        4527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3581   4528   
@@ -0,0 +1,4 @@
        4529  +
{
        4530  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4531  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4532  +
}
 3582   4533   
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
 3583   4534   
similarity index 99%
 3584   4535   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3585   4536   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3586   4537   
index b1d123e..a1c22e0 100644
 3587         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
        4538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3588   4539   
@@ -1,7 +1,7 @@
 3589   4540   
GET
 3590   4541   
/example/..
 3591   4542   
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
 3592   4543   
host:example.amazonaws.com
 3593   4544   
 3594   4545   
host
 3595         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4546  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3596   4547   
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
 3597   4548   
new file mode 100644
 3598   4549   
index 0000000..9f0f686
 3599         -
-- /dev/null
        4550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3600   4551   
@@ -0,0 +1 @@
        4552  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3601   4553   
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
 3602   4554   
new file mode 100644
 3603   4555   
index 0000000..d1d451a
 3604         -
-- /dev/null
        4556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3605   4557   
@@ -0,0 +1,3 @@
        4558  +
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
        4559  +
Host:example.amazonaws.com
        4560  +
 3606   4561   
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
 3607   4562   
similarity index 99%
 3608   4563   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3609   4564   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3610   4565   
index a17f5ab..81b41e8 100644
 3611         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
        4566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3612   4567   
@@ -1,4 +1,4 @@
 3613   4568   
AWS4-ECDSA-P256-SHA256
 3614   4569   
20150830T123600Z
 3615   4570   
20150830/service/aws4_request
 3616         -
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
        4571  +
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
              \
 No newline at end of file
 3617   4572   
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
 3618   4573   
new file mode 100644
 3619   4574   
index 0000000..6aa9f99
 3620         -
-- /dev/null
        4575  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3621   4576   
@@ -0,0 +1,2 @@
        4577  +
GET /example/.. HTTP/1.1
        4578  +
Host:example.amazonaws.com
 3622   4579   
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
 3623   4580   
new file mode 100644
 3624   4581   
index 0000000..0468d80
 3625         -
-- /dev/null
        4582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3626   4583   
@@ -0,0 +1,12 @@
        4584  +
{
        4585  +
    "credentials": {
        4586  +
        "access_key_id": "AKIDEXAMPLE",
        4587  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4588  +
    },
        4589  +
    "expiration_in_seconds": 3600,
        4590  +
    "normalize": true,
        4591  +
    "region": "us-east-1",
        4592  +
    "service": "service",
        4593  +
    "sign_body": false,
        4594  +
    "timestamp": "2015-08-30T12:36:00Z"
        4595  +
}
              \
 No newline at end of file
 3627   4596   
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
 3628   4597   
similarity index 99%
 3629   4598   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3630   4599   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3631   4600   
index 47e7128..76db73d 100644
 3632         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
        4601  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3633   4602   
@@ -1,9 +1,9 @@
 3634   4603   
GET
 3635   4604   
/
 3636   4605   
 3637   4606   
host:example.amazonaws.com
 3638   4607   
x-amz-date:20150830T123600Z
 3639   4608   
x-amz-region-set:us-east-1
 3640   4609   
 3641   4610   
host;x-amz-date;x-amz-region-set
 3642         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4611  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3643   4612   
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
 3644   4613   
new file mode 100644
 3645   4614   
index 0000000..ca6e84e
 3646         -
-- /dev/null
        4615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3647   4616   
@@ -0,0 +1 @@
        4617  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3648   4618   
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
 3649   4619   
new file mode 100644
 3650   4620   
index 0000000..a7c764c
 3651         -
-- /dev/null
        4621  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3652   4622   
@@ -0,0 +1,6 @@
        4623  +
GET /./ HTTP/1.1
        4624  +
Host:example.amazonaws.com
        4625  +
X-Amz-Date:20150830T123600Z
        4626  +
X-Amz-Region-Set:us-east-1
        4627  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4628  +
 3653   4629   
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
 3654   4630   
similarity index 99%
 3655   4631   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3656   4632   
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
 3657   4633   
index 95d7219..600f1d8 100644
 3658         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
        4634  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-string-to-sign.txt
 3659   4635   
@@ -1,4 +1,4 @@
 3660   4636   
AWS4-ECDSA-P256-SHA256
 3661   4637   
20150830T123600Z
 3662   4638   
20150830/service/aws4_request
 3663         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4639  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3664   4640   
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
 3665   4641   
new file mode 100644
 3666   4642   
index 0000000..379dcb2
 3667         -
-- /dev/null
        4643  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3668   4644   
@@ -0,0 +1,4 @@
        4645  +
{
        4646  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4647  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4648  +
}
 3669   4649   
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
 3670   4650   
similarity index 99%
 3671   4651   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3672   4652   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3673   4653   
index a34ea26..779c51c 100644
 3674         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
        4654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3675   4655   
@@ -1,7 +1,7 @@
 3676   4656   
GET
 3677   4657   
/
 3678   4658   
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
 3679   4659   
host:example.amazonaws.com
 3680   4660   
 3681   4661   
host
 3682         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4662  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3683   4663   
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
 3684   4664   
new file mode 100644
 3685   4665   
index 0000000..4b6ed09
 3686         -
-- /dev/null
        4666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3687   4667   
@@ -0,0 +1 @@
        4668  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3688   4669   
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
 3689   4670   
new file mode 100644
 3690   4671   
index 0000000..d6c7176
 3691         -
-- /dev/null
        4672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3692   4673   
@@ -0,0 +1,3 @@
        4674  +
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
        4675  +
Host:example.amazonaws.com
        4676  +
 3693   4677   
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
 3694   4678   
similarity index 99%
 3695   4679   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3696   4680   
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
 3697   4681   
index 48f855c..6e29a7e 100644
 3698         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
        4682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-string-to-sign.txt
 3699   4683   
@@ -1,4 +1,4 @@
 3700   4684   
AWS4-ECDSA-P256-SHA256
 3701   4685   
20150830T123600Z
 3702   4686   
20150830/service/aws4_request
 3703         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4687  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3704   4688   
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
 3705   4689   
similarity index 61%
 3706   4690   
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
 3707   4691   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3708   4692   
index f3537b7..2c5ff38 100644
 3709         -
-- 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
        4693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3710   4694   
@@ -1,3 +1,2 @@
 3711   4695   
GET /./ HTTP/1.1
 3712   4696   
Host:example.amazonaws.com
 3713         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3714   4697   
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
 3715   4698   
new file mode 100644
 3716   4699   
index 0000000..7bee5c7
 3717         -
-- /dev/null
        4700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3718   4701   
@@ -0,0 +1,12 @@
        4702  +
{
        4703  +
    "credentials": {
        4704  +
        "access_key_id": "AKIDEXAMPLE",
        4705  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4706  +
    },
        4707  +
    "expiration_in_seconds": 3600,
        4708  +
    "normalize": false,
        4709  +
    "region": "us-east-1",
        4710  +
    "service": "service",
        4711  +
    "sign_body": false,
        4712  +
    "timestamp": "2015-08-30T12:36:00Z"
        4713  +
}
              \
 No newline at end of file
 3719   4714   
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
 3720   4715   
similarity index 99%
 3721   4716   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3722   4717   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3723   4718   
index d05303d..9257ac4 100644
 3724         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
        4719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3725   4720   
@@ -1,9 +1,9 @@
 3726   4721   
GET
 3727   4722   
/./
 3728   4723   
 3729   4724   
host:example.amazonaws.com
 3730   4725   
x-amz-date:20150830T123600Z
 3731   4726   
x-amz-region-set:us-east-1
 3732   4727   
 3733   4728   
host;x-amz-date;x-amz-region-set
 3734         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4729  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3735   4730   
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
 3736   4731   
new file mode 100644
 3737   4732   
index 0000000..2eb1aa5
 3738         -
-- /dev/null
        4733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3739   4734   
@@ -0,0 +1 @@
        4735  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3740   4736   
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
 3741   4737   
new file mode 100644
 3742   4738   
index 0000000..df3b1da
 3743         -
-- /dev/null
        4739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3744   4740   
@@ -0,0 +1,6 @@
        4741  +
GET /./ HTTP/1.1
        4742  +
Host:example.amazonaws.com
        4743  +
X-Amz-Date:20150830T123600Z
        4744  +
X-Amz-Region-Set:us-east-1
        4745  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4746  +
 3745   4747   
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
 3746   4748   
similarity index 99%
 3747   4749   
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
 3748   4750   
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
 3749   4751   
index e1bfb39..754b3ed 100644
 3750         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
        4752  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 3751   4753   
@@ -1,4 +1,4 @@
 3752   4754   
AWS4-ECDSA-P256-SHA256
 3753   4755   
20150830T123600Z
 3754   4756   
20150830/service/aws4_request
 3755         -
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
        4757  +
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
              \
 No newline at end of file
 3756   4758   
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
 3757   4759   
new file mode 100644
 3758   4760   
index 0000000..379dcb2
 3759         -
-- /dev/null
        4761  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3760   4762   
@@ -0,0 +1,4 @@
        4763  +
{
        4764  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4765  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4766  +
}
 3761   4767   
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
 3762   4768   
similarity index 99%
 3763   4769   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3764   4770   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3765   4771   
index f048d0f..c8edce3 100644
 3766         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
        4772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3767   4773   
@@ -1,7 +1,7 @@
 3768   4774   
GET
 3769   4775   
/./
 3770   4776   
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
 3771   4777   
host:example.amazonaws.com
 3772   4778   
 3773   4779   
host
 3774         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4780  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3775   4781   
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
 3776   4782   
new file mode 100644
 3777   4783   
index 0000000..d3af3b8
 3778         -
-- /dev/null
        4784  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3779   4785   
@@ -0,0 +1 @@
        4786  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3780   4787   
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
 3781   4788   
new file mode 100644
 3782   4789   
index 0000000..eb38155
 3783         -
-- /dev/null
        4790  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3784   4791   
@@ -0,0 +1,3 @@
        4792  +
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
        4793  +
Host:example.amazonaws.com
        4794  +
 3785   4795   
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
 3786   4796   
similarity index 99%
 3787   4797   
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
 3788   4798   
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
 3789   4799   
index bfcf245..4f20b8f 100644
 3790         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
        4800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 3791   4801   
@@ -1,4 +1,4 @@
 3792   4802   
AWS4-ECDSA-P256-SHA256
 3793   4803   
20150830T123600Z
 3794   4804   
20150830/service/aws4_request
 3795         -
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
        4805  +
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
              \
 No newline at end of file
 3796   4806   
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
 3797   4807   
new file mode 100644
 3798   4808   
index 0000000..2c5ff38
 3799         -
-- /dev/null
        4809  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3800   4810   
@@ -0,0 +1,2 @@
        4811  +
GET /./ HTTP/1.1
        4812  +
Host:example.amazonaws.com
 3801   4813   
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
 3802   4814   
new file mode 100644
 3803   4815   
index 0000000..0468d80
 3804         -
-- /dev/null
        4816  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3805   4817   
@@ -0,0 +1,12 @@
        4818  +
{
        4819  +
    "credentials": {
        4820  +
        "access_key_id": "AKIDEXAMPLE",
        4821  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4822  +
    },
        4823  +
    "expiration_in_seconds": 3600,
        4824  +
    "normalize": true,
        4825  +
    "region": "us-east-1",
        4826  +
    "service": "service",
        4827  +
    "sign_body": false,
        4828  +
    "timestamp": "2015-08-30T12:36:00Z"
        4829  +
}
              \
 No newline at end of file
 3806   4830   
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
 3807   4831   
similarity index 99%
 3808   4832   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 3809   4833   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3810   4834   
index 47e7128..76db73d 100644
 3811         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
        4835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3812   4836   
@@ -1,9 +1,9 @@
 3813   4837   
GET
 3814   4838   
/
 3815   4839   
 3816   4840   
host:example.amazonaws.com
 3817   4841   
x-amz-date:20150830T123600Z
 3818   4842   
x-amz-region-set:us-east-1
 3819   4843   
 3820   4844   
host;x-amz-date;x-amz-region-set
 3821         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4845  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3822   4846   
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
 3823   4847   
new file mode 100644
 3824   4848   
index 0000000..0c049ca
 3825         -
-- /dev/null
        4849  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 3826   4850   
@@ -0,0 +1 @@
        4851  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 3827   4852   
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
 3828   4853   
new file mode 100644
 3829   4854   
index 0000000..f4bb1e1
 3830         -
-- /dev/null
        4855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 3831   4856   
@@ -0,0 +1,6 @@
        4857  +
GET // HTTP/1.1
        4858  +
Host:example.amazonaws.com
        4859  +
X-Amz-Date:20150830T123600Z
        4860  +
X-Amz-Region-Set:us-east-1
        4861  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4862  +
 3832   4863   
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
 3833   4864   
similarity index 99%
 3834   4865   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 3835   4866   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3836   4867   
index 95d7219..600f1d8 100644
 3837         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
        4868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3838   4869   
@@ -1,4 +1,4 @@
 3839   4870   
AWS4-ECDSA-P256-SHA256
 3840   4871   
20150830T123600Z
 3841   4872   
20150830/service/aws4_request
 3842         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4873  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3843   4874   
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
 3844   4875   
new file mode 100644
 3845   4876   
index 0000000..379dcb2
 3846         -
-- /dev/null
        4877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 3847   4878   
@@ -0,0 +1,4 @@
        4879  +
{
        4880  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4881  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4882  +
}
 3848   4883   
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
 3849   4884   
similarity index 99%
 3850   4885   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 3851   4886   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3852   4887   
index a34ea26..779c51c 100644
 3853         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
        4888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3854   4889   
@@ -1,7 +1,7 @@
 3855   4890   
GET
 3856   4891   
/
 3857   4892   
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
 3858   4893   
host:example.amazonaws.com
 3859   4894   
 3860   4895   
host
 3861         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4896  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3862   4897   
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
 3863   4898   
new file mode 100644
 3864   4899   
index 0000000..ca52293
 3865         -
-- /dev/null
        4900  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 3866   4901   
@@ -0,0 +1 @@
        4902  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 3867   4903   
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
 3868   4904   
new file mode 100644
 3869   4905   
index 0000000..4a212a9
 3870         -
-- /dev/null
        4906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 3871   4907   
@@ -0,0 +1,3 @@
        4908  +
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
        4909  +
Host:example.amazonaws.com
        4910  +
 3872   4911   
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
 3873   4912   
similarity index 99%
 3874   4913   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 3875   4914   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3876   4915   
index 48f855c..6e29a7e 100644
 3877         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
        4916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3878   4917   
@@ -1,4 +1,4 @@
 3879   4918   
AWS4-ECDSA-P256-SHA256
 3880   4919   
20150830T123600Z
 3881   4920   
20150830/service/aws4_request
 3882         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4921  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3883   4922   
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
 3884   4923   
similarity index 61%
 3885   4924   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 3886   4925   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3887   4926   
index ede8e3c..25bc21e 100644
 3888         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        4927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3889   4928   
@@ -1,3 +1,2 @@
 3890   4929   
GET // HTTP/1.1
 3891   4930   
Host:example.amazonaws.com
 3892         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3893   4931   
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
 3894   4932   
new file mode 100644
 3895   4933   
index 0000000..0468d80
 3896         -
-- /dev/null
        4934  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 3897   4935   
@@ -0,0 +1,12 @@
        4936  +
{
        4937  +
    "credentials": {
        4938  +
        "access_key_id": "AKIDEXAMPLE",
        4939  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4940  +
    },
        4941  +
    "expiration_in_seconds": 3600,
        4942  +
    "normalize": true,
        4943  +
    "region": "us-east-1",
        4944  +
    "service": "service",
        4945  +
    "sign_body": false,
        4946  +
    "timestamp": "2015-08-30T12:36:00Z"
        4947  +
}
              \
 No newline at end of file
 3898   4948   
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
 3899   4949   
similarity index 99%
 3900   4950   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3901   4951   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3902   4952   
index 2e36c20..a51f1ba 100644
 3903         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
        4953  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3904   4954   
@@ -1,9 +1,9 @@
 3905   4955   
GET
 3906   4956   
/example
 3907   4957   
 3908   4958   
host:example.amazonaws.com
 3909   4959   
x-amz-date:20150830T123600Z
 3910   4960   
x-amz-region-set:us-east-1
 3911   4961   
 3912   4962   
host;x-amz-date;x-amz-region-set
 3913         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4963  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3914   4964   
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
 3915   4965   
new file mode 100644
 3916   4966   
index 0000000..f5c871f
 3917         -
-- /dev/null
        4967  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 3918   4968   
@@ -0,0 +1 @@
        4969  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 3919   4970   
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
 3920   4971   
new file mode 100644
 3921   4972   
index 0000000..bda4718
 3922         -
-- /dev/null
        4973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 3923   4974   
@@ -0,0 +1,6 @@
        4975  +
GET /./example HTTP/1.1
        4976  +
Host:example.amazonaws.com
        4977  +
X-Amz-Date:20150830T123600Z
        4978  +
X-Amz-Region-Set:us-east-1
        4979  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        4980  +
 3924   4981   
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
 3925   4982   
similarity index 99%
 3926   4983   
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
 3927   4984   
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
 3928   4985   
index cd30e8b..2ffe879 100644
 3929         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-string-to-sign.txt
        4986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 3930   4987   
@@ -1,4 +1,4 @@
 3931   4988   
AWS4-ECDSA-P256-SHA256
 3932   4989   
20150830T123600Z
 3933   4990   
20150830/service/aws4_request
 3934         -
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
        4991  +
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
              \
 No newline at end of file
 3935   4992   
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
 3936   4993   
new file mode 100644
 3937   4994   
index 0000000..379dcb2
 3938         -
-- /dev/null
        4995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 3939   4996   
@@ -0,0 +1,4 @@
        4997  +
{
        4998  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4999  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5000  +
}
 3940   5001   
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
 3941   5002   
similarity index 99%
 3942   5003   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3943   5004   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3944   5005   
index 77cf28d..45151ea 100644
 3945         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
        5006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3946   5007   
@@ -1,7 +1,7 @@
 3947   5008   
GET
 3948   5009   
/example
 3949   5010   
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
 3950   5011   
host:example.amazonaws.com
 3951   5012   
 3952   5013   
host
 3953         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5014  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3954   5015   
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
 3955   5016   
new file mode 100644
 3956   5017   
index 0000000..11ad7bf
 3957         -
-- /dev/null
        5018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 3958   5019   
@@ -0,0 +1 @@
        5020  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 3959   5021   
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
 3960   5022   
new file mode 100644
 3961   5023   
index 0000000..a7537b1
 3962         -
-- /dev/null
        5024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 3963   5025   
@@ -0,0 +1,3 @@
        5026  +
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
        5027  +
Host:example.amazonaws.com
        5028  +
 3964   5029   
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
 3965   5030   
similarity index 99%
 3966   5031   
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
 3967   5032   
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
 3968   5033   
index 49d9b24..b486672 100644
 3969         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-string-to-sign.txt
        5034  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 3970   5035   
@@ -1,4 +1,4 @@
 3971   5036   
AWS4-ECDSA-P256-SHA256
 3972   5037   
20150830T123600Z
 3973   5038   
20150830/service/aws4_request
 3974         -
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
        5039  +
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
              \
 No newline at end of file
 3975   5040   
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
 3976   5041   
similarity index 65%
 3977   5042   
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
 3978   5043   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3979   5044   
index 3c91071..5d919c9 100644
 3980         -
-- 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
        5045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3981   5046   
@@ -1,3 +1,2 @@
 3982   5047   
GET /./example HTTP/1.1
 3983   5048   
Host:example.amazonaws.com
 3984         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3985   5049   
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
 3986   5050   
new file mode 100644
 3987   5051   
index 0000000..7bee5c7
 3988         -
-- /dev/null
        5052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 3989   5053   
@@ -0,0 +1,12 @@
        5054  +
{
        5055  +
    "credentials": {
        5056  +
        "access_key_id": "AKIDEXAMPLE",
        5057  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5058  +
    },
        5059  +
    "expiration_in_seconds": 3600,
        5060  +
    "normalize": false,
        5061  +
    "region": "us-east-1",
        5062  +
    "service": "service",
        5063  +
    "sign_body": false,
        5064  +
    "timestamp": "2015-08-30T12:36:00Z"
        5065  +
}
              \
 No newline at end of file
 3990   5066   
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
 3991   5067   
similarity index 99%
 3992   5068   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3993   5069   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3994   5070   
index 4444842..2355a69 100644
 3995         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
        5071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3996   5072   
@@ -1,9 +1,9 @@
 3997   5073   
GET
 3998   5074   
/./example
 3999   5075   
 4000   5076   
host:example.amazonaws.com
 4001   5077   
x-amz-date:20150830T123600Z
 4002   5078   
x-amz-region-set:us-east-1
 4003   5079   
 4004   5080   
host;x-amz-date;x-amz-region-set
 4005         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5081  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4006   5082   
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
 4007   5083   
new file mode 100644
 4008   5084   
index 0000000..9c8f737
 4009         -
-- /dev/null
        5085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 4010   5086   
@@ -0,0 +1 @@
        5087  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 4011   5088   
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
 4012   5089   
new file mode 100644
 4013   5090   
index 0000000..aa5980d
 4014         -
-- /dev/null
        5091  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 4015   5092   
@@ -0,0 +1,6 @@
        5093  +
GET /./example HTTP/1.1
        5094  +
Host:example.amazonaws.com
        5095  +
X-Amz-Date:20150830T123600Z
        5096  +
X-Amz-Region-Set:us-east-1
        5097  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        5098  +
 4016   5099   
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
 4017   5100   
similarity index 99%
 4018   5101   
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
 4019   5102   
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
 4020   5103   
index cc63510..d056816 100644
 4021         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
        5104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 4022   5105   
@@ -1,4 +1,4 @@
 4023   5106   
AWS4-ECDSA-P256-SHA256
 4024   5107   
20150830T123600Z
 4025   5108   
20150830/service/aws4_request
 4026         -
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
        5109  +
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
              \
 No newline at end of file
 4027   5110   
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
 4028   5111   
new file mode 100644
 4029   5112   
index 0000000..379dcb2
 4030         -
-- /dev/null
        5113  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 4031   5114   
@@ -0,0 +1,4 @@
        5115  +
{
        5116  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5117  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5118  +
}
 4032   5119   
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
 4033   5120   
similarity index 99%
 4034   5121   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4035   5122   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4036   5123   
index ed2cb2d..df9928e 100644
 4037         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
        5124  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4038   5125   
@@ -1,7 +1,7 @@
 4039   5126   
GET
 4040   5127   
/./example
 4041   5128   
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
 4042   5129   
host:example.amazonaws.com
 4043   5130   
 4044   5131   
host
 4045         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5132  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4046   5133   
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
 4047   5134   
new file mode 100644
 4048   5135   
index 0000000..bb4d86b
 4049         -
-- /dev/null
        5136  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 4050   5137   
@@ -0,0 +1 @@
        5138  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 4051   5139   
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
 4052   5140   
new file mode 100644
 4053   5141   
index 0000000..0061136
 4054         -
-- /dev/null
        5142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 4055   5143   
@@ -0,0 +1,3 @@
        5144  +
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
        5145  +
Host:example.amazonaws.com
        5146  +
 4056   5147   
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
 4057   5148   
similarity index 99%
 4058   5149   
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
 4059   5150   
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
 4060   5151   
index c9f3b6d..418f2d6 100644
 4061         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
        5152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 4062   5153   
@@ -1,4 +1,4 @@
 4063   5154   
AWS4-ECDSA-P256-SHA256
 4064   5155   
20150830T123600Z
 4065   5156   
20150830/service/aws4_request
 4066         -
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
        5157  +
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
              \
 No newline at end of file
 4067   5158   
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
 4068   5159   
new file mode 100644
 4069   5160   
index 0000000..5d919c9
 4070         -
-- /dev/null
        5161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 4071   5162   
@@ -0,0 +1,2 @@
        5163  +
GET /./example HTTP/1.1
        5164  +
Host:example.amazonaws.com
 4072   5165   
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
 4073   5166   
new file mode 100644
 4074   5167   
index 0000000..7bee5c7
 4075         -
-- /dev/null
        5168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 4076   5169   
@@ -0,0 +1,12 @@
        5170  +
{
        5171  +
    "credentials": {
        5172  +
        "access_key_id": "AKIDEXAMPLE",
        5173  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5174  +
    },
        5175  +
    "expiration_in_seconds": 3600,
        5176  +
    "normalize": false,
        5177  +
    "region": "us-east-1",
        5178  +
    "service": "service",
        5179  +
    "sign_body": false,
        5180  +
    "timestamp": "2015-08-30T12:36:00Z"
        5181  +
}
              \
 No newline at end of file
 4077   5182   
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
 4078   5183   
similarity index 99%
 4079   5184   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 4080   5185   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4081   5186   
index 8a4d33b..5f809da 100644
 4082         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
        5187  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4083   5188   
@@ -1,9 +1,9 @@
 4084   5189   
GET
 4085   5190   
//
 4086   5191   
 4087   5192   
host:example.amazonaws.com
 4088   5193   
x-amz-date:20150830T123600Z
 4089   5194   
x-amz-region-set:us-east-1
 4090   5195   
 4091   5196   
host;x-amz-date;x-amz-region-set
 4092         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5197  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4093   5198   
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
 4094   5199   
new file mode 100644
 4095   5200   
index 0000000..60179e9
 4096         -
-- /dev/null
        5201  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 4097   5202   
@@ -0,0 +1 @@
        5203  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 4098   5204   
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
 4099   5205   
new file mode 100644
 4100   5206   
index 0000000..72bf1b7
 4101         -
-- /dev/null
        5207  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 4102   5208   
@@ -0,0 +1,6 @@
        5209  +
GET // HTTP/1.1
        5210  +
Host:example.amazonaws.com
        5211  +
X-Amz-Date:20150830T123600Z
        5212  +
X-Amz-Region-Set:us-east-1
        5213  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        5214  +
 4103   5215   
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
 4104   5216   
similarity index 99%
 4105   5217   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 4106   5218   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4107   5219   
index 874c01c..2b3bf67 100644
 4108         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
        5220  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4109   5221   
@@ -1,4 +1,4 @@
 4110   5222   
AWS4-ECDSA-P256-SHA256
 4111   5223   
20150830T123600Z
 4112   5224   
20150830/service/aws4_request
 4113         -
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
        5225  +
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
              \
 No newline at end of file
 4114   5226   
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
 4115   5227   
new file mode 100644
 4116   5228   
index 0000000..379dcb2
 4117         -
-- /dev/null
        5229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 4118   5230   
@@ -0,0 +1,4 @@
        5231  +
{
        5232  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5233  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5234  +
}
 4119   5235   
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
 4120   5236   
similarity index 99%
 4121   5237   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 4122   5238   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4123   5239   
index 81d7b0b..d10ad29 100644
 4124         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
        5240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4125   5241   
@@ -1,7 +1,7 @@
 4126   5242   
GET
 4127   5243   
//
 4128   5244   
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
 4129   5245   
host:example.amazonaws.com
 4130   5246   
 4131   5247   
host
 4132         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5248  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4133   5249   
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
 4134   5250   
new file mode 100644
 4135   5251   
index 0000000..d9bd824
 4136         -
-- /dev/null
        5252  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 4137   5253   
@@ -0,0 +1 @@
        5254  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 4138   5255   
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
 4139   5256   
new file mode 100644
 4140   5257   
index 0000000..19d1d46
 4141         -
-- /dev/null
        5258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 4142   5259   
@@ -0,0 +1,3 @@
        5260  +
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
        5261  +
Host:example.amazonaws.com
        5262  +
 4143   5263   
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
 4144   5264   
similarity index 99%
 4145   5265   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 4146   5266   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4147   5267   
index 17e5279..24c8a5e 100644
 4148         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
        5268  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4149   5269   
@@ -1,4 +1,4 @@
 4150   5270   
AWS4-ECDSA-P256-SHA256
 4151   5271   
20150830T123600Z
 4152   5272   
20150830/service/aws4_request
 4153         -
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
        5273  +
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
              \
 No newline at end of file
 4154   5274   
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
 4155   5275   
new file mode 100644
 4156   5276   
index 0000000..25bc21e
 4157         -
-- /dev/null
        5277  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 4158   5278   
@@ -0,0 +1,2 @@
        5279  +
GET // HTTP/1.1
        5280  +
Host:example.amazonaws.com
 4159   5281   
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
 4160   5282   
new file mode 100644
 4161   5283   
index 0000000..0468d80
 4162         -
-- /dev/null
        5284  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 4163   5285   
@@ -0,0 +1,12 @@
        5286  +
{
        5287  +
    "credentials": {
        5288  +
        "access_key_id": "AKIDEXAMPLE",
        5289  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5290  +
    },
        5291  +
    "expiration_in_seconds": 3600,
        5292  +
    "normalize": true,
        5293  +
    "region": "us-east-1",
        5294  +
    "service": "service",
        5295  +
    "sign_body": false,
        5296  +
    "timestamp": "2015-08-30T12:36:00Z"
        5297  +
}
              \
 No newline at end of file
 4164   5298   
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
 4165   5299   
similarity index 99%
 4166   5300   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 4167   5301   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4168   5302   
index fdf9c48..a8e9e02 100644
 4169         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
        5303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4170   5304   
@@ -1,9 +1,9 @@
 4171   5305   
GET
 4172   5306   
/example/
 4173   5307   
 4174   5308   
host:example.amazonaws.com
 4175   5309   
x-amz-date:20150830T123600Z
 4176   5310   
x-amz-region-set:us-east-1
 4177   5311   
 4178   5312   
host;x-amz-date;x-amz-region-set
 4179         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5313  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4180   5314   
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
 4181   5315   
new file mode 100644
 4182   5316   
index 0000000..ffe1b60
 4183         -
-- /dev/null
        5317  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 4184   5318   
@@ -0,0 +1 @@
        5319  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 4185   5320   
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
 4186   5321   
new file mode 100644
 4187   5322   
index 0000000..3189f55
 4188         -
-- /dev/null
        5323  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 4189   5324   
@@ -0,0 +1,6 @@
        5325  +
GET //example// HTTP/1.1
        5326  +
Host:example.amazonaws.com
        5327  +
X-Amz-Date:20150830T123600Z
        5328  +
X-Amz-Region-Set:us-east-1
        5329  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        5330  +
 4190   5331   
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
 4191   5332   
similarity index 99%
 4192   5333   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 4193   5334   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4194   5335   
index 8f9c95e..430020e 100644
 4195         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
        5336  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4196   5337   
@@ -1,4 +1,4 @@
 4197   5338   
AWS4-ECDSA-P256-SHA256
 4198   5339   
20150830T123600Z
 4199   5340   
20150830/service/aws4_request
 4200         -
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
        5341  +
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
              \
 No newline at end of file
 4201   5342   
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
 4202   5343   
new file mode 100644
 4203   5344   
index 0000000..379dcb2
 4204         -
-- /dev/null
        5345  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 4205   5346   
@@ -0,0 +1,4 @@
        5347  +
{
        5348  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5349  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5350  +
}
 4206   5351   
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
 4207   5352   
similarity index 99%
 4208   5353   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 4209   5354   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4210   5355   
index 1046735..8d41e37 100644
 4211         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
        5356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4212   5357   
@@ -1,7 +1,7 @@
 4213   5358   
GET
 4214   5359   
/example/
 4215   5360   
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
 4216   5361   
host:example.amazonaws.com
 4217   5362   
 4218   5363   
host
 4219         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5364  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4220   5365   
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
 4221   5366   
new file mode 100644
 4222   5367   
index 0000000..93a0fa4
 4223         -
-- /dev/null
        5368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 4224   5369   
@@ -0,0 +1 @@
        5370  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 4225   5371   
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
 4226   5372   
new file mode 100644
 4227   5373   
index 0000000..65c8cb6
 4228         -
-- /dev/null
        5374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 4229   5375   
@@ -0,0 +1,3 @@
        5376  +
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
        5377  +
Host:example.amazonaws.com
        5378  +
 4230   5379   
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
 4231   5380   
similarity index 99%
 4232   5381   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 4233   5382   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4234   5383   
index b293cc2..0f4c4c5 100644
 4235         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
        5384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4236   5385   
@@ -1,4 +1,4 @@
 4237   5386   
AWS4-ECDSA-P256-SHA256
 4238   5387   
20150830T123600Z
 4239   5388   
20150830/service/aws4_request
 4240         -
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
        5389  +
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
              \
 No newline at end of file
 4241   5390   
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
 4242   5391   
similarity index 65%
 4243   5392   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 4244   5393   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4245   5394   
index a4307ce..12e0931 100644
 4246         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        5395  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4247   5396   
@@ -1,3 +1,2 @@
 4248   5397   
GET //example// HTTP/1.1
 4249   5398   
Host:example.amazonaws.com
 4250         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4251   5399   
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
 4252   5400   
new file mode 100644
 4253   5401   
index 0000000..7bee5c7
 4254         -
-- /dev/null
        5402  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 4255   5403   
@@ -0,0 +1,12 @@
        5404  +
{
        5405  +
    "credentials": {
        5406  +
        "access_key_id": "AKIDEXAMPLE",
        5407  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5408  +
    },
        5409  +
    "expiration_in_seconds": 3600,
        5410  +
    "normalize": false,
        5411  +
    "region": "us-east-1",
        5412  +
    "service": "service",
        5413  +
    "sign_body": false,
        5414  +
    "timestamp": "2015-08-30T12:36:00Z"
        5415  +
}
              \
 No newline at end of file
 4256   5416   
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
 4257   5417   
similarity index 99%
 4258   5418   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 4259   5419   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4260   5420   
index a9c55f6..76f55ed 100644
 4261         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
        5421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4262   5422   
@@ -1,9 +1,9 @@
 4263   5423   
GET
 4264   5424   
//example//
 4265   5425   
 4266   5426   
host:example.amazonaws.com
 4267   5427   
x-amz-date:20150830T123600Z
 4268   5428   
x-amz-region-set:us-east-1
 4269   5429   
 4270   5430   
host;x-amz-date;x-amz-region-set
 4271         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5431  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4272   5432   
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
 4273   5433   
new file mode 100644
 4274   5434   
index 0000000..de333b2
 4275         -
-- /dev/null
        5435  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 4276   5436   
@@ -0,0 +1 @@
        5437  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 4277   5438   
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
 4278   5439   
new file mode 100644
 4279   5440   
index 0000000..773ce63
 4280         -
-- /dev/null
        5441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 4281   5442   
@@ -0,0 +1,6 @@
        5443  +
GET //example// HTTP/1.1
        5444  +
Host:example.amazonaws.com
        5445  +
X-Amz-Date:20150830T123600Z
        5446  +
X-Amz-Region-Set:us-east-1
        5447  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        5448  +
 4282   5449   
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
 4283   5450   
similarity index 99%
 4284   5451   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 4285   5452   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4286   5453   
index 5c4c2cd..46c3265 100644
 4287         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
        5454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4288   5455   
@@ -1,4 +1,4 @@
 4289   5456   
AWS4-ECDSA-P256-SHA256
 4290   5457   
20150830T123600Z
 4291   5458   
20150830/service/aws4_request
 4292         -
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
        5459  +
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
              \
 No newline at end of file
 4293   5460   
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
 4294   5461   
new file mode 100644
 4295   5462   
index 0000000..379dcb2
 4296         -
-- /dev/null
        5463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 4297   5464   
@@ -0,0 +1,4 @@
        5465  +
{
        5466  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5467  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5468  +
}
 4298   5469   
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
 4299   5470   
similarity index 99%
 4300   5471   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 4301   5472   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4302   5473   
index c878ab4..6047ccf 100644
 4303         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
        5474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4304   5475   
@@ -1,7 +1,7 @@
 4305   5476   
GET
 4306   5477   
//example//
 4307   5478   
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
 4308   5479   
host:example.amazonaws.com
 4309   5480   
 4310   5481   
host
 4311         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5482  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4312   5483   
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
 4313   5484   
new file mode 100644
 4314   5485   
index 0000000..d61fcd0
 4315         -
-- /dev/null
        5486  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 4316   5487   
@@ -0,0 +1 @@
        5488  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 4317   5489   
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
 4318   5490   
new file mode 100644
 4319   5491   
index 0000000..3e37b5b
 4320         -
-- /dev/null
        5492  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 4321   5493   
@@ -0,0 +1,3 @@
        5494  +
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
        5495  +
Host:example.amazonaws.com
        5496  +
 4322   5497   
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
 4323   5498   
similarity index 99%
 4324   5499   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 4325   5500   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4326   5501   
index 5f59645..2537d28 100644
 4327         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
        5502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4328   5503   
@@ -1,4 +1,4 @@
 4329   5504   
AWS4-ECDSA-P256-SHA256
 4330   5505   
20150830T123600Z
 4331   5506   
20150830/service/aws4_request
 4332         -
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
        5507  +
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
              \
 No newline at end of file
 4333   5508   
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
 4334   5509   
new file mode 100644
 4335   5510   
index 0000000..12e0931
 4336         -
-- /dev/null
        5511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 4337   5512   
@@ -0,0 +1,2 @@
        5513  +
GET //example// HTTP/1.1
        5514  +
Host:example.amazonaws.com
 4338   5515   
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
 4339   5516   
new file mode 100644
 4340   5517   
index 0000000..0468d80
 4341         -
-- /dev/null
        5518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 4342   5519   
@@ -0,0 +1,12 @@
        5520  +
{
        5521  +
    "credentials": {
        5522  +
        "access_key_id": "AKIDEXAMPLE",
        5523  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5524  +
    },
        5525  +
    "expiration_in_seconds": 3600,
        5526  +
    "normalize": true,
        5527  +
    "region": "us-east-1",
        5528  +
    "service": "service",
        5529  +
    "sign_body": false,
        5530  +
    "timestamp": "2015-08-30T12:36:00Z"
        5531  +
}
              \
 No newline at end of file
 4343   5532   
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
 4344   5533   
new file mode 100644
 4345   5534   
index 0000000..0b2b616
 4346         -
-- /dev/null
        5535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 4347   5536   
@@ -0,0 +1,9 @@
        5537  +
GET
        5538  +
/example%20space/
        5539  +
        5540  +
host:example.amazonaws.com
        5541  +
x-amz-date:20150830T123600Z
        5542  +
x-amz-region-set:us-east-1
        5543  +
        5544  +
host;x-amz-date;x-amz-region-set
        5545  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4348   5546   
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
 4349   5547   
new file mode 100644
 4350   5548   
index 0000000..6e7841d
 4351         -
-- /dev/null
        5549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 4352   5550   
@@ -0,0 +1 @@
        5551  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 4353   5552   
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
 4354   5553   
new file mode 100644
 4355   5554   
index 0000000..0969cd3
 4356         -
-- /dev/null
        5555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 4357   5556   
@@ -0,0 +1,6 @@
        5557  +
GET /example space/ HTTP/1.1
        5558  +
Host:example.amazonaws.com
        5559  +
X-Amz-Date:20150830T123600Z
        5560  +
X-Amz-Region-Set:us-east-1
        5561  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5562  +
 4358   5563   
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
 4359   5564   
new file mode 100644
 4360   5565   
index 0000000..ddae6e2
 4361         -
-- /dev/null
        5566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4362   5567   
@@ -0,0 +1,4 @@
        5568  +
AWS4-ECDSA-P256-SHA256
        5569  +
20150830T123600Z
        5570  +
20150830/service/aws4_request
        5571  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4363   5572   
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
 4364   5573   
new file mode 100644
 4365   5574   
index 0000000..379dcb2
 4366         -
-- /dev/null
        5575  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4367   5576   
@@ -0,0 +1,4 @@
        5577  +
{
        5578  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5579  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5580  +
}
 4368   5581   
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
 4369   5582   
new file mode 100644
 4370   5583   
index 0000000..a66b3cb
 4371         -
-- /dev/null
        5584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4372   5585   
@@ -0,0 +1,7 @@
        5586  +
GET
        5587  +
/example%20space/
        5588  +
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
        5589  +
host:example.amazonaws.com
        5590  +
        5591  +
host
        5592  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4373   5593   
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
 4374   5594   
new file mode 100644
 4375   5595   
index 0000000..b3253ae
 4376         -
-- /dev/null
        5596  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4377   5597   
@@ -0,0 +1 @@
        5598  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 4378   5599   
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
 4379   5600   
new file mode 100644
 4380   5601   
index 0000000..9e335b2
 4381         -
-- /dev/null
        5602  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4382   5603   
@@ -0,0 +1,3 @@
        5604  +
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
        5605  +
Host:example.amazonaws.com
        5606  +
 4383   5607   
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
 4384   5608   
new file mode 100644
 4385   5609   
index 0000000..b6ff6fb
 4386         -
-- /dev/null
        5610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4387   5611   
@@ -0,0 +1,4 @@
        5612  +
AWS4-ECDSA-P256-SHA256
        5613  +
20150830T123600Z
        5614  +
20150830/service/aws4_request
        5615  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4388   5616   
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
 4389   5617   
new file mode 100644
 4390   5618   
index 0000000..ab509ab
 4391         -
-- /dev/null
        5619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4392   5620   
@@ -0,0 +1,2 @@
        5621  +
GET /example space/ HTTP/1.1
        5622  +
Host:example.amazonaws.com
 4393   5623   
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
 4394   5624   
new file mode 100644
 4395   5625   
index 0000000..7bee5c7
 4396         -
-- /dev/null
        5626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4397   5627   
@@ -0,0 +1,12 @@
        5628  +
{
        5629  +
    "credentials": {
        5630  +
        "access_key_id": "AKIDEXAMPLE",
        5631  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5632  +
    },
        5633  +
    "expiration_in_seconds": 3600,
        5634  +
    "normalize": false,
        5635  +
    "region": "us-east-1",
        5636  +
    "service": "service",
        5637  +
    "sign_body": false,
        5638  +
    "timestamp": "2015-08-30T12:36:00Z"
        5639  +
}
              \
 No newline at end of file
 4398   5640   
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
 4399   5641   
new file mode 100644
 4400   5642   
index 0000000..0b2b616
 4401         -
-- /dev/null
        5643  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4402   5644   
@@ -0,0 +1,9 @@
        5645  +
GET
        5646  +
/example%20space/
        5647  +
        5648  +
host:example.amazonaws.com
        5649  +
x-amz-date:20150830T123600Z
        5650  +
x-amz-region-set:us-east-1
        5651  +
        5652  +
host;x-amz-date;x-amz-region-set
        5653  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4403   5654   
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
 4404   5655   
new file mode 100644
 4405   5656   
index 0000000..e75ae08
 4406         -
-- /dev/null
        5657  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4407   5658   
@@ -0,0 +1 @@
        5659  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4408   5660   
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
 4409   5661   
new file mode 100644
 4410   5662   
index 0000000..cb089db
 4411         -
-- /dev/null
        5663  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4412   5664   
@@ -0,0 +1,6 @@
        5665  +
GET /example space/ HTTP/1.1
        5666  +
Host:example.amazonaws.com
        5667  +
X-Amz-Date:20150830T123600Z
        5668  +
X-Amz-Region-Set:us-east-1
        5669  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5670  +
 4413   5671   
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
 4414   5672   
new file mode 100644
 4415   5673   
index 0000000..ddae6e2
 4416         -
-- /dev/null
        5674  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4417   5675   
@@ -0,0 +1,4 @@
        5676  +
AWS4-ECDSA-P256-SHA256
        5677  +
20150830T123600Z
        5678  +
20150830/service/aws4_request
        5679  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4418   5680   
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
 4419   5681   
new file mode 100644
 4420   5682   
index 0000000..379dcb2
 4421         -
-- /dev/null
        5683  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4422   5684   
@@ -0,0 +1,4 @@
        5685  +
{
        5686  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5687  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5688  +
}
 4423   5689   
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
 4424   5690   
new file mode 100644
 4425   5691   
index 0000000..a66b3cb
 4426         -
-- /dev/null
        5692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4427   5693   
@@ -0,0 +1,7 @@
        5694  +
GET
        5695  +
/example%20space/
        5696  +
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
        5697  +
host:example.amazonaws.com
        5698  +
        5699  +
host
        5700  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4428   5701   
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
 4429   5702   
new file mode 100644
 4430   5703   
index 0000000..66a80c3
 4431         -
-- /dev/null
        5704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4432   5705   
@@ -0,0 +1 @@
        5706  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4433   5707   
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
 4434   5708   
new file mode 100644
 4435   5709   
index 0000000..7d1b9d9
 4436         -
-- /dev/null
        5710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4437   5711   
@@ -0,0 +1,3 @@
        5712  +
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
        5713  +
Host:example.amazonaws.com
        5714  +
 4438   5715   
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
 4439   5716   
new file mode 100644
 4440   5717   
index 0000000..b6ff6fb
 4441         -
-- /dev/null
        5718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4442   5719   
@@ -0,0 +1,4 @@
        5720  +
AWS4-ECDSA-P256-SHA256
        5721  +
20150830T123600Z
        5722  +
20150830/service/aws4_request
        5723  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4443   5724   
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
 4444   5725   
new file mode 100644
 4445   5726   
index 0000000..ab509ab
 4446         -
-- /dev/null
        5727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4447   5728   
@@ -0,0 +1,2 @@
        5729  +
GET /example space/ HTTP/1.1
        5730  +
Host:example.amazonaws.com
 4448   5731   
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
 4449   5732   
new file mode 100644
 4450   5733   
index 0000000..0468d80
 4451         -
-- /dev/null
        5734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4452   5735   
@@ -0,0 +1,12 @@
        5736  +
{
        5737  +
    "credentials": {
        5738  +
        "access_key_id": "AKIDEXAMPLE",
        5739  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5740  +
    },
        5741  +
    "expiration_in_seconds": 3600,
        5742  +
    "normalize": true,
        5743  +
    "region": "us-east-1",
        5744  +
    "service": "service",
        5745  +
    "sign_body": false,
        5746  +
    "timestamp": "2015-08-30T12:36:00Z"
        5747  +
}
              \
 No newline at end of file
 4453   5748   
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
 4454   5749   
similarity index 99%
 4455   5750   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4456   5751   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4457   5752   
index b0db648..46d76bb 100644
 4458         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
        5753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4459   5754   
@@ -1,9 +1,9 @@
 4460   5755   
GET
 4461   5756   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4462   5757   
 4463   5758   
host:example.amazonaws.com
 4464   5759   
x-amz-date:20150830T123600Z
 4465   5760   
x-amz-region-set:us-east-1
 4466   5761   
 4467   5762   
host;x-amz-date;x-amz-region-set
 4468         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5763  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4469   5764   
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
 4470   5765   
new file mode 100644
 4471   5766   
index 0000000..53c0cb6
 4472         -
-- /dev/null
        5767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4473   5768   
@@ -0,0 +1 @@
        5769  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4474   5770   
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
 4475   5771   
new file mode 100644
 4476   5772   
index 0000000..3bdb653
 4477         -
-- /dev/null
        5773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4478   5774   
@@ -0,0 +1,6 @@
        5775  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5776  +
Host:example.amazonaws.com
        5777  +
X-Amz-Date:20150830T123600Z
        5778  +
X-Amz-Region-Set:us-east-1
        5779  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5780  +
 4479   5781   
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
 4480   5782   
similarity index 99%
 4481   5783   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4482   5784   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4483   5785   
index 20c7cd6..3b30173 100644
 4484         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
        5786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4485   5787   
@@ -1,4 +1,4 @@
 4486   5788   
AWS4-ECDSA-P256-SHA256
 4487   5789   
20150830T123600Z
 4488   5790   
20150830/service/aws4_request
 4489         -
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
        5791  +
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
              \
 No newline at end of file
 4490   5792   
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
 4491   5793   
new file mode 100644
 4492   5794   
index 0000000..379dcb2
 4493         -
-- /dev/null
        5795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4494   5796   
@@ -0,0 +1,4 @@
        5797  +
{
        5798  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5799  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5800  +
}
 4495   5801   
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
 4496   5802   
similarity index 99%
 4497   5803   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4498   5804   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4499   5805   
index f9fb726..7e93f58 100644
 4500         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
        5806  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4501   5807   
@@ -1,7 +1,7 @@
 4502   5808   
GET
 4503   5809   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4504   5810   
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
 4505   5811   
host:example.amazonaws.com
 4506   5812   
 4507   5813   
host
 4508         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5814  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4509   5815   
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
 4510   5816   
new file mode 100644
 4511   5817   
index 0000000..48311a8
 4512         -
-- /dev/null
        5818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4513   5819   
@@ -0,0 +1 @@
        5820  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4514   5821   
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
 4515   5822   
new file mode 100644
 4516   5823   
index 0000000..82da9be
 4517         -
-- /dev/null
        5824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4518   5825   
@@ -0,0 +1,3 @@
        5826  +
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
        5827  +
Host:example.amazonaws.com
        5828  +
 4519   5829   
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
 4520   5830   
similarity index 99%
 4521   5831   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4522   5832   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4523   5833   
index ef06e89..4aab9a2 100644
 4524         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
        5834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4525   5835   
@@ -1,4 +1,4 @@
 4526   5836   
AWS4-ECDSA-P256-SHA256
 4527   5837   
20150830T123600Z
 4528   5838   
20150830/service/aws4_request
 4529         -
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
        5839  +
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
              \
 No newline at end of file
 4530   5840   
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
 4531   5841   
similarity index 80%
 4532   5842   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4533   5843   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4534   5844   
index da760cd..a149694 100644
 4535         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4536   5846   
@@ -1,3 +1,2 @@
 4537   5847   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4538   5848   
Host:example.amazonaws.com
 4539         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4540   5849   
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
 4541   5850   
new file mode 100644
 4542   5851   
index 0000000..0468d80
 4543         -
-- /dev/null
        5852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4544   5853   
@@ -0,0 +1,12 @@
        5854  +
{
        5855  +
    "credentials": {
        5856  +
        "access_key_id": "AKIDEXAMPLE",
        5857  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5858  +
    },
        5859  +
    "expiration_in_seconds": 3600,
        5860  +
    "normalize": true,
        5861  +
    "region": "us-east-1",
        5862  +
    "service": "service",
        5863  +
    "sign_body": false,
        5864  +
    "timestamp": "2015-08-30T12:36:00Z"
        5865  +
}
              \
 No newline at end of file
 4545   5866   
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
 4546   5867   
new file mode 100644
 4547   5868   
index 0000000..0f1afe7
 4548         -
-- /dev/null
        5869  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4549   5870   
@@ -0,0 +1,9 @@
        5871  +
GET
        5872  +
/%E1%88%B4
        5873  +
        5874  +
host:example.amazonaws.com
        5875  +
x-amz-date:20150830T123600Z
        5876  +
x-amz-region-set:us-east-1
        5877  +
        5878  +
host;x-amz-date;x-amz-region-set
        5879  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4550   5880   
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
 4551   5881   
new file mode 100644
 4552   5882   
index 0000000..4b9af6c
 4553         -
-- /dev/null
        5883  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4554   5884   
@@ -0,0 +1 @@
        5885  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4555   5886   
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
 4556   5887   
new file mode 100644
 4557   5888   
index 0000000..d42d7b3
 4558         -
-- /dev/null
        5889  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4559   5890   
@@ -0,0 +1,6 @@
        5891  +
GET /ሴ HTTP/1.1
        5892  +
Host:example.amazonaws.com
        5893  +
X-Amz-Date:20150830T123600Z
        5894  +
X-Amz-Region-Set:us-east-1
        5895  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        5896  +
 4560   5897   
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
 4561   5898   
new file mode 100644
 4562   5899   
index 0000000..0827f62
 4563         -
-- /dev/null
        5900  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4564   5901   
@@ -0,0 +1,4 @@
        5902  +
AWS4-ECDSA-P256-SHA256
        5903  +
20150830T123600Z
        5904  +
20150830/service/aws4_request
        5905  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4565   5906   
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
 4566   5907   
new file mode 100644
 4567   5908   
index 0000000..379dcb2
 4568         -
-- /dev/null
        5909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4569   5910   
@@ -0,0 +1,4 @@
        5911  +
{
        5912  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5913  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5914  +
}
 4570   5915   
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
 4571   5916   
new file mode 100644
 4572   5917   
index 0000000..a41a2f8
 4573         -
-- /dev/null
        5918  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4574   5919   
@@ -0,0 +1,7 @@
        5920  +
GET
        5921  +
/%E1%88%B4
        5922  +
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
        5923  +
host:example.amazonaws.com
        5924  +
        5925  +
host
        5926  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4575   5927   
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
 4576   5928   
new file mode 100644
 4577   5929   
index 0000000..a5c7f4f
 4578         -
-- /dev/null
        5930  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4579   5931   
@@ -0,0 +1 @@
        5932  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4580   5933   
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
 4581   5934   
new file mode 100644
 4582   5935   
index 0000000..492ed33
 4583         -
-- /dev/null
        5936  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4584   5937   
@@ -0,0 +1,3 @@
        5938  +
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
        5939  +
Host:example.amazonaws.com
        5940  +
 4585   5941   
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
 4586   5942   
new file mode 100644
 4587   5943   
index 0000000..a93108f
 4588         -
-- /dev/null
        5944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4589   5945   
@@ -0,0 +1,4 @@
        5946  +
AWS4-ECDSA-P256-SHA256
        5947  +
20150830T123600Z
        5948  +
20150830/service/aws4_request
        5949  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4590   5950   
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
 4591   5951   
new file mode 100644
 4592   5952   
index 0000000..9e273f6
 4593         -
-- /dev/null
        5953  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4594   5954   
@@ -0,0 +1,2 @@
        5955  +
GET /ሴ HTTP/1.1
        5956  +
Host:example.amazonaws.com
 4595   5957   
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
 4596   5958   
new file mode 100644
 4597   5959   
index 0000000..0468d80
 4598         -
-- /dev/null
        5960  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4599   5961   
@@ -0,0 +1,12 @@
        5962  +
{
        5963  +
    "credentials": {
        5964  +
        "access_key_id": "AKIDEXAMPLE",
        5965  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5966  +
    },
        5967  +
    "expiration_in_seconds": 3600,
        5968  +
    "normalize": true,
        5969  +
    "region": "us-east-1",
        5970  +
    "service": "service",
        5971  +
    "sign_body": false,
        5972  +
    "timestamp": "2015-08-30T12:36:00Z"
        5973  +
}
              \
 No newline at end of file
 4600   5974   
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
 4601   5975   
similarity index 99%
 4602   5976   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4603   5977   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4604   5978   
index bb9d4bf..edc0bb4 100644
 4605         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
        5979  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4606   5980   
@@ -1,9 +1,9 @@
 4607   5981   
GET
 4608   5982   
/
 4609   5983   
Param1=value1
 4610   5984   
host:example.amazonaws.com
 4611   5985   
x-amz-date:20150830T123600Z
 4612   5986   
x-amz-region-set:us-east-1
 4613   5987   
 4614   5988   
host;x-amz-date;x-amz-region-set
 4615         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5989  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4616   5990   
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
 4617   5991   
new file mode 100644
 4618   5992   
index 0000000..ee9a272
 4619         -
-- /dev/null
        5993  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4620   5994   
@@ -0,0 +1 @@
        5995  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4621   5996   
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
 4622   5997   
new file mode 100644
 4623   5998   
index 0000000..2090343
 4624         -
-- /dev/null
        5999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4625   6000   
@@ -0,0 +1,6 @@
        6001  +
GET /?Param1=value1 HTTP/1.1
        6002  +
Host:example.amazonaws.com
        6003  +
X-Amz-Date:20150830T123600Z
        6004  +
X-Amz-Region-Set:us-east-1
        6005  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        6006  +
 4626   6007   
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
 4627   6008   
similarity index 99%
 4628   6009   
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
 4629   6010   
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
 4630   6011   
index a176f1d..06ed74f 100644
 4631         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-string-to-sign.txt
        6012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-string-to-sign.txt
 4632   6013   
@@ -1,4 +1,4 @@
 4633   6014   
AWS4-ECDSA-P256-SHA256
 4634   6015   
20150830T123600Z
 4635   6016   
20150830/service/aws4_request
 4636         -
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
        6017  +
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
              \
 No newline at end of file
 4637   6018   
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
 4638   6019   
new file mode 100644
 4639   6020   
index 0000000..379dcb2
 4640         -
-- /dev/null
        6021  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4641   6022   
@@ -0,0 +1,4 @@
        6023  +
{
        6024  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6025  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6026  +
}
 4642   6027   
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
 4643   6028   
similarity index 99%
 4644   6029   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4645   6030   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4646   6031   
index 344384b..a875d70 100644
 4647         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
        6032  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4648   6033   
@@ -1,7 +1,7 @@
 4649   6034   
GET
 4650   6035   
/
 4651   6036   
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
 4652   6037   
host:example.amazonaws.com
 4653   6038   
 4654   6039   
host
 4655         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6040  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4656   6041   
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
 4657   6042   
new file mode 100644
 4658   6043   
index 0000000..ef93624
 4659         -
-- /dev/null
        6044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4660   6045   
@@ -0,0 +1 @@
        6046  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4661   6047   
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
 4662   6048   
new file mode 100644
 4663   6049   
index 0000000..92829f7
 4664         -
-- /dev/null
        6050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4665   6051   
@@ -0,0 +1,3 @@
        6052  +
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
        6053  +
Host:example.amazonaws.com
        6054  +
 4666   6055   
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
 4667   6056   
similarity index 99%
 4668   6057   
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
 4669   6058   
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
 4670   6059   
index b625052..4ff9191 100644
 4671         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-string-to-sign.txt
        6060  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-string-to-sign.txt
 4672   6061   
@@ -1,4 +1,4 @@
 4673   6062   
AWS4-ECDSA-P256-SHA256
 4674   6063   
20150830T123600Z
 4675   6064   
20150830/service/aws4_request
 4676         -
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
        6065  +
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
              \
 No newline at end of file
 4677   6066   
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
 4678   6067   
similarity index 67%
 4679   6068   
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
 4680   6069   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4681   6070   
index 970d0a0..f4a03bb 100644
 4682         -
-- 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
        6071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4683   6072   
@@ -1,3 +1,2 @@
 4684   6073   
GET /?Param1=value1 HTTP/1.1
 4685   6074   
Host:example.amazonaws.com
 4686         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4687   6075   
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
 4688   6076   
new file mode 100644
 4689   6077   
index 0000000..0468d80
 4690         -
-- /dev/null
        6078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4691   6079   
@@ -0,0 +1,12 @@
        6080  +
{
        6081  +
    "credentials": {
        6082  +
        "access_key_id": "AKIDEXAMPLE",
        6083  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6084  +
    },
        6085  +
    "expiration_in_seconds": 3600,
        6086  +
    "normalize": true,
        6087  +
    "region": "us-east-1",
        6088  +
    "service": "service",
        6089  +
    "sign_body": false,
        6090  +
    "timestamp": "2015-08-30T12:36:00Z"
        6091  +
}
              \
 No newline at end of file
 4692   6092   
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
 4693   6093   
new file mode 100644
 4694   6094   
index 0000000..da07537
 4695         -
-- /dev/null
        6095  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4696   6096   
@@ -0,0 +1,9 @@
        6097  +
GET
        6098  +
/
        6099  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        6100  +
host:example.amazonaws.com
        6101  +
x-amz-date:20150830T123600Z
        6102  +
x-amz-region-set:us-east-1
        6103  +
        6104  +
host;x-amz-date;x-amz-region-set
        6105  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4697   6106   
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
 4698   6107   
new file mode 100644
 4699   6108   
index 0000000..edb21e5
 4700         -
-- /dev/null
        6109  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4701   6110   
@@ -0,0 +1 @@
        6111  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4702   6112   
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
 4703   6113   
new file mode 100644
 4704   6114   
index 0000000..e60394c
 4705         -
-- /dev/null
        6115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4706   6116   
@@ -0,0 +1,6 @@
        6117  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6118  +
Host:example.amazonaws.com
        6119  +
X-Amz-Date:20150830T123600Z
        6120  +
X-Amz-Region-Set:us-east-1
        6121  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        6122  +
 4707   6123   
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
 4708   6124   
new file mode 100644
 4709   6125   
index 0000000..1dfc886
 4710         -
-- /dev/null
        6126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4711   6127   
@@ -0,0 +1,4 @@
        6128  +
AWS4-ECDSA-P256-SHA256
        6129  +
20150830T123600Z
        6130  +
20150830/service/aws4_request
        6131  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4712   6132   
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
 4713   6133   
new file mode 100644
 4714   6134   
index 0000000..379dcb2
 4715         -
-- /dev/null
        6135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4716   6136   
@@ -0,0 +1,4 @@
        6137  +
{
        6138  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6139  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6140  +
}
 4717   6141   
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
 4718   6142   
new file mode 100644
 4719   6143   
index 0000000..e94dc0c
 4720         -
-- /dev/null
        6144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4721   6145   
@@ -0,0 +1,7 @@
        6146  +
GET
        6147  +
/
        6148  +
%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
        6149  +
host:example.amazonaws.com
        6150  +
        6151  +
host
        6152  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4722   6153   
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
 4723   6154   
new file mode 100644
 4724   6155   
index 0000000..7489437
 4725         -
-- /dev/null
        6156  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4726   6157   
@@ -0,0 +1 @@
        6158  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4727   6159   
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
 4728   6160   
new file mode 100644
 4729   6161   
index 0000000..90c0e73
 4730         -
-- /dev/null
        6162  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4731   6163   
@@ -0,0 +1,3 @@
        6164  +
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
        6165  +
Host:example.amazonaws.com
        6166  +
 4732   6167   
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
 4733   6168   
new file mode 100644
 4734   6169   
index 0000000..ab8a711
 4735         -
-- /dev/null
        6170  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4736   6171   
@@ -0,0 +1,4 @@
        6172  +
AWS4-ECDSA-P256-SHA256
        6173  +
20150830T123600Z
        6174  +
20150830/service/aws4_request
        6175  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4737   6176   
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
 4738   6177   
new file mode 100644
 4739   6178   
index 0000000..368c6e3
 4740         -
-- /dev/null
        6179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4741   6180   
@@ -0,0 +1,2 @@
        6181  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6182  +
Host:example.amazonaws.com
 4742   6183   
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
 4743   6184   
new file mode 100644
 4744   6185   
index 0000000..0468d80
 4745         -
-- /dev/null
        6186  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4746   6187   
@@ -0,0 +1,12 @@
        6188  +
{
        6189  +
    "credentials": {
        6190  +
        "access_key_id": "AKIDEXAMPLE",
        6191  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6192  +
    },
        6193  +
    "expiration_in_seconds": 3600,
        6194  +
    "normalize": true,
        6195  +
    "region": "us-east-1",
        6196  +
    "service": "service",
        6197  +
    "sign_body": false,
        6198  +
    "timestamp": "2015-08-30T12:36:00Z"
        6199  +
}
              \
 No newline at end of file
 4747   6200   
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
 4748   6201   
similarity index 99%
 4749   6202   
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
 4750   6203   
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
 4751   6204   
index 74f625a..3db56f7 100644
 4752         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-canonical-request.txt
        6205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-canonical-request.txt
 4753   6206   
@@ -1,9 +1,9 @@
 4754   6207   
GET
 4755   6208   
/
 4756   6209   
Param1=value1&Param2=value2
 4757   6210   
host:example.amazonaws.com
 4758   6211   
x-amz-date:20150830T123600Z
 4759   6212   
x-amz-region-set:us-east-1
 4760   6213   
 4761   6214   
host;x-amz-date;x-amz-region-set
 4762         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6215  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4763   6216   
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
 4764   6217   
new file mode 100644
 4765   6218   
index 0000000..e6042bc
 4766         -
-- /dev/null
        6219  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4767   6220   
@@ -0,0 +1 @@
        6221  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4768   6222   
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
 4769   6223   
new file mode 100644
 4770   6224   
index 0000000..5505969
 4771         -
-- /dev/null
        6225  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4772   6226   
@@ -0,0 +1,6 @@
        6227  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        6228  +
Host:example.amazonaws.com
        6229  +
X-Amz-Date:20150830T123600Z
        6230  +
X-Amz-Region-Set:us-east-1
        6231  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        6232  +
 4773   6233   
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
 4774   6234   
similarity index 99%
 4775   6235   
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
 4776   6236   
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
 4777   6237   
index 44873b7..e8f5e31 100644
 4778         -
-- 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
        6238  +
++ 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
 4779   6239   
@@ -1,4 +1,4 @@
 4780   6240   
AWS4-ECDSA-P256-SHA256
 4781   6241   
20150830T123600Z
 4782   6242   
20150830/service/aws4_request
 4783         -
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
        6243  +
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
              \
 No newline at end of file
 4784   6244   
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
 4785   6245   
new file mode 100644
 4786   6246   
index 0000000..379dcb2
 4787         -
-- /dev/null
        6247  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4788   6248   
@@ -0,0 +1,4 @@
        6249  +
{
        6250  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6251  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6252  +
}
 4789   6253   
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
 4790   6254   
similarity index 99%
 4791   6255   
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
 4792   6256   
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
 4793   6257   
index 6d30727..3fe6a9f 100644
 4794         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-canonical-request.txt
        6258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-canonical-request.txt
 4795   6259   
@@ -1,7 +1,7 @@
 4796   6260   
GET
 4797   6261   
/
 4798   6262   
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
 4799   6263   
host:example.amazonaws.com
 4800   6264   
 4801   6265   
host
 4802         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6266  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4803   6267   
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
 4804   6268   
new file mode 100644
 4805   6269   
index 0000000..3f35de8
 4806         -
-- /dev/null
        6270  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4807   6271   
@@ -0,0 +1 @@
        6272  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 4808   6273   
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
 4809   6274   
new file mode 100644
 4810   6275   
index 0000000..30b336b
 4811         -
-- /dev/null
        6276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 4812   6277   
@@ -0,0 +1,3 @@
        6278  +
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
        6279  +
Host:example.amazonaws.com
        6280  +
 4813   6281   
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
 4814   6282   
similarity index 99%
 4815   6283   
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
 4816   6284   
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
 4817   6285   
index 99d0510..7f0565f 100644
 4818         -
-- 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
        6286  +
++ 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
 4819   6287   
@@ -1,4 +1,4 @@
 4820   6288   
AWS4-ECDSA-P256-SHA256
 4821   6289   
20150830T123600Z
 4822   6290   
20150830/service/aws4_request
 4823         -
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
        6291  +
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
              \
 No newline at end of file
 4824   6292   
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
 4825   6293   
similarity index 100%
 4826   6294   
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
 4827   6295   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 4828   6296   
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
 4829   6297   
new file mode 100644
 4830   6298   
index 0000000..0468d80
 4831         -
-- /dev/null
        6299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 4832   6300   
@@ -0,0 +1,12 @@
        6301  +
{
        6302  +
    "credentials": {
        6303  +
        "access_key_id": "AKIDEXAMPLE",
        6304  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6305  +
    },
        6306  +
    "expiration_in_seconds": 3600,
        6307  +
    "normalize": true,
        6308  +
    "region": "us-east-1",
        6309  +
    "service": "service",
        6310  +
    "sign_body": false,
        6311  +
    "timestamp": "2015-08-30T12:36:00Z"
        6312  +
}
              \
 No newline at end of file
 4833   6313   
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
 4834   6314   
similarity index 99%
 4835   6315   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 4836   6316   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4837   6317   
index 816c862..cc4537a 100644
 4838         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
        6318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4839   6319   
@@ -1,9 +1,9 @@
 4840   6320   
GET
 4841   6321   
/
 4842   6322   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4843   6323   
host:example.amazonaws.com
 4844   6324   
x-amz-date:20150830T123600Z
 4845   6325   
x-amz-region-set:us-east-1
 4846   6326   
 4847   6327   
host;x-amz-date;x-amz-region-set
 4848         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6328  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4849   6329   
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
 4850   6330   
new file mode 100644
 4851   6331   
index 0000000..70d38c1
 4852         -
-- /dev/null
        6332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 4853   6333   
@@ -0,0 +1 @@
        6334  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 4854   6335   
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
 4855   6336   
new file mode 100644
 4856   6337   
index 0000000..0647eea
 4857         -
-- /dev/null
        6338  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 4858   6339   
@@ -0,0 +1,6 @@
        6340  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        6341  +
Host:example.amazonaws.com
        6342  +
X-Amz-Date:20150830T123600Z
        6343  +
X-Amz-Region-Set:us-east-1
        6344  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        6345  +
 4859   6346   
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
 4860   6347   
similarity index 99%
 4861   6348   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 4862   6349   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4863   6350   
index 6129fc5..cc19d14 100644
 4864         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
        6351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4865   6352   
@@ -1,4 +1,4 @@
 4866   6353   
AWS4-ECDSA-P256-SHA256
 4867   6354   
20150830T123600Z
 4868   6355   
20150830/service/aws4_request
 4869         -
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
        6356  +
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
              \
 No newline at end of file
 4870   6357   
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
 4871   6358   
new file mode 100644
 4872   6359   
index 0000000..379dcb2
 4873         -
-- /dev/null
        6360  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 4874   6361   
@@ -0,0 +1,4 @@
        6362  +
{
        6363  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6364  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6365  +
}
 4875   6366   
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
 4876   6367   
similarity index 99%
 4877   6368   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 4878   6369   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4879   6370   
index b77ee9f..ed6a10e 100644
 4880         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
        6371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4881   6372   
@@ -1,7 +1,7 @@
 4882   6373   
GET
 4883   6374   
/
 4884   6375   
-._~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
 4885   6376   
host:example.amazonaws.com
 4886   6377   
 4887   6378   
host
 4888         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6379  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4889   6380   
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
 4890   6381   
new file mode 100644
 4891   6382   
index 0000000..2ceba7b
 4892         -
-- /dev/null
        6383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 4893   6384   
@@ -0,0 +1 @@
        6385  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 4894   6386   
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
 4895   6387   
new file mode 100644
 4896   6388   
index 0000000..0cd6d0a
 4897         -
-- /dev/null
        6389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 4898   6390   
@@ -0,0 +1,3 @@
        6391  +
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
        6392  +
Host:example.amazonaws.com
        6393  +
 4899   6394   
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
 4900   6395   
similarity index 99%
 4901   6396   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 4902   6397   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4903   6398   
index 1cfed7a..aad1421 100644
 4904         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
        6399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4905   6400   
@@ -1,4 +1,4 @@
 4906   6401   
AWS4-ECDSA-P256-SHA256
 4907   6402   
20150830T123600Z
 4908   6403   
20150830/service/aws4_request
 4909         -
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
        6404  +
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
              \
 No newline at end of file
 4910   6405   
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
 4911   6406   
similarity index 86%
 4912   6407   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 4913   6408   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4914   6409   
index d2833b3..36b2fe3 100644
 4915         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        6410  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4916   6411   
@@ -1,3 +1,2 @@
 4917   6412   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4918   6413   
Host:example.amazonaws.com
 4919         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4920   6414   
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
 4921   6415   
new file mode 100644
 4922   6416   
index 0000000..0468d80
 4923         -
-- /dev/null
        6417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 4924   6418   
@@ -0,0 +1,12 @@
        6419  +
{
        6420  +
    "credentials": {
        6421  +
        "access_key_id": "AKIDEXAMPLE",
        6422  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6423  +
    },
        6424  +
    "expiration_in_seconds": 3600,
        6425  +
    "normalize": true,
        6426  +
    "region": "us-east-1",
        6427  +
    "service": "service",
        6428  +
    "sign_body": false,
        6429  +
    "timestamp": "2015-08-30T12:36:00Z"
        6430  +
}
              \
 No newline at end of file
 4925   6431   
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
 4926   6432   
new file mode 100644
 4927   6433   
index 0000000..76db73d
 4928         -
-- /dev/null
        6434  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 4929   6435   
@@ -0,0 +1,9 @@
        6436  +
GET
        6437  +
/
        6438  +
        6439  +
host:example.amazonaws.com
        6440  +
x-amz-date:20150830T123600Z
        6441  +
x-amz-region-set:us-east-1
        6442  +
        6443  +
host;x-amz-date;x-amz-region-set
        6444  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4930   6445   
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
 4931   6446   
new file mode 100644
 4932   6447   
index 0000000..281cc62
 4933         -
-- /dev/null
        6448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 4934   6449   
@@ -0,0 +1 @@
        6450  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 4935   6451   
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
 4936   6452   
new file mode 100644
 4937   6453   
index 0000000..cce9925
 4938         -
-- /dev/null
        6454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 4939   6455   
@@ -0,0 +1,6 @@
        6456  +
GET / HTTP/1.1
        6457  +
Host:example.amazonaws.com
        6458  +
X-Amz-Date:20150830T123600Z
        6459  +
X-Amz-Region-Set:us-east-1
        6460  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        6461  +
 4940   6462   
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
 4941   6463   
new file mode 100644
 4942   6464   
index 0000000..600f1d8
 4943         -
-- /dev/null
        6465  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 4944   6466   
@@ -0,0 +1,4 @@
        6467  +
AWS4-ECDSA-P256-SHA256
        6468  +
20150830T123600Z
        6469  +
20150830/service/aws4_request
        6470  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4945   6471   
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
 4946   6472   
new file mode 100644
 4947   6473   
index 0000000..379dcb2
 4948         -
-- /dev/null
        6474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 4949   6475   
@@ -0,0 +1,4 @@
        6476  +
{
        6477  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6478  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6479  +
}
 4950   6480   
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
 4951   6481   
new file mode 100644
 4952   6482   
index 0000000..779c51c
 4953         -
-- /dev/null
        6483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 4954   6484   
@@ -0,0 +1,7 @@
        6485  +
GET
        6486  +
/
        6487  +
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
        6488  +
host:example.amazonaws.com
        6489  +
        6490  +
host
        6491  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4955   6492   
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
 4956   6493   
new file mode 100644
 4957   6494   
index 0000000..2979e5e
 4958         -
-- /dev/null
        6495  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 4959   6496   
@@ -0,0 +1 @@
        6497  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 4960   6498   
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
 4961   6499   
new file mode 100644
 4962   6500   
index 0000000..1b3179c
 4963         -
-- /dev/null
        6501  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 4964   6502   
@@ -0,0 +1,3 @@
        6503  +
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
        6504  +
Host:example.amazonaws.com
        6505  +
 4965   6506   
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
 4966   6507   
new file mode 100644
 4967   6508   
index 0000000..6e29a7e
 4968         -
-- /dev/null
        6509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 4969   6510   
@@ -0,0 +1,4 @@
        6511  +
AWS4-ECDSA-P256-SHA256
        6512  +
20150830T123600Z
        6513  +
20150830/service/aws4_request
        6514  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4970   6515   
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
 4971   6516   
similarity index 60%
 4972   6517   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 4973   6518   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4974   6519   
index 0f7a9bf..e659c3b 100644
 4975         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        6520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4976   6521   
@@ -1,3 +1,2 @@
 4977   6522   
GET / HTTP/1.1
 4978   6523   
Host:example.amazonaws.com
 4979         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4980   6524   
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
 4981   6525   
new file mode 100644
 4982   6526   
index 0000000..0468d80
 4983         -
-- /dev/null
        6527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 4984   6528   
@@ -0,0 +1,12 @@
        6529  +
{
        6530  +
    "credentials": {
        6531  +
        "access_key_id": "AKIDEXAMPLE",
        6532  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6533  +
    },
        6534  +
    "expiration_in_seconds": 3600,
        6535  +
    "normalize": true,
        6536  +
    "region": "us-east-1",
        6537  +
    "service": "service",
        6538  +
    "sign_body": false,
        6539  +
    "timestamp": "2015-08-30T12:36:00Z"
        6540  +
}
              \
 No newline at end of file
 4985   6541   
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
 4986   6542   
new file mode 100644
 4987   6543   
index 0000000..8841ddf
 4988         -
-- /dev/null
        6544  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 4989   6545   
@@ -0,0 +1,9 @@
        6546  +
GET
        6547  +
/
        6548  +
%E1%88%B4=bar
        6549  +
host:example.amazonaws.com
        6550  +
x-amz-date:20150830T123600Z
        6551  +
x-amz-region-set:us-east-1
        6552  +
        6553  +
host;x-amz-date;x-amz-region-set
        6554  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4990   6555   
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
 4991   6556   
new file mode 100644
 4992   6557   
index 0000000..1497add
 4993         -
-- /dev/null
        6558  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 4994   6559   
@@ -0,0 +1 @@
        6560  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 4995   6561   
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
 4996   6562   
new file mode 100644
 4997   6563   
index 0000000..961bc10
 4998         -
-- /dev/null
        6564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 4999   6565   
@@ -0,0 +1,6 @@
        6566  +
GET /?ሴ=bar HTTP/1.1
        6567  +
Host:example.amazonaws.com
        6568  +
X-Amz-Date:20150830T123600Z
        6569  +
X-Amz-Region-Set:us-east-1
        6570  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        6571  +
 5000   6572   
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
 5001   6573   
new file mode 100644
 5002   6574   
index 0000000..e78ed70
 5003         -
-- /dev/null
        6575  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 5004   6576   
@@ -0,0 +1,4 @@
        6577  +
AWS4-ECDSA-P256-SHA256
        6578  +
20150830T123600Z
        6579  +
20150830/service/aws4_request
        6580  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 5005   6581   
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
 5006   6582   
new file mode 100644
 5007   6583   
index 0000000..379dcb2
 5008         -
-- /dev/null
        6584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 5009   6585   
@@ -0,0 +1,4 @@
        6586  +
{
        6587  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6588  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6589  +
}
 5010   6590   
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
 5011   6591   
new file mode 100644
 5012   6592   
index 0000000..6d5ae93
 5013         -
-- /dev/null
        6593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 5014   6594   
@@ -0,0 +1,7 @@
        6595  +
GET
        6596  +
/
        6597  +
%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
        6598  +
host:example.amazonaws.com
        6599  +
        6600  +
host
        6601  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5015   6602   
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
 5016   6603   
new file mode 100644
 5017   6604   
index 0000000..92107f2
 5018         -
-- /dev/null
        6605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 5019   6606   
@@ -0,0 +1 @@
        6607  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 5020   6608   
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
 5021   6609   
new file mode 100644
 5022   6610   
index 0000000..bb8a75b
 5023         -
-- /dev/null
        6611  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 5024   6612   
@@ -0,0 +1,3 @@
        6613  +
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
        6614  +
Host:example.amazonaws.com
        6615  +
 5025   6616   
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
 5026   6617   
new file mode 100644
 5027   6618   
index 0000000..9fa94c7
 5028         -
-- /dev/null
        6619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 5029   6620   
@@ -0,0 +1,4 @@
        6621  +
AWS4-ECDSA-P256-SHA256
        6622  +
20150830T123600Z
        6623  +
20150830/service/aws4_request
        6624  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 5030   6625   
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
 5031   6626   
new file mode 100644
 5032   6627   
index 0000000..aff333a
 5033         -
-- /dev/null
        6628  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 5034   6629   
@@ -0,0 +1,2 @@
        6630  +
GET /?ሴ=bar HTTP/1.1
        6631  +
Host:example.amazonaws.com
 5035   6632   
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
 5036   6633   
new file mode 100644
 5037   6634   
index 0000000..a334e18
 5038         -
-- /dev/null
        6635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 5039   6636   
@@ -0,0 +1,13 @@
        6637  +
{
        6638  +
    "credentials": {
        6639  +
        "access_key_id": "AKIDEXAMPLE",
        6640  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6641  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6642  +
    },
        6643  +
    "expiration_in_seconds": 3600,
        6644  +
    "normalize": true,
        6645  +
    "region": "us-east-1",
        6646  +
    "service": "service",
        6647  +
    "sign_body": false,
        6648  +
    "timestamp": "2015-08-30T12:36:00Z"
        6649  +
}
              \
 No newline at end of file
 5040   6650   
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
 5041   6651   
similarity index 99%
 5042   6652   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 5043   6653   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5044   6654   
index f14defd..0e9ad42 100644
 5045         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
        6655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5046   6656   
@@ -1,10 +1,10 @@
 5047   6657   
GET
 5048   6658   
/
 5049   6659   
 5050   6660   
host:example.amazonaws.com
 5051   6661   
x-amz-date:20150830T123600Z
 5052   6662   
x-amz-region-set:us-east-1
 5053   6663   
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
 5054   6664   
 5055   6665   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5056         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6666  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5057   6667   
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
 5058   6668   
new file mode 100644
 5059   6669   
index 0000000..a7673b5
 5060         -
-- /dev/null
        6670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 5061   6671   
@@ -0,0 +1 @@
        6672  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 5062   6673   
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
 5063   6674   
new file mode 100644
 5064   6675   
index 0000000..ed16e76
 5065         -
-- /dev/null
        6676  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 5066   6677   
@@ -0,0 +1,7 @@
        6678  +
GET / HTTP/1.1
        6679  +
Host:example.amazonaws.com
        6680  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6681  +
X-Amz-Date:20150830T123600Z
        6682  +
X-Amz-Region-Set:us-east-1
        6683  +
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
        6684  +
 5067   6685   
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
 5068   6686   
similarity index 99%
 5069   6687   
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
 5070   6688   
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
 5071   6689   
index 4edece5..6c1ec65 100644
 5072         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-string-to-sign.txt
        6690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-string-to-sign.txt
 5073   6691   
@@ -1,4 +1,4 @@
 5074   6692   
AWS4-ECDSA-P256-SHA256
 5075   6693   
20150830T123600Z
 5076   6694   
20150830/service/aws4_request
 5077         -
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
        6695  +
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
              \
 No newline at end of file
 5078   6696   
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
 5079   6697   
new file mode 100644
 5080   6698   
index 0000000..379dcb2
 5081         -
-- /dev/null
        6699  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 5082   6700   
@@ -0,0 +1,4 @@
        6701  +
{
        6702  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6703  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6704  +
}
 5083   6705   
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
 5084   6706   
similarity index 99%
 5085   6707   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 5086   6708   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5087   6709   
index 7c042af..1876b42 100644
 5088         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
        6710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5089   6711   
@@ -1,7 +1,7 @@
 5090   6712   
GET
 5091   6713   
/
 5092   6714   
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
 5093   6715   
host:example.amazonaws.com
 5094   6716   
 5095   6717   
host
 5096         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6718  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5097   6719   
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
 5098   6720   
new file mode 100644
 5099   6721   
index 0000000..903dfb4
 5100         -
-- /dev/null
        6722  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 5101   6723   
@@ -0,0 +1 @@
        6724  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 5102   6725   
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
 5103   6726   
new file mode 100644
 5104   6727   
index 0000000..bf1d246
 5105         -
-- /dev/null
        6728  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 5106   6729   
@@ -0,0 +1,3 @@
        6730  +
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
        6731  +
Host:example.amazonaws.com
        6732  +
 5107   6733   
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
 5108   6734   
similarity index 99%
 5109   6735   
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
 5110   6736   
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
 5111   6737   
index 0fd066a..f1b1790 100644
 5112         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-string-to-sign.txt
        6738  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-string-to-sign.txt
 5113   6739   
@@ -1,4 +1,4 @@
 5114   6740   
AWS4-ECDSA-P256-SHA256
 5115   6741   
20150830T123600Z
 5116   6742   
20150830/service/aws4_request
 5117         -
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
        6743  +
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
              \
 No newline at end of file
 5118   6744   
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
 5119   6745   
similarity index 60%
 5120   6746   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 5121   6747   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5122   6748   
index 0f7a9bf..e659c3b 100644
 5123         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6749  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5124   6750   
@@ -1,3 +1,2 @@
 5125   6751   
GET / HTTP/1.1
 5126   6752   
Host:example.amazonaws.com
 5127         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5128   6753   
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
 5129   6754   
new file mode 100644
 5130   6755   
index 0000000..76db73d
 5131         -
-- /dev/null
        6756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 5132   6757   
@@ -0,0 +1,9 @@
        6758  +
GET
        6759  +
/
        6760  +
        6761  +
host:example.amazonaws.com
        6762  +
x-amz-date:20150830T123600Z
        6763  +
x-amz-region-set:us-east-1
        6764  +
        6765  +
host;x-amz-date;x-amz-region-set
        6766  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5133   6767   
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
 5134   6768   
new file mode 100644
 5135   6769   
index 0000000..0468d80
 5136         -
-- /dev/null
        6770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 5137   6771   
@@ -0,0 +1,12 @@
        6772  +
{
        6773  +
    "credentials": {
        6774  +
        "access_key_id": "AKIDEXAMPLE",
        6775  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6776  +
    },
        6777  +
    "expiration_in_seconds": 3600,
        6778  +
    "normalize": true,
        6779  +
    "region": "us-east-1",
        6780  +
    "service": "service",
        6781  +
    "sign_body": false,
        6782  +
    "timestamp": "2015-08-30T12:36:00Z"
        6783  +
}
              \
 No newline at end of file
 5138   6784   
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
 5139   6785   
new file mode 100644
 5140   6786   
index 0000000..76db73d
 5141         -
-- /dev/null
        6787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 5142   6788   
@@ -0,0 +1,9 @@
        6789  +
GET
        6790  +
/
        6791  +
        6792  +
host:example.amazonaws.com
        6793  +
x-amz-date:20150830T123600Z
        6794  +
x-amz-region-set:us-east-1
        6795  +
        6796  +
host;x-amz-date;x-amz-region-set
        6797  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5143   6798   
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
 5144   6799   
new file mode 100644
 5145   6800   
index 0000000..a96ff24
 5146         -
-- /dev/null
        6801  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 5147   6802   
@@ -0,0 +1 @@
        6803  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 5148   6804   
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
 5149   6805   
new file mode 100644
 5150   6806   
index 0000000..689078b
 5151         -
-- /dev/null
        6807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 5152   6808   
@@ -0,0 +1,6 @@
        6809  +
GET / HTTP/1.1
        6810  +
Host:example.amazonaws.com
        6811  +
X-Amz-Date:20150830T123600Z
        6812  +
X-Amz-Region-Set:us-east-1
        6813  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6814  +
 5153   6815   
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
 5154   6816   
new file mode 100644
 5155   6817   
index 0000000..600f1d8
 5156         -
-- /dev/null
        6818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 5157   6819   
@@ -0,0 +1,4 @@
        6820  +
AWS4-ECDSA-P256-SHA256
        6821  +
20150830T123600Z
        6822  +
20150830/service/aws4_request
        6823  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5158   6824   
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
 5159   6825   
new file mode 100644
 5160   6826   
index 0000000..379dcb2
 5161         -
-- /dev/null
        6827  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 5162   6828   
@@ -0,0 +1,4 @@
        6829  +
{
        6830  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6831  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6832  +
}
 5163   6833   
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
 5164   6834   
new file mode 100644
 5165   6835   
index 0000000..779c51c
 5166         -
-- /dev/null
        6836  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 5167   6837   
@@ -0,0 +1,7 @@
        6838  +
GET
        6839  +
/
        6840  +
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
        6841  +
host:example.amazonaws.com
        6842  +
        6843  +
host
        6844  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5168   6845   
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
 5169   6846   
new file mode 100644
 5170   6847   
index 0000000..cc42158
 5171         -
-- /dev/null
        6848  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 5172   6849   
@@ -0,0 +1 @@
        6850  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 5173   6851   
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
 5174   6852   
new file mode 100644
 5175   6853   
index 0000000..dc6d01d
 5176         -
-- /dev/null
        6854  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 5177   6855   
@@ -0,0 +1,3 @@
        6856  +
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
        6857  +
Host:example.amazonaws.com
        6858  +
 5178   6859   
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
 5179   6860   
new file mode 100644
 5180   6861   
index 0000000..6e29a7e
 5181         -
-- /dev/null
        6862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 5182   6863   
@@ -0,0 +1,4 @@
        6864  +
AWS4-ECDSA-P256-SHA256
        6865  +
20150830T123600Z
        6866  +
20150830/service/aws4_request
        6867  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5183   6868   
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
 5184   6869   
new file mode 100644
 5185   6870   
index 0000000..e659c3b
 5186         -
-- /dev/null
        6871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 5187   6872   
@@ -0,0 +1,2 @@
        6873  +
GET / HTTP/1.1
        6874  +
Host:example.amazonaws.com
 5188   6875   
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
 5189   6876   
new file mode 100644
 5190   6877   
index 0000000..600f1d8
 5191         -
-- /dev/null
        6878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 5192   6879   
@@ -0,0 +1,4 @@
        6880  +
AWS4-ECDSA-P256-SHA256
        6881  +
20150830T123600Z
        6882  +
20150830/service/aws4_request
        6883  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5193   6884   
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
 5194   6885   
new file mode 100644
 5195   6886   
index 0000000..0468d80
 5196         -
-- /dev/null
        6887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 5197   6888   
@@ -0,0 +1,12 @@
        6889  +
{
        6890  +
    "credentials": {
        6891  +
        "access_key_id": "AKIDEXAMPLE",
        6892  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6893  +
    },
        6894  +
    "expiration_in_seconds": 3600,
        6895  +
    "normalize": true,
        6896  +
    "region": "us-east-1",
        6897  +
    "service": "service",
        6898  +
    "sign_body": false,
        6899  +
    "timestamp": "2015-08-30T12:36:00Z"
        6900  +
}
              \
 No newline at end of file
 5198   6901   
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
 5199   6902   
similarity index 99%
 5200   6903   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 5201   6904   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5202   6905   
index a6942c1..e881ac7 100644
 5203         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
        6906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5204   6907   
@@ -1,9 +1,9 @@
 5205   6908   
POST
 5206   6909   
/
 5207   6910   
 5208   6911   
host:example.amazonaws.com
 5209   6912   
x-amz-date:20150830T123600Z
 5210   6913   
x-amz-region-set:us-east-1
 5211   6914   
 5212   6915   
host;x-amz-date;x-amz-region-set
 5213         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6916  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5214   6917   
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
 5215   6918   
new file mode 100644
 5216   6919   
index 0000000..4210210
 5217         -
-- /dev/null
        6920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 5218   6921   
@@ -0,0 +1 @@
        6922  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 5219   6923   
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
 5220   6924   
new file mode 100644
 5221   6925   
index 0000000..257b110
 5222         -
-- /dev/null
        6926  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 5223   6927   
@@ -0,0 +1,6 @@
        6928  +
POST / HTTP/1.1
        6929  +
Host:example.amazonaws.com
        6930  +
X-Amz-Date:20150830T123600Z
        6931  +
X-Amz-Region-Set:us-east-1
        6932  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        6933  +
 5224   6934   
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
 5225   6935   
similarity index 99%
 5226   6936   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 5227   6937   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5228   6938   
index d5650cb..f8adf13 100644
 5229         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
        6939  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5230   6940   
@@ -1,4 +1,4 @@
 5231   6941   
AWS4-ECDSA-P256-SHA256
 5232   6942   
20150830T123600Z
 5233   6943   
20150830/service/aws4_request
 5234         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        6944  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5235   6945   
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
 5236   6946   
new file mode 100644
 5237   6947   
index 0000000..379dcb2
 5238         -
-- /dev/null
        6948  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 5239   6949   
@@ -0,0 +1,4 @@
        6950  +
{
        6951  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6952  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6953  +
}
 5240   6954   
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
 5241   6955   
similarity index 99%
 5242   6956   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 5243   6957   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5244   6958   
index e48ce07..5ea8e3c 100644
 5245         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
        6959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5246   6960   
@@ -1,7 +1,7 @@
 5247   6961   
POST
 5248   6962   
/
 5249   6963   
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
 5250   6964   
host:example.amazonaws.com
 5251   6965   
 5252   6966   
host
 5253         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6967  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5254   6968   
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
 5255   6969   
new file mode 100644
 5256   6970   
index 0000000..9e2069e
 5257         -
-- /dev/null
        6971  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 5258   6972   
@@ -0,0 +1 @@
        6973  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 5259   6974   
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
 5260   6975   
new file mode 100644
 5261   6976   
index 0000000..67f5d29
 5262         -
-- /dev/null
        6977  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 5263   6978   
@@ -0,0 +1,3 @@
        6979  +
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
        6980  +
Host:example.amazonaws.com
        6981  +
 5264   6982   
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
 5265   6983   
similarity index 99%
 5266   6984   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 5267   6985   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5268   6986   
index 34e3382..711c162 100644
 5269         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
        6987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5270   6988   
@@ -1,4 +1,4 @@
 5271   6989   
AWS4-ECDSA-P256-SHA256
 5272   6990   
20150830T123600Z
 5273   6991   
20150830/service/aws4_request
 5274         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        6992  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5275   6993   
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
 5276   6994   
similarity index 61%
 5277   6995   
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
 5278   6996   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5279   6997   
index 3dc4179..3f0a82a 100644
 5280         -
-- 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
        6998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5281   6999   
@@ -1,3 +1,2 @@
 5282   7000   
POST / HTTP/1.1
 5283   7001   
Host:example.amazonaws.com
 5284         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5285   7002   
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
 5286   7003   
new file mode 100644
 5287   7004   
index 0000000..0468d80
 5288         -
-- /dev/null
        7005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 5289   7006   
@@ -0,0 +1,12 @@
        7007  +
{
        7008  +
    "credentials": {
        7009  +
        "access_key_id": "AKIDEXAMPLE",
        7010  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7011  +
    },
        7012  +
    "expiration_in_seconds": 3600,
        7013  +
    "normalize": true,
        7014  +
    "region": "us-east-1",
        7015  +
    "service": "service",
        7016  +
    "sign_body": false,
        7017  +
    "timestamp": "2015-08-30T12:36:00Z"
        7018  +
}
              \
 No newline at end of file
 5290   7019   
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
 5291   7020   
similarity index 99%
 5292   7021   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 5293   7022   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5294   7023   
index a8e1727..2883822 100644
 5295         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
        7024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5296   7025   
@@ -1,10 +1,10 @@
 5297   7026   
POST
 5298   7027   
/
 5299   7028   
 5300   7029   
host:example.amazonaws.com
 5301   7030   
my-header1:value1
 5302   7031   
x-amz-date:20150830T123600Z
 5303   7032   
x-amz-region-set:us-east-1
 5304   7033   
 5305   7034   
host;my-header1;x-amz-date;x-amz-region-set
 5306         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7035  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5307   7036   
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
 5308   7037   
new file mode 100644
 5309   7038   
index 0000000..e3c2e6e
 5310         -
-- /dev/null
        7039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 5311   7040   
@@ -0,0 +1 @@
        7041  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 5312   7042   
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
 5313   7043   
new file mode 100644
 5314   7044   
index 0000000..1d6e288
 5315         -
-- /dev/null
        7045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 5316   7046   
@@ -0,0 +1,7 @@
        7047  +
POST / HTTP/1.1
        7048  +
Host:example.amazonaws.com
        7049  +
My-Header1:value1
        7050  +
X-Amz-Date:20150830T123600Z
        7051  +
X-Amz-Region-Set:us-east-1
        7052  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        7053  +
 5317   7054   
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
 5318   7055   
similarity index 99%
 5319   7056   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 5320   7057   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5321   7058   
index f6e3e9b..7c5236a 100644
 5322         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
        7059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5323   7060   
@@ -1,4 +1,4 @@
 5324   7061   
AWS4-ECDSA-P256-SHA256
 5325   7062   
20150830T123600Z
 5326   7063   
20150830/service/aws4_request
 5327         -
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
        7064  +
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
              \
 No newline at end of file
 5328   7065   
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
 5329   7066   
new file mode 100644
 5330   7067   
index 0000000..379dcb2
 5331         -
-- /dev/null
        7068  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 5332   7069   
@@ -0,0 +1,4 @@
        7070  +
{
        7071  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7072  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7073  +
}
 5333   7074   
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
 5334   7075   
similarity index 99%
 5335   7076   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 5336   7077   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5337   7078   
index 0ae73e1..2cf3f29 100644
 5338         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
        7079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5339   7080   
@@ -1,8 +1,8 @@
 5340   7081   
POST
 5341   7082   
/
 5342   7083   
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
 5343   7084   
host:example.amazonaws.com
 5344   7085   
my-header1:value1
 5345   7086   
 5346   7087   
host;my-header1
 5347         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7088  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5348   7089   
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
 5349   7090   
new file mode 100644
 5350   7091   
index 0000000..2a08401
 5351         -
-- /dev/null
        7092  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 5352   7093   
@@ -0,0 +1 @@
        7094  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 5353   7095   
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
 5354   7096   
new file mode 100644
 5355   7097   
index 0000000..8d2343f
 5356         -
-- /dev/null
        7098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 5357   7099   
@@ -0,0 +1,4 @@
        7100  +
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
        7101  +
Host:example.amazonaws.com
        7102  +
My-Header1:value1
        7103  +
 5358   7104   
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
 5359   7105   
similarity index 99%
 5360   7106   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 5361   7107   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5362   7108   
index 8cb96bf..2c4db7a 100644
 5363         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
        7109  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5364   7110   
@@ -1,4 +1,4 @@
 5365   7111   
AWS4-ECDSA-P256-SHA256
 5366   7112   
20150830T123600Z
 5367   7113   
20150830/service/aws4_request
 5368         -
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
        7114  +
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
              \
 No newline at end of file
 5369   7115   
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
 5370   7116   
similarity index 69%
 5371   7117   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 5372   7118   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5373   7119   
index 0253f19..917720e 100644
 5374         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        7120  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5375   7121   
@@ -1,4 +1,3 @@
 5376   7122   
POST / HTTP/1.1
 5377   7123   
Host:example.amazonaws.com
 5378   7124   
My-Header1:value1
 5379         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5380   7125   
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
 5381   7126   
new file mode 100644
 5382   7127   
index 0000000..0468d80
 5383         -
-- /dev/null
        7128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 5384   7129   
@@ -0,0 +1,12 @@
        7130  +
{
        7131  +
    "credentials": {
        7132  +
        "access_key_id": "AKIDEXAMPLE",
        7133  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7134  +
    },
        7135  +
    "expiration_in_seconds": 3600,
        7136  +
    "normalize": true,
        7137  +
    "region": "us-east-1",
        7138  +
    "service": "service",
        7139  +
    "sign_body": false,
        7140  +
    "timestamp": "2015-08-30T12:36:00Z"
        7141  +
}
              \
 No newline at end of file
 5385   7142   
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
 5386   7143   
similarity index 99%
 5387   7144   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 5388   7145   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5389   7146   
index 1dc3ef8..164e65c 100644
 5390         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
        7147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5391   7148   
@@ -1,10 +1,10 @@
 5392   7149   
POST
 5393   7150   
/
 5394   7151   
 5395   7152   
host:example.amazonaws.com
 5396   7153   
my-header1:VALUE1
 5397   7154   
x-amz-date:20150830T123600Z
 5398   7155   
x-amz-region-set:us-east-1
 5399   7156   
 5400   7157   
host;my-header1;x-amz-date;x-amz-region-set
 5401         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7158  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5402   7159   
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
 5403   7160   
new file mode 100644
 5404   7161   
index 0000000..7072b0e
 5405         -
-- /dev/null
        7162  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 5406   7163   
@@ -0,0 +1 @@
        7164  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 5407   7165   
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
 5408   7166   
new file mode 100644
 5409   7167   
index 0000000..17f5e3e
 5410         -
-- /dev/null
        7168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 5411   7169   
@@ -0,0 +1,7 @@
        7170  +
POST / HTTP/1.1
        7171  +
Host:example.amazonaws.com
        7172  +
My-Header1:VALUE1
        7173  +
X-Amz-Date:20150830T123600Z
        7174  +
X-Amz-Region-Set:us-east-1
        7175  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        7176  +
 5412   7177   
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
 5413   7178   
similarity index 99%
 5414   7179   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 5415   7180   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5416   7181   
index 59c7e45..620f54e 100644
 5417         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
        7182  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5418   7183   
@@ -1,4 +1,4 @@
 5419   7184   
AWS4-ECDSA-P256-SHA256
 5420   7185   
20150830T123600Z
 5421   7186   
20150830/service/aws4_request
 5422         -
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
        7187  +
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
              \
 No newline at end of file
 5423   7188   
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
 5424   7189   
new file mode 100644
 5425   7190   
index 0000000..379dcb2
 5426         -
-- /dev/null
        7191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 5427   7192   
@@ -0,0 +1,4 @@
        7193  +
{
        7194  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7195  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7196  +
}
 5428   7197   
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
 5429   7198   
similarity index 99%
 5430   7199   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 5431   7200   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5432   7201   
index 377e6f3..23e0da3 100644
 5433         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
        7202  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5434   7203   
@@ -1,8 +1,8 @@
 5435   7204   
POST
 5436   7205   
/
 5437   7206   
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
 5438   7207   
host:example.amazonaws.com
 5439   7208   
my-header1:VALUE1
 5440   7209   
 5441   7210   
host;my-header1
 5442         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7211  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5443   7212   
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
 5444   7213   
new file mode 100644
 5445   7214   
index 0000000..a18acb8
 5446         -
-- /dev/null
        7215  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 5447   7216   
@@ -0,0 +1 @@
        7217  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 5448   7218   
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
 5449   7219   
new file mode 100644
 5450   7220   
index 0000000..7cbdcfa
 5451         -
-- /dev/null
        7221  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 5452   7222   
@@ -0,0 +1,4 @@
        7223  +
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
        7224  +
Host:example.amazonaws.com
        7225  +
My-Header1:VALUE1
        7226  +
 5453   7227   
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
 5454   7228   
similarity index 99%
 5455   7229   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 5456   7230   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5457   7231   
index 84a7afd..0c90627 100644
 5458         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
        7232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5459   7233   
@@ -1,4 +1,4 @@
 5460   7234   
AWS4-ECDSA-P256-SHA256
 5461   7235   
20150830T123600Z
 5462   7236   
20150830/service/aws4_request
 5463         -
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
        7237  +
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
              \
 No newline at end of file
 5464   7238   
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
 5465   7239   
similarity index 69%
 5466   7240   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 5467   7241   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5468   7242   
index 3f9987a..5f14c91 100644
 5469         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        7243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5470   7244   
@@ -1,4 +1,3 @@
 5471   7245   
POST / HTTP/1.1
 5472   7246   
Host:example.amazonaws.com
 5473   7247   
My-Header1:VALUE1
 5474         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5475   7248   
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
 5476   7249   
new file mode 100644
 5477   7250   
index 0000000..8f1d5ce
 5478         -
-- /dev/null
        7251  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 5479   7252   
@@ -0,0 +1,14 @@
        7253  +
{
        7254  +
    "credentials": {
        7255  +
        "access_key_id": "AKIDEXAMPLE",
        7256  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7257  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7258  +
    },
        7259  +
    "expiration_in_seconds": 3600,
        7260  +
    "normalize": true,
        7261  +
    "region": "us-east-1",
        7262  +
    "service": "service",
        7263  +
    "sign_body": false,
        7264  +
    "timestamp": "2015-08-30T12:36:00Z",
        7265  +
    "omit_session_token": true
        7266  +
}
 5480   7267   
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
 5481   7268   
similarity index 99%
 5482   7269   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 5483   7270   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5484   7271   
index a6942c1..e881ac7 100644
 5485         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
        7272  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5486   7273   
@@ -1,9 +1,9 @@
 5487   7274   
POST
 5488   7275   
/
 5489   7276   
 5490   7277   
host:example.amazonaws.com
 5491   7278   
x-amz-date:20150830T123600Z
 5492   7279   
x-amz-region-set:us-east-1
 5493   7280   
 5494   7281   
host;x-amz-date;x-amz-region-set
 5495         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7282  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5496   7283   
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
 5497   7284   
new file mode 100644
 5498   7285   
index 0000000..9c5ecb9
 5499         -
-- /dev/null
        7286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 5500   7287   
@@ -0,0 +1 @@
        7288  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 5501   7289   
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
 5502   7290   
similarity index 52%
 5503   7291   
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
 5504   7292   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5505   7293   
index 9d91775..61b6527 100644
 5506         -
-- 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
        7294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5507   7295   
@@ -1,4 +1,7 @@
 5508   7296   
POST / HTTP/1.1
 5509   7297   
Host:example.amazonaws.com
        7298  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5510   7299   
X-Amz-Date:20150830T123600Z
 5511         -
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
        7300  +
X-Amz-Region-Set:us-east-1
        7301  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        7302  +
 5512   7303   
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
 5513   7304   
similarity index 99%
 5514   7305   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 5515   7306   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5516   7307   
index d5650cb..f8adf13 100644
 5517         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
        7308  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5518   7309   
@@ -1,4 +1,4 @@
 5519   7310   
AWS4-ECDSA-P256-SHA256
 5520   7311   
20150830T123600Z
 5521   7312   
20150830/service/aws4_request
 5522         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7313  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5523   7314   
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
 5524   7315   
new file mode 100644
 5525   7316   
index 0000000..379dcb2
 5526         -
-- /dev/null
        7317  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 5527   7318   
@@ -0,0 +1,4 @@
        7319  +
{
        7320  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7321  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7322  +
}
 5528   7323   
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
 5529   7324   
similarity index 99%
 5530   7325   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 5531   7326   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5532   7327   
index e48ce07..5ea8e3c 100644
 5533         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
        7328  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5534   7329   
@@ -1,7 +1,7 @@
 5535   7330   
POST
 5536   7331   
/
 5537   7332   
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
 5538   7333   
host:example.amazonaws.com
 5539   7334   
 5540   7335   
host
 5541         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7336  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5542   7337   
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
 5543   7338   
new file mode 100644
 5544   7339   
index 0000000..ff8823a
 5545         -
-- /dev/null
        7340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 5546   7341   
@@ -0,0 +1 @@
        7342  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 5547   7343   
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
 5548   7344   
new file mode 100644
 5549   7345   
index 0000000..cfac41b
 5550         -
-- /dev/null
        7346  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 5551   7347   
@@ -0,0 +1,3 @@
        7348  +
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
        7349  +
Host:example.amazonaws.com
        7350  +
 5552   7351   
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
 5553   7352   
similarity index 99%
 5554   7353   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 5555   7354   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5556   7355   
index 34e3382..711c162 100644
 5557         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
        7356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5558   7357   
@@ -1,4 +1,4 @@
 5559   7358   
AWS4-ECDSA-P256-SHA256
 5560   7359   
20150830T123600Z
 5561   7360   
20150830/service/aws4_request
 5562         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7361  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5563   7362   
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
 5564   7363   
similarity index 61%
 5565   7364   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 5566   7365   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5567   7366   
index 3dc4179..3f0a82a 100644
 5568         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        7367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5569   7368   
@@ -1,3 +1,2 @@
 5570   7369   
POST / HTTP/1.1
 5571   7370   
Host:example.amazonaws.com
 5572         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5573   7371   
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
 5574   7372   
new file mode 100644
 5575   7373   
index 0000000..5187392
 5576         -
-- /dev/null
        7374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 5577   7375   
@@ -0,0 +1,14 @@
        7376  +
{
        7377  +
    "credentials": {
        7378  +
        "access_key_id": "AKIDEXAMPLE",
        7379  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7380  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7381  +
    },
        7382  +
    "expiration_in_seconds": 3600,
        7383  +
    "normalize": true,
        7384  +
    "region": "us-east-1",
        7385  +
    "service": "service",
        7386  +
    "sign_body": false,
        7387  +
    "timestamp": "2015-08-30T12:36:00Z",
        7388  +
    "omit_session_token": false
        7389  +
}
 5578   7390   
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
 5579   7391   
similarity index 99%
 5580   7392   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 5581   7393   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5582   7394   
index dd408c8..e95924e 100644
 5583         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
        7395  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5584   7396   
@@ -1,10 +1,10 @@
 5585   7397   
POST
 5586   7398   
/
 5587   7399   
 5588   7400   
host:example.amazonaws.com
 5589   7401   
x-amz-date:20150830T123600Z
 5590   7402   
x-amz-region-set:us-east-1
 5591   7403   
x-amz-security-token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5592   7404   
 5593   7405   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5594         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7406  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5595   7407   
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
 5596   7408   
new file mode 100644
 5597   7409   
index 0000000..1573f07
 5598         -
-- /dev/null
        7410  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 5599   7411   
@@ -0,0 +1 @@
        7412  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 5600   7413   
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
 5601   7414   
new file mode 100644
 5602   7415   
index 0000000..6ef9a08
 5603         -
-- /dev/null
        7416  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 5604   7417   
@@ -0,0 +1,7 @@
        7418  +
POST / HTTP/1.1
        7419  +
Host:example.amazonaws.com
        7420  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        7421  +
X-Amz-Date:20150830T123600Z
        7422  +
X-Amz-Region-Set:us-east-1
        7423  +
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
        7424  +
 5605   7425   
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
 5606   7426   
similarity index 99%
 5607   7427   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 5608   7428   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5609   7429   
index f352b54..3c3235f 100644
 5610         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
        7430  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5611   7431   
@@ -1,4 +1,4 @@
 5612   7432   
AWS4-ECDSA-P256-SHA256
 5613   7433   
20150830T123600Z
 5614   7434   
20150830/service/aws4_request
 5615         -
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
        7435  +
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
              \
 No newline at end of file
 5616   7436   
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
 5617   7437   
new file mode 100644
 5618   7438   
index 0000000..379dcb2
 5619         -
-- /dev/null
        7439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 5620   7440   
@@ -0,0 +1,4 @@
        7441  +
{
        7442  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7443  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7444  +
}
 5621   7445   
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
 5622   7446   
similarity index 99%
 5623   7447   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 5624   7448   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5625   7449   
index 832cdc0..63b7de5 100644
 5626         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
        7450  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5627   7451   
@@ -1,7 +1,7 @@
 5628   7452   
POST
 5629   7453   
/
 5630   7454   
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
 5631   7455   
host:example.amazonaws.com
 5632   7456   
 5633   7457   
host
 5634         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7458  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5635   7459   
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
 5636   7460   
new file mode 100644
 5637   7461   
index 0000000..713f57c
 5638         -
-- /dev/null
        7462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 5639   7463   
@@ -0,0 +1 @@
        7464  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 5640   7465   
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
 5641   7466   
new file mode 100644
 5642   7467   
index 0000000..32c3bb3
 5643         -
-- /dev/null
        7468  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 5644   7469   
@@ -0,0 +1,3 @@
        7470  +
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
        7471  +
Host:example.amazonaws.com
        7472  +
 5645   7473   
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
 5646   7474   
similarity index 99%
 5647   7475   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 5648   7476   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5649   7477   
index d7f3668..b46cd8c 100644
 5650         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
        7478  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5651   7479   
@@ -1,4 +1,4 @@
 5652   7480   
AWS4-ECDSA-P256-SHA256
 5653   7481   
20150830T123600Z
 5654   7482   
20150830/service/aws4_request
 5655         -
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
        7483  +
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
              \
 No newline at end of file
 5656   7484   
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
 5657   7485   
similarity index 60%
 5658   7486   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 5659   7487   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5660   7488   
index 8b5efc8..3f0a82a 100644
 5661         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        7489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5662   7490   
@@ -1,3 +1,2 @@
 5663   7491   
POST / HTTP/1.1
 5664   7492   
Host:example.amazonaws.com
 5665         -
X-Amz-Date:20150830T123600Z
 5666   7493   
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
 5667   7494   
new file mode 100644
 5668   7495   
index 0000000..0468d80
 5669         -
-- /dev/null
        7496  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 5670   7497   
@@ -0,0 +1,12 @@
        7498  +
{
        7499  +
    "credentials": {
        7500  +
        "access_key_id": "AKIDEXAMPLE",
        7501  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7502  +
    },
        7503  +
    "expiration_in_seconds": 3600,
        7504  +
    "normalize": true,
        7505  +
    "region": "us-east-1",
        7506  +
    "service": "service",
        7507  +
    "sign_body": false,
        7508  +
    "timestamp": "2015-08-30T12:36:00Z"
        7509  +
}
              \
 No newline at end of file
 5671   7510   
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
 5672   7511   
similarity index 99%
 5673   7512   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 5674   7513   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5675   7514   
index 02af60f..34b8c11 100644
 5676         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
        7515  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5677   7516   
@@ -1,9 +1,9 @@
 5678   7517   
POST
 5679   7518   
/
 5680   7519   
Param1=value1
 5681   7520   
host:example.amazonaws.com
 5682   7521   
x-amz-date:20150830T123600Z
 5683   7522   
x-amz-region-set:us-east-1
 5684   7523   
 5685   7524   
host;x-amz-date;x-amz-region-set
 5686         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7525  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5687   7526   
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
 5688   7527   
new file mode 100644
 5689   7528   
index 0000000..aac6427
 5690         -
-- /dev/null
        7529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 5691   7530   
@@ -0,0 +1 @@
        7531  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 5692   7532   
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
 5693   7533   
new file mode 100644
 5694   7534   
index 0000000..a611436
 5695         -
-- /dev/null
        7535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 5696   7536   
@@ -0,0 +1,6 @@
        7537  +
POST /?Param1=value1 HTTP/1.1
        7538  +
Host:example.amazonaws.com
        7539  +
X-Amz-Date:20150830T123600Z
        7540  +
X-Amz-Region-Set:us-east-1
        7541  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        7542  +
 5697   7543   
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
 5698   7544   
similarity index 99%
 5699   7545   
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
 5700   7546   
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
 5701   7547   
index 4256b4f..ad88dff 100644
 5702         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt
        7548  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
 5703   7549   
@@ -1,4 +1,4 @@
 5704   7550   
AWS4-ECDSA-P256-SHA256
 5705   7551   
20150830T123600Z
 5706   7552   
20150830/service/aws4_request
 5707         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7553  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 5708   7554   
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
 5709   7555   
new file mode 100644
 5710   7556   
index 0000000..379dcb2
 5711         -
-- /dev/null
        7557  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 5712   7558   
@@ -0,0 +1,4 @@
        7559  +
{
        7560  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7561  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7562  +
}
 5713   7563   
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
 5714   7564   
similarity index 99%
 5715   7565   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 5716   7566   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5717   7567   
index fa84bbd..76d5ad6 100644
 5718         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
        7568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5719   7569   
@@ -1,7 +1,7 @@
 5720   7570   
POST
 5721   7571   
/
 5722   7572   
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
 5723   7573   
host:example.amazonaws.com
 5724   7574   
 5725   7575   
host
 5726         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7576  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5727   7577   
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
 5728   7578   
new file mode 100644
 5729   7579   
index 0000000..4cb1c94
 5730         -
-- /dev/null
        7580  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 5731   7581   
@@ -0,0 +1 @@
        7582  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 5732   7583   
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
 5733   7584   
new file mode 100644
 5734   7585   
index 0000000..bd22b97
 5735         -
-- /dev/null
        7586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 5736   7587   
@@ -0,0 +1,3 @@
        7588  +
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
        7589  +
Host:example.amazonaws.com
        7590  +
 5737   7591   
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
 5738   7592   
similarity index 99%
 5739   7593   
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
 5740   7594   
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
 5741   7595   
index de270ef..8c9d319 100644
 5742         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt
        7596  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
 5743   7597   
@@ -1,4 +1,4 @@
 5744   7598   
AWS4-ECDSA-P256-SHA256
 5745   7599   
20150830T123600Z
 5746   7600   
20150830/service/aws4_request
 5747         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7601  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 5748   7602   
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
 5749   7603   
similarity index 67%
 5750   7604   
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
 5751   7605   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5752   7606   
index 9157bc7..c9d6e5d 100644
 5753         -
-- 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
        7607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5754   7608   
@@ -1,3 +1,2 @@
 5755   7609   
POST /?Param1=value1 HTTP/1.1
 5756   7610   
Host:example.amazonaws.com
 5757         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5758   7611   
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
 5759   7612   
new file mode 100644
 5760   7613   
index 0000000..0468d80
 5761         -
-- /dev/null
        7614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 5762   7615   
@@ -0,0 +1,12 @@
        7616  +
{
        7617  +
    "credentials": {
        7618  +
        "access_key_id": "AKIDEXAMPLE",
        7619  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7620  +
    },
        7621  +
    "expiration_in_seconds": 3600,
        7622  +
    "normalize": true,
        7623  +
    "region": "us-east-1",
        7624  +
    "service": "service",
        7625  +
    "sign_body": false,
        7626  +
    "timestamp": "2015-08-30T12:36:00Z"
        7627  +
}
              \
 No newline at end of file
 5763   7628   
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
 5764   7629   
similarity index 99%
 5765   7630   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 5766   7631   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5767   7632   
index 02af60f..34b8c11 100644
 5768         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
        7633  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5769   7634   
@@ -1,9 +1,9 @@
 5770   7635   
POST
 5771   7636   
/
 5772   7637   
Param1=value1
 5773   7638   
host:example.amazonaws.com
 5774   7639   
x-amz-date:20150830T123600Z
 5775   7640   
x-amz-region-set:us-east-1
 5776   7641   
 5777   7642   
host;x-amz-date;x-amz-region-set
 5778         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7643  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5779   7644   
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
 5780   7645   
new file mode 100644
 5781   7646   
index 0000000..34f75c8
 5782         -
-- /dev/null
        7647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 5783   7648   
@@ -0,0 +1 @@
        7649  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 5784   7650   
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
 5785   7651   
new file mode 100644
 5786   7652   
index 0000000..c731408
 5787         -
-- /dev/null
        7653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 5788   7654   
@@ -0,0 +1,6 @@
        7655  +
POST /?Param1=value1 HTTP/1.1
        7656  +
Host:example.amazonaws.com
        7657  +
X-Amz-Date:20150830T123600Z
        7658  +
X-Amz-Region-Set:us-east-1
        7659  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        7660  +
 5789   7661   
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
 5790   7662   
similarity index 99%
 5791   7663   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 5792   7664   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5793   7665   
index 4256b4f..ad88dff 100644
 5794         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
        7666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5795   7667   
@@ -1,4 +1,4 @@
 5796   7668   
AWS4-ECDSA-P256-SHA256
 5797   7669   
20150830T123600Z
 5798   7670   
20150830/service/aws4_request
 5799         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7671  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 5800   7672   
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
 5801   7673   
new file mode 100644
 5802   7674   
index 0000000..379dcb2
 5803         -
-- /dev/null
        7675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 5804   7676   
@@ -0,0 +1,4 @@
        7677  +
{
        7678  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7679  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7680  +
}
 5805   7681   
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
 5806   7682   
similarity index 99%
 5807   7683   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 5808   7684   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 5809   7685   
index fa84bbd..76d5ad6 100644
 5810         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
        7686  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 5811   7687   
@@ -1,7 +1,7 @@
 5812   7688   
POST
 5813   7689   
/
 5814   7690   
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
 5815   7691   
host:example.amazonaws.com
 5816   7692   
 5817   7693   
host
 5818         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7694  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5819   7695   
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
 5820   7696   
new file mode 100644
 5821   7697   
index 0000000..ae000d6
 5822         -
-- /dev/null
        7698  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 5823   7699   
@@ -0,0 +1 @@
        7700  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 5824   7701   
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
 5825   7702   
new file mode 100644
 5826   7703   
index 0000000..a868f7d
 5827         -
-- /dev/null
        7704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 5828   7705   
@@ -0,0 +1,3 @@
        7706  +
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
        7707  +
Host:example.amazonaws.com
        7708  +
 5829   7709   
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
 5830   7710   
similarity index 99%
 5831   7711   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 5832   7712   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 5833   7713   
index de270ef..8c9d319 100644
 5834         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
        7714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 5835   7715   
@@ -1,4 +1,4 @@
 5836   7716   
AWS4-ECDSA-P256-SHA256
 5837   7717   
20150830T123600Z
 5838   7718   
20150830/service/aws4_request
 5839         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7719  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 5840   7720   
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
 5841   7721   
similarity index 67%
 5842   7722   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 5843   7723   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5844   7724   
index 9157bc7..c9d6e5d 100644
 5845         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        7725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5846   7726   
@@ -1,3 +1,2 @@
 5847   7727   
POST /?Param1=value1 HTTP/1.1
 5848   7728   
Host:example.amazonaws.com
 5849         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5850   7729   
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
 5851   7730   
new file mode 100644
 5852   7731   
index 0000000..0468d80
 5853         -
-- /dev/null
        7732  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 5854   7733   
@@ -0,0 +1,12 @@
        7734  +
{
        7735  +
    "credentials": {
        7736  +
        "access_key_id": "AKIDEXAMPLE",
        7737  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7738  +
    },
        7739  +
    "expiration_in_seconds": 3600,
        7740  +
    "normalize": true,
        7741  +
    "region": "us-east-1",
        7742  +
    "service": "service",
        7743  +
    "sign_body": false,
        7744  +
    "timestamp": "2015-08-30T12:36:00Z"
        7745  +
}
              \
 No newline at end of file
 5855   7746   
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
 5856   7747   
similarity index 99%
 5857   7748   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 5858   7749   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 5859   7750   
index a6942c1..e881ac7 100644
 5860         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
        7751  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 5861   7752   
@@ -1,9 +1,9 @@
 5862   7753   
POST
 5863   7754   
/
 5864   7755   
 5865   7756   
host:example.amazonaws.com
 5866   7757   
x-amz-date:20150830T123600Z
 5867   7758   
x-amz-region-set:us-east-1
 5868   7759   
 5869   7760   
host;x-amz-date;x-amz-region-set
 5870         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7761  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5871   7762   
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
 5872   7763   
new file mode 100644
 5873   7764   
index 0000000..7c5e47b
 5874         -
-- /dev/null
        7765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 5875   7766   
@@ -0,0 +1 @@
        7767  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 5876   7768   
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
 5877   7769   
new file mode 100644
 5878   7770   
index 0000000..c0e50a0
 5879         -
-- /dev/null
        7771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 5880   7772   
@@ -0,0 +1,6 @@
        7773  +
POST / HTTP/1.1
        7774  +
Host:example.amazonaws.com
        7775  +
X-Amz-Date:20150830T123600Z
        7776  +
X-Amz-Region-Set:us-east-1
        7777  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        7778  +
 5881   7779   
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
 5882   7780   
similarity index 99%
 5883   7781   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 5884   7782   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 5885   7783   
index d5650cb..f8adf13 100644
 5886         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
        7784  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 5887   7785   
@@ -1,4 +1,4 @@
 5888   7786   
AWS4-ECDSA-P256-SHA256
 5889   7787   
20150830T123600Z
 5890   7788   
20150830/service/aws4_request
 5891         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7789  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5892   7790   
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
 5893   7791   
new file mode 100644
 5894   7792   
index 0000000..379dcb2
 5895         -
-- /dev/null
        7793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 5896   7794   
@@ -0,0 +1,4 @@
        7795  +
{
        7796  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7797  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7798  +
}
 5897   7799   
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
 5898   7800   
similarity index 99%
 5899   7801   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 5900   7802   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 5901   7803   
index e48ce07..5ea8e3c 100644
 5902         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
        7804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 5903   7805   
@@ -1,7 +1,7 @@
 5904   7806   
POST
 5905   7807   
/
 5906   7808   
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
 5907   7809   
host:example.amazonaws.com
 5908   7810   
 5909   7811   
host
 5910         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7812  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5911   7813   
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
 5912   7814   
new file mode 100644
 5913   7815   
index 0000000..ea8e3b4
 5914         -
-- /dev/null
        7816  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 5915   7817   
@@ -0,0 +1 @@
        7818  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 5916   7819   
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
 5917   7820   
new file mode 100644
 5918   7821   
index 0000000..616973f
 5919         -
-- /dev/null
        7822  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 5920   7823   
@@ -0,0 +1,3 @@
        7824  +
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
        7825  +
Host:example.amazonaws.com
        7826  +
 5921   7827   
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
 5922   7828   
similarity index 99%
 5923   7829   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 5924   7830   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 5925   7831   
index 34e3382..711c162 100644
 5926         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
        7832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 5927   7833   
@@ -1,4 +1,4 @@
 5928   7834   
AWS4-ECDSA-P256-SHA256
 5929   7835   
20150830T123600Z
 5930   7836   
20150830/service/aws4_request
 5931         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7837  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5932   7838   
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
 5933   7839   
new file mode 100644
 5934   7840   
index 0000000..3f0a82a
 5935         -
-- /dev/null
        7841  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 5936   7842   
@@ -0,0 +1,2 @@
        7843  +
POST / HTTP/1.1
        7844  +
Host:example.amazonaws.com
 5937   7845   
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
 5938   7846   
new file mode 100644
 5939   7847   
index 0000000..0db1df1
 5940         -
-- /dev/null
        7848  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 5941   7849   
@@ -0,0 +1,12 @@
        7850  +
{
        7851  +
    "credentials": {
        7852  +
        "access_key_id": "AKIDEXAMPLE",
        7853  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7854  +
    },
        7855  +
    "expiration_in_seconds": 3600,
        7856  +
    "normalize": true,
        7857  +
    "region": "us-east-1",
        7858  +
    "service": "service",
        7859  +
    "sign_body": true,
        7860  +
    "timestamp": "2015-08-30T12:36:00Z"
        7861  +
}
              \
 No newline at end of file
 5942   7862   
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
 5943   7863   
similarity index 62%
 5944   7864   
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
 5945   7865   
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
 5946   7866   
index 05ab787..62639b2 100644
 5947         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        7867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 5948   7868   
@@ -1,12 +1,12 @@
 5949   7869   
POST
 5950   7870   
/
 5951   7871   
 5952   7872   
content-length:13
 5953   7873   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5954   7874   
host:example.amazonaws.com
 5955         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7875  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5956   7876   
x-amz-date:20150830T123600Z
 5957   7877   
x-amz-region-set:us-east-1
 5958   7878   
 5959   7879   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5960         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7880  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5961   7881   
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
 5962   7882   
new file mode 100644
 5963   7883   
index 0000000..006ec2e
 5964         -
-- /dev/null
        7884  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 5965   7885   
@@ -0,0 +1 @@
        7886  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 5966   7887   
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
 5967   7888   
new file mode 100644
 5968   7889   
index 0000000..87a11f2
 5969         -
-- /dev/null
        7890  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 5970   7891   
@@ -0,0 +1,10 @@
        7892  +
POST / HTTP/1.1
        7893  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7894  +
Host:example.amazonaws.com
        7895  +
Content-Length:13
        7896  +
X-Amz-Date:20150830T123600Z
        7897  +
X-Amz-Region-Set:us-east-1
        7898  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7899  +
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
        7900  +
        7901  +
Param1=value1
              \
 No newline at end of file
 5971   7902   
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
 5972   7903   
new file mode 100644
 5973   7904   
index 0000000..c047afb
 5974         -
-- /dev/null
        7905  +
++ 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
 5975   7906   
@@ -0,0 +1,4 @@
        7907  +
AWS4-ECDSA-P256-SHA256
        7908  +
20150830T123600Z
        7909  +
20150830/service/aws4_request
        7910  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 5976   7911   
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
 5977   7912   
new file mode 100644
 5978   7913   
index 0000000..379dcb2
 5979         -
-- /dev/null
        7914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 5980   7915   
@@ -0,0 +1,4 @@
        7916  +
{
        7917  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7918  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7919  +
}
 5981   7920   
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
 5982   7921   
similarity index 85%
 5983   7922   
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
 5984   7923   
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
 5985   7924   
index fcc454f..6933a8c 100644
 5986         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        7925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 5987   7926   
@@ -1,9 +1,9 @@
 5988   7927   
POST
 5989   7928   
/
 5990   7929   
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
 5991   7930   
content-length:13
 5992   7931   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5993   7932   
host:example.amazonaws.com
 5994   7933   
 5995   7934   
content-length;content-type;host
 5996         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7935  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5997   7936   
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
 5998   7937   
new file mode 100644
 5999   7938   
index 0000000..34a2e12
 6000         -
-- /dev/null
        7939  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 6001   7940   
@@ -0,0 +1 @@
        7941  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 6002   7942   
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
 6003   7943   
new file mode 100644
 6004   7944   
index 0000000..197b99e
 6005         -
-- /dev/null
        7945  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 6006   7946   
@@ -0,0 +1,6 @@
        7947  +
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
        7948  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7949  +
Host:example.amazonaws.com
        7950  +
Content-Length:13
        7951  +
        7952  +
Param1=value1
              \
 No newline at end of file
 6007   7953   
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
 6008   7954   
new file mode 100644
 6009   7955   
index 0000000..9d2bc74
 6010         -
-- /dev/null
        7956  +
++ 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
 6011   7957   
@@ -0,0 +1,4 @@
        7958  +
AWS4-ECDSA-P256-SHA256
        7959  +
20150830T123600Z
        7960  +
20150830/service/aws4_request
        7961  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 6012   7962   
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
 6013   7963   
similarity index 80%
 6014   7964   
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
 6015   7965   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6016   7966   
index 36015f1..8289eaa 100644
 6017         -
-- 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
        7967  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6018   7968   
@@ -1,6 +1,6 @@
 6019   7969   
POST / HTTP/1.1
 6020   7970   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 6021   7971   
Host:example.amazonaws.com
 6022         -
X-Amz-Date:20150830T123600Z
        7972  +
Content-Length:13
 6023   7973   
 6024   7974   
Param1=value1
              \
 No newline at end of file
 6025   7975   
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
 6026   7976   
new file mode 100644
 6027   7977   
index 0000000..0db1df1
 6028         -
-- /dev/null
        7978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 6029   7979   
@@ -0,0 +1,12 @@
        7980  +
{
        7981  +
    "credentials": {
        7982  +
        "access_key_id": "AKIDEXAMPLE",
        7983  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7984  +
    },
        7985  +
    "expiration_in_seconds": 3600,
        7986  +
    "normalize": true,
        7987  +
    "region": "us-east-1",
        7988  +
    "service": "service",
        7989  +
    "sign_body": true,
        7990  +
    "timestamp": "2015-08-30T12:36:00Z"
        7991  +
}
              \
 No newline at end of file
 6030   7992   
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
 6031   7993   
similarity index 61%
 6032   7994   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 6033   7995   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6034   7996   
index 69009dc..797632b 100644
 6035         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        7997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6036   7998   
@@ -1,12 +1,12 @@
 6037   7999   
POST
 6038   8000   
/
 6039   8001   
 6040   8002   
content-length:13
 6041   8003   
content-type:application/x-www-form-urlencoded
 6042   8004   
host:example.amazonaws.com
 6043         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8005  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6044   8006   
x-amz-date:20150830T123600Z
 6045   8007   
x-amz-region-set:us-east-1
 6046   8008   
 6047   8009   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6048         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8010  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6049   8011   
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
 6050   8012   
new file mode 100644
 6051   8013   
index 0000000..f5a641c
 6052         -
-- /dev/null
        8014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 6053   8015   
@@ -0,0 +1 @@
        8016  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 6054   8017   
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
 6055   8018   
new file mode 100644
 6056   8019   
index 0000000..7bd94a7
 6057         -
-- /dev/null
        8020  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 6058   8021   
@@ -0,0 +1,10 @@
        8022  +
POST / HTTP/1.1
        8023  +
Content-Type:application/x-www-form-urlencoded
        8024  +
Host:example.amazonaws.com
        8025  +
Content-Length:13
        8026  +
X-Amz-Date:20150830T123600Z
        8027  +
X-Amz-Region-Set:us-east-1
        8028  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8029  +
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
        8030  +
        8031  +
Param1=value1
              \
 No newline at end of file
 6059   8032   
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
 6060   8033   
new file mode 100644
 6061   8034   
index 0000000..8d25ba9
 6062         -
-- /dev/null
        8035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 6063   8036   
@@ -0,0 +1,4 @@
        8037  +
AWS4-ECDSA-P256-SHA256
        8038  +
20150830T123600Z
        8039  +
20150830/service/aws4_request
        8040  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 6064   8041   
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
 6065   8042   
new file mode 100644
 6066   8043   
index 0000000..379dcb2
 6067         -
-- /dev/null
        8044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 6068   8045   
@@ -0,0 +1,4 @@
        8046  +
{
        8047  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8048  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8049  +
}
 6069   8050   
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
 6070   8051   
similarity index 99%
 6071   8052   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 6072   8053   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6073   8054   
index 9ed065b..563ff58 100644
 6074         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
        8055  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6075   8056   
@@ -1,9 +1,9 @@
 6076   8057   
POST
 6077   8058   
/
 6078   8059   
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
 6079   8060   
content-length:13
 6080   8061   
content-type:application/x-www-form-urlencoded
 6081   8062   
host:example.amazonaws.com
 6082   8063   
 6083   8064   
content-length;content-type;host
 6084         -
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8065  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6085   8066   
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
 6086   8067   
new file mode 100644
 6087   8068   
index 0000000..0c77daf
 6088         -
-- /dev/null
        8069  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 6089   8070   
@@ -0,0 +1 @@
        8071  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 6090   8072   
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
 6091   8073   
new file mode 100644
 6092   8074   
index 0000000..71d6de9
 6093         -
-- /dev/null
        8075  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 6094   8076   
@@ -0,0 +1,6 @@
        8077  +
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
        8078  +
Content-Type:application/x-www-form-urlencoded
        8079  +
Host:example.amazonaws.com
        8080  +
Content-Length:13
        8081  +
        8082  +
Param1=value1
              \
 No newline at end of file
 6095   8083   
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
 6096   8084   
similarity index 99%
 6097   8085   
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
 6098   8086   
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
 6099   8087   
index bef3143..cc7a224 100644
 6100         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt
        8088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
 6101   8089   
@@ -1,4 +1,4 @@
 6102   8090   
AWS4-ECDSA-P256-SHA256
 6103   8091   
20150830T123600Z
 6104   8092   
20150830/service/aws4_request
 6105         -
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
        8093  +
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
              \
 No newline at end of file
 6106   8094   
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
 6107   8095   
new file mode 100644
 6108   8096   
index 0000000..760b2d3
 6109         -
-- /dev/null
        8097  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 6110   8098   
@@ -0,0 +1,6 @@
        8099  +
POST / HTTP/1.1
        8100  +
Content-Type:application/x-www-form-urlencoded
        8101  +
Host:example.amazonaws.com
        8102  +
Content-Length:13
        8103  +
        8104  +
Param1=value1
              \
 No newline at end of file
 6111   8105   
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
 6112   8106   
index 9bd636f..b53f33f 100644
 6113         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        8107  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 6114   8108   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 6115   8109   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 6116   8110   
        }
 6117   8111   
 6118   8112   
        if let SignatureValues::QueryParams(values) = values {
 6119   8113   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 6120   8114   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 6121   8115   
 6122   8116   
            #[cfg(feature = "sigv4a")]
 6123   8117   
            if let Some(regions) = values.region_set {
 6124   8118   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 6125   8119   
            }
 6126   8120   
 6127   8121   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 6128   8122   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 6129   8123   
            add_param(
 6130   8124   
                &mut params,
 6131   8125   
                param::X_AMZ_SIGNED_HEADERS,
 6132   8126   
                values.signed_headers.as_str(),
 6133   8127   
            );
 6134   8128   
 6135   8129   
            if let Some(security_token) = values.security_token {
 6136   8130   
                add_param(
 6137   8131   
                    &mut params,
 6138   8132   
                    settings
 6139   8133   
                        .session_token_name_override
 6140   8134   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 6141   8135   
                    security_token,
 6142   8136   
                );
 6143   8137   
            }
 6144   8138   
        }
 6145         -
        // Sort by param name, and then by param value
        8139  +
        8140  +
        // Sort on the _encoded_ key/value pairs
        8141  +
        let mut params: Vec<(String, String)> = params
        8142  +
            .into_iter()
        8143  +
            .map(|x| {
        8144  +
                use aws_smithy_http::query::fmt_string;
        8145  +
                let enc_k = fmt_string(&x.0);
        8146  +
                let enc_v = fmt_string(&x.1);
        8147  +
                (enc_k, enc_v)
        8148  +
            })
        8149  +
            .collect();
        8150  +
 6146   8151   
        params.sort();
 6147   8152   
 6148   8153   
        let mut query = QueryWriter::new(uri);
 6149   8154   
        query.clear_params();
 6150   8155   
        for (key, value) in params {
 6151         -
            query.insert(&key, &value);
        8156  +
            query.insert_encoded(&key, &value);
 6152   8157   
        }
 6153   8158   
 6154   8159   
        let query = query.build_query();
 6155   8160   
        if query.is_empty() {
 6156   8161   
            None
 6157   8162   
        } else {
 6158   8163   
            Some(query)
 6159   8164   
        }
 6160   8165   
    }
 6161   8166   
 6162   8167   
    fn insert_host_header(
 6163   8168   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 6164   8169   
        uri: &Uri,
 6165   8170   
    ) -> HeaderValue {
 6166   8171   
        match canonical_headers.get(&HOST) {
 6167   8172   
            Some(header) => header.clone(),
 6168   8173   
            None => {
 6169   8174   
                let port = uri.port();
 6170   8175   
                let scheme = uri.scheme();
 6171   8176   
                let authority = uri
 6172   8177   
                    .authority()
 6173   8178   
                    .expect("request uri authority must be set for signing")
 6174   8179   
                    .as_str();
 6175   8180   
                let host = uri
 6176   8181   
                    .host()
 6177   8182   
                    .expect("request uri host must be set for signing");
 6178   8183   
 6179   8184   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 6180   8185   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 6181   8186   
                // sent in the Host header (and Hyper strips default ports if they are present)
 6182   8187   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 6183   8188   
            service,
 6184   8189   
            hashed_creq,
 6185   8190   
            signature_version: SignatureVersion::V4a,
 6186   8191   
        }
 6187   8192   
    }
 6188   8193   
}
 6189   8194   
 6190   8195   
impl fmt::Display for StringToSign<'_> {
 6191   8196   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 6192   8197   
        write!(
 6193   8198   
            f,
 6194   8199   
            "{}\n{}\n{}\n{}",
 6195   8200   
            self.algorithm,
 6196   8201   
            format_date_time(self.time),
 6197   8202   
            match self.signature_version {
 6198   8203   
                SignatureVersion::V4 => self.scope.to_string(),
 6199   8204   
                SignatureVersion::V4a => self.scope.v4a_display(),
 6200   8205   
            },
 6201   8206   
            self.hashed_creq
 6202   8207   
        )
 6203   8208   
    }
 6204   8209   
}
 6205   8210   
 6206   8211   
#[cfg(test)]
 6207   8212   
mod tests {
 6208   8213   
    use crate::date_time::test_parsers::parse_date_time;
 6209   8214   
    use crate::http_request::canonical_request::{
 6210   8215   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 6211   8216   
    };
 6212   8217   
    use crate::http_request::test;
        8218  +
    use crate::http_request::test::SigningSuiteTest;
 6213   8219   
    use crate::http_request::{
 6214   8220   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 6215   8221   
        SigningParams, SigningSettings,
 6216   8222   
    };
 6217   8223   
    use crate::sign::v4;
 6218   8224   
    use crate::sign::v4::sha256_hex_string;
 6219   8225   
    use aws_credential_types::Credentials;
 6220   8226   
    use aws_smithy_http::query_writer::QueryWriter;
 6221   8227   
    use aws_smithy_runtime_api::client::identity::Identity;
 6222   8228   
    use http0::{HeaderValue, Uri};
 6223   8229   
    use pretty_assertions::assert_eq;
 6224   8230   
    use proptest::{prelude::*, proptest};
 6225   8231   
    use std::borrow::Cow;
 6226   8232   
    use std::time::Duration;
 6227   8233   
 6228   8234   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 6229   8235   
        v4::signing_params::Builder::default()
 6230   8236   
            .identity(identity)
 6231   8237   
            .region("test-region")
 6232   8238   
            .name("testservicename")
 6233   8239   
            .time(parse_date_time("20210511T154045Z").unwrap())
 6234   8240   
            .settings(settings)
 6235   8241   
            .build()
 6236   8242   
            .unwrap()
 6237   8243   
            .into()
 6238   8244   
    }
 6239   8245   
 6240   8246   
    #[test]
 6241   8247   
    fn test_repeated_header() {
 6242         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8248  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8249  +
        let mut req = test.request();
 6243   8250   
        req.headers.push((
 6244   8251   
            "x-amz-object-attributes".to_string(),
 6245   8252   
            "Checksum".to_string(),
 6246   8253   
        ));
 6247   8254   
        req.headers.push((
 6248   8255   
            "x-amz-object-attributes".to_string(),
 6249   8256   
            "ObjectSize".to_string(),
 6250   8257   
        ));
 6251   8258   
        let req = SignableRequest::from(&req);
 6252   8259   
        let settings = SigningSettings {
 6253   8260   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6254   8261   
            session_token_mode: SessionTokenMode::Exclude,
 6255   8262   
            ..Default::default()
 6256   8263   
        };
 6257   8264   
        let identity = Credentials::for_tests().into();
 6258   8265   
        let signing_params = signing_params(&identity, settings);
 6259   8266   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6260   8267   
 6261   8268   
        assert_eq!(
 6262   8269   
            creq.values.signed_headers().to_string(),
 6263   8270   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 6264   8271   
        );
 6265   8272   
        assert_eq!(
 6266   8273   
            creq.header_values_for("x-amz-object-attributes"),
 6267   8274   
            "Checksum,ObjectSize",
 6268   8275   
        );
 6269   8276   
    }
 6270   8277   
 6271   8278   
    #[test]
 6272   8279   
    fn test_host_header_properly_handles_ports() {
 6273   8280   
        fn host_header_test_setup(endpoint: String) -> String {
 6274         -
            let mut req = test::v4::test_request("get-vanilla");
        8281  +
            let test = SigningSuiteTest::v4("get-vanilla");
        8282  +
            let mut req = test.request();
 6275   8283   
            req.uri = endpoint;
 6276   8284   
            let req = SignableRequest::from(&req);
 6277   8285   
            let settings = SigningSettings {
 6278   8286   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6279   8287   
                session_token_mode: SessionTokenMode::Exclude,
 6280   8288   
                ..Default::default()
 6281   8289   
            };
 6282   8290   
            let identity = Credentials::for_tests().into();
 6283   8291   
            let signing_params = signing_params(&identity, settings);
 6284   8292   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6285   8293   
            creq.header_values_for("host")
 6286   8294   
        }
 6287   8295   
 6288   8296   
        // HTTP request with 80 port should not be signed with that port
 6289   8297   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 6290   8298   
        assert_eq!(http_80_host_header, "localhost",);
 6291   8299   
 6292   8300   
        // HTTP request with non-80 port should be signed with that port
 6293   8301   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 6294   8302   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 6295   8303   
 6296   8304   
        // HTTPS request with 443 port should not be signed with that port
 6297   8305   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 6298   8306   
        assert_eq!(https_443_host_header, "localhost",);
 6299   8307   
 6300   8308   
        // HTTPS request with non-443 port should be signed with that port
 6301   8309   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 6302   8310   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 6303   8311   
    }
 6304   8312   
 6305   8313   
    #[test]
 6306   8314   
    fn test_set_xamz_sha_256() {
 6307         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8315  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8316  +
        let req = test.request();
 6308   8317   
        let req = SignableRequest::from(&req);
 6309   8318   
        let settings = SigningSettings {
 6310   8319   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6311   8320   
            session_token_mode: SessionTokenMode::Exclude,
 6312   8321   
            ..Default::default()
 6313   8322   
        };
 6314   8323   
        let identity = Credentials::for_tests().into();
 6315   8324   
        let mut signing_params = signing_params(&identity, settings);
 6316   8325   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6317   8326   
        assert_eq!(
 6318   8327   
            creq.values.content_sha256(),
 6319   8328   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 6320   8329   
        );
 6321   8330   
        // assert that the sha256 header was added
 6322   8331   
        assert_eq!(
 6323   8332   
            creq.values.signed_headers().as_str(),
 6324   8333   
            "host;x-amz-content-sha256;x-amz-date"
 6325   8334   
        );
 6326   8335   
 6327   8336   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 6328   8337   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6329   8338   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6330   8339   
    }
 6331   8340   
 6332   8341   
    #[test]
 6333   8342   
    fn test_unsigned_payload() {
 6334         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8343  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8344  +
        let mut req = test.request();
 6335   8345   
        req.set_body(SignableBody::UnsignedPayload);
 6336   8346   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 6337   8347   
 6338   8348   
        let settings = SigningSettings {
 6339   8349   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6340   8350   
            ..Default::default()
 6341   8351   
        };
 6342   8352   
        let identity = Credentials::for_tests().into();
 6343   8353   
        let signing_params = signing_params(&identity, settings);
 6344   8354   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6345   8355   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 6346   8356   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 6347   8357   
    }
 6348   8358   
 6349   8359   
    #[test]
 6350   8360   
    fn test_precomputed_payload() {
 6351   8361   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 6352         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8362  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8363  +
        let mut req = test.request();
 6353   8364   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 6354   8365   
        let req = SignableRequest::from(&req);
 6355   8366   
        let settings = SigningSettings {
 6356   8367   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6357   8368   
            ..Default::default()
 6358   8369   
        };
 6359   8370   
        let identity = Credentials::for_tests().into();
 6360   8371   
        let signing_params = signing_params(&identity, settings);
 6361   8372   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6362   8373   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 6363   8374   
        assert!(creq.to_string().ends_with(payload_hash));
 6364   8375   
    }
 6365   8376   
 6366   8377   
    #[test]
 6367   8378   
    fn test_generate_scope() {
 6368   8379   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 6369   8380   
        let scope = SigningScope {
 6370   8381   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6371   8382   
            region: "us-east-1",
 6372   8383   
            service: "iam",
 6373   8384   
        };
 6374   8385   
        assert_eq!(format!("{}\n", scope), expected);
 6375   8386   
    }
 6376   8387   
 6377   8388   
    #[test]
 6378   8389   
    fn test_string_to_sign() {
 6379   8390   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6380         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 6381         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        8391  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8392  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        8393  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 6382   8394   
        let encoded = sha256_hex_string(creq.as_bytes());
 6383   8395   
 6384   8396   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 6385   8397   
        assert_eq!(expected_sts, actual.to_string());
 6386   8398   
    }
 6387   8399   
 6388   8400   
    #[test]
 6389   8401   
    fn test_digest_of_canonical_request() {
 6390         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        8402  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8403  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 6391   8404   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 6392   8405   
        let actual = sha256_hex_string(creq.as_bytes());
 6393   8406   
        assert_eq!(expected, actual);
 6394   8407   
    }
 6395   8408   
 6396   8409   
    #[test]
 6397   8410   
    fn test_double_url_encode_path() {
 6398         -
        let req = test::v4::test_request("double-encode-path");
        8411  +
        let test = SigningSuiteTest::v4("double-encode-path");
        8412  +
        let req = test.request();
 6399   8413   
        let req = SignableRequest::from(&req);
 6400   8414   
        let identity = Credentials::for_tests().into();
 6401   8415   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6402   8416   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6403   8417   
 6404         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        8418  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6405   8419   
        let actual = format!("{}", creq);
 6406   8420   
        assert_eq!(actual, expected);
 6407   8421   
    }
 6408   8422   
 6409   8423   
    #[test]
 6410   8424   
    fn test_double_url_encode() {
 6411         -
        let req = test::v4::test_request("double-url-encode");
        8425  +
        let test = SigningSuiteTest::v4("double-url-encode");
        8426  +
        let req = test.request();
 6412   8427   
        let req = SignableRequest::from(&req);
 6413   8428   
        let identity = Credentials::for_tests().into();
 6414   8429   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6415   8430   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6416         -
 6417         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        8431  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6418   8432   
        let actual = format!("{}", creq);
 6419   8433   
        assert_eq!(actual, expected);
 6420   8434   
    }
 6421   8435   
 6422   8436   
    #[test]
 6423   8437   
    fn test_tilde_in_uri() {
 6424   8438   
        let req = http0::Request::builder()
 6425   8439   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 6426   8440   
        let req = SignableRequest::from(&req);
 6427   8441   
        let identity = Credentials::for_tests().into();
 6428   8442   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6429   8443   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6430   8444   
        assert_eq!(
 6431   8445   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 6432   8446   
            creq.params.as_deref(),
 6433   8447   
        );
 6434   8448   
    }
 6435   8449   
 6436   8450   
    #[test]
 6437   8451   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 6438   8452   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 6439   8453   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 6440   8454   
 6441   8455   
        let mut query_writer = QueryWriter::new(&uri);
 6442   8456   
        query_writer.insert("list-type", "2");
 6443   8457   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 6444   8458   
 6445   8459   
        let req = http0::Request::builder()
 6446   8460   
            .uri(query_writer.build_uri())
 6447   8461   
            .body("")
 6448   8462   
            .unwrap()
 6449   8463   
            .into();
 6450   8464   
        let req = SignableRequest::from(&req);
 6451   8465   
        let identity = Credentials::for_tests().into();
 6452   8466   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6453   8467   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6454   8468   
 6455   8469   
        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~";
 6456   8470   
        let actual = creq.params.unwrap();
 6457   8471   
        assert_eq!(expected, actual);
 6458   8472   
    }
 6459   8473   
 6460   8474   
    #[test]
 6461   8475   
    fn test_omit_session_token() {
 6462         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8476  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8477  +
        let req = test.request();
 6463   8478   
        let req = SignableRequest::from(&req);
 6464   8479   
        let settings = SigningSettings {
 6465   8480   
            session_token_mode: SessionTokenMode::Include,
 6466   8481   
            ..Default::default()
 6467   8482   
        };
 6468   8483   
        let identity = Credentials::for_tests_with_session_token().into();
 6469   8484   
        let mut signing_params = signing_params(&identity, settings);
 6470   8485   
 6471   8486   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6472   8487   
        assert_eq!(
 6473   8488   
            creq.values.signed_headers().as_str(),
 6474   8489   
            "host;x-amz-date;x-amz-security-token"
 6475   8490   
        );
 6476   8491   
        assert_eq!(
 6477   8492   
            creq.headers.get("x-amz-security-token").unwrap(),
 6478   8493   
            "notarealsessiontoken"
 6479   8494   
        );
 6480   8495   
 6481   8496   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 6482   8497   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6483   8498   
        assert_eq!(
 6484   8499   
            creq.headers.get("x-amz-security-token").unwrap(),
 6485   8500   
            "notarealsessiontoken"
 6486   8501   
        );
 6487   8502   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6488   8503   
    }
 6489   8504   
 6490   8505   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 6491   8506   
    #[test]
 6492   8507   
    fn non_presigning_header_exclusion() {
 6493   8508   
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
 6494   8509   
index c4bbbee..30b4743 100644
 6495         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        8510  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 6496   8511   
@@ -478,436 +478,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 6497   8512   
        sensitive,
 6498   8513   
    });
 6499   8514   
}
 6500   8515   
 6501   8516   
// add signature to authorization header
 6502   8517   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 6503   8518   
fn build_authorization_header(
 6504   8519   
    access_key: &str,
 6505   8520   
    creq: &CanonicalRequest<'_>,
 6506   8521   
    sts: StringToSign<'_>,
 6507   8522   
    signature: &str,
 6508   8523   
    signature_version: SignatureVersion,
 6509   8524   
) -> String {
 6510   8525   
    let scope = match signature_version {
 6511   8526   
        SignatureVersion::V4 => sts.scope.to_string(),
 6512   8527   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 6513   8528   
    };
 6514   8529   
    format!(
 6515   8530   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 6516   8531   
        sts.algorithm,
 6517   8532   
        access_key,
 6518   8533   
        scope,
 6519   8534   
        creq.values.signed_headers().as_str(),
 6520   8535   
        signature
 6521   8536   
    )
 6522   8537   
}
 6523   8538   
#[cfg(test)]
 6524   8539   
mod tests {
 6525   8540   
    use crate::date_time::test_parsers::parse_date_time;
 6526   8541   
    use crate::http_request::sign::{add_header, SignableRequest};
        8542  +
    use crate::http_request::test::SigningSuiteTest;
 6527   8543   
    use crate::http_request::{
 6528         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        8544  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 6529   8545   
        SigningSettings,
 6530   8546   
    };
 6531   8547   
    use crate::sign::v4;
 6532   8548   
    use aws_credential_types::Credentials;
 6533   8549   
    use http0::{HeaderValue, Request};
 6534   8550   
    use pretty_assertions::assert_eq;
 6535   8551   
    use proptest::proptest;
 6536   8552   
    use std::borrow::Cow;
 6537   8553   
    use std::iter;
 6538         -
    use std::time::Duration;
 6539   8554   
 6540   8555   
    macro_rules! assert_req_eq {
 6541   8556   
        (http: $expected:expr, $actual:expr) => {
 6542   8557   
            let mut expected = ($expected).map(|_b|"body");
 6543   8558   
            let mut actual = ($actual).map(|_b|"body");
 6544   8559   
            make_headers_comparable(&mut expected);
 6545   8560   
            make_headers_comparable(&mut actual);
 6546   8561   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 6547   8562   
        };
 6548   8563   
        ($expected:tt, $actual:tt) => {
 6549   8564   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 6550   8565   
        };
 6551   8566   
    }
 6552   8567   
 6553   8568   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 6554   8569   
        for (_name, value) in request.headers_mut() {
 6555   8570   
            value.set_sensitive(false);
 6556   8571   
        }
 6557   8572   
    }
 6558   8573   
 6559         -
    #[test]
 6560         -
    fn test_sign_vanilla_with_headers() {
 6561         -
        let settings = SigningSettings::default();
 6562         -
        let identity = &Credentials::for_tests().into();
 6563         -
        let params = v4::SigningParams {
 6564         -
            identity,
 6565         -
            region: "us-east-1",
 6566         -
            name: "service",
 6567         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6568         -
            settings,
 6569         -
        }
 6570         -
        .into();
 6571         -
 6572         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6573         -
        let signable = SignableRequest::from(&original);
 6574         -
        let out = sign(signable, &params).unwrap();
 6575         -
        assert_eq!(
 6576         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 6577         -
            out.signature
 6578         -
        );
 6579         -
 6580         -
        let mut signed = original.as_http_request();
 6581         -
        out.output.apply_to_request_http0x(&mut signed);
 6582         -
 6583         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 6584         -
        assert_req_eq!(expected, signed);
 6585         -
    }
 6586         -
        8574  +
    // Sigv4A suite tests
 6587   8575   
    #[cfg(feature = "sigv4a")]
 6588         -
    mod sigv4a_tests {
 6589         -
        use super::*;
 6590         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 6591         -
        use crate::http_request::{sign, test, SigningParams};
 6592         -
        use crate::sign::v4a;
 6593         -
        use p256::ecdsa::signature::{Signature, Verifier};
 6594         -
        use p256::ecdsa::{DerSignature, SigningKey};
 6595         -
        use pretty_assertions::assert_eq;
 6596         -
 6597         -
        fn new_v4a_signing_params_from_context(
 6598         -
            test_context: &'_ test::v4a::TestContext,
 6599         -
            signature_location: SignatureLocation,
 6600         -
        ) -> SigningParams<'_> {
 6601         -
            let mut params = v4a::SigningParams::from(test_context);
 6602         -
            params.settings.signature_location = signature_location;
 6603         -
 6604         -
            params.into()
 6605         -
        }
 6606         -
 6607         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 6608         -
            let tc = test::v4a::test_context(test_name);
 6609         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 6610         -
 6611         -
            let req = test::v4a::test_request(test_name);
 6612         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 6613         -
            let signable_req = SignableRequest::from(&req);
 6614         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 6615         -
 6616         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 6617         -
 6618         -
            let expected_string_to_sign =
 6619         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 6620         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 6621         -
            let actual_string_to_sign = StringToSign::new_v4a(
 6622         -
                *params.time(),
 6623         -
                params.region_set().unwrap(),
 6624         -
                params.name(),
 6625         -
                hashed_creq,
 6626         -
            )
 6627         -
            .to_string();
 6628         -
 6629         -
            assert_eq!(
 6630         -
                expected_string_to_sign, actual_string_to_sign,
 6631         -
                "'string to sign' didn't match"
 6632         -
            );
        8576  +
    mod v4a_suite {
        8577  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 6633   8578   
 6634         -
            let out = sign(signable_req, &params).unwrap();
 6635         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 6636         -
            out.output
 6637         -
                .apply_to_request_http0x(&mut req.as_http_request());
 6638         -
 6639         -
            let creds = params.credentials().unwrap();
 6640         -
            let signing_key =
 6641         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 6642         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 6643         -
            let sig = sig
 6644         -
                .try_into()
 6645         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 6646         -
 6647         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 6648         -
            let peer_public_key = signing_key.verifying_key();
 6649         -
            let sts = actual_string_to_sign.as_bytes();
 6650         -
            peer_public_key.verify(sts, &sig).unwrap();
        8579  +
        #[test]
        8580  +
        fn test_get_header_key_duplicate() {
        8581  +
            run_test_suite_v4a("get-header-key-duplicate")
 6651   8582   
        }
 6652   8583   
 6653   8584   
        #[test]
 6654         -
        fn test_get_header_key_duplicate() {
 6655         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        8585  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8586  +
        fn test_get_header_value_multiline() {
        8587  +
            run_test_suite_v4a("get-header-value-multiline")
 6656   8588   
        }
 6657   8589   
 6658   8590   
        #[test]
 6659   8591   
        fn test_get_header_value_order() {
 6660         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        8592  +
            run_test_suite_v4a("get-header-value-order")
 6661   8593   
        }
 6662   8594   
 6663   8595   
        #[test]
 6664   8596   
        fn test_get_header_value_trim() {
 6665         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        8597  +
            run_test_suite_v4a("get-header-value-trim");
 6666   8598   
        }
 6667   8599   
 6668   8600   
        #[test]
 6669   8601   
        fn test_get_relative_normalized() {
 6670         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        8602  +
            run_test_suite_v4a("get-relative-normalized");
 6671   8603   
        }
 6672   8604   
 6673   8605   
        #[test]
 6674   8606   
        fn test_get_relative_relative_normalized() {
 6675         -
            run_v4a_test_suite(
 6676         -
                "get-relative-relative-normalized",
 6677         -
                SignatureLocation::Headers,
 6678         -
            );
        8607  +
            run_test_suite_v4a("get-relative-relative-normalized");
 6679   8608   
        }
 6680   8609   
 6681   8610   
        #[test]
 6682   8611   
        fn test_get_relative_relative_unnormalized() {
 6683         -
            run_v4a_test_suite(
 6684         -
                "get-relative-relative-unnormalized",
 6685         -
                SignatureLocation::Headers,
 6686         -
            );
        8612  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 6687   8613   
        }
 6688   8614   
 6689   8615   
        #[test]
 6690   8616   
        fn test_get_relative_unnormalized() {
 6691         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        8617  +
            run_test_suite_v4a("get-relative-unnormalized");
 6692   8618   
        }
 6693   8619   
 6694   8620   
        #[test]
 6695   8621   
        fn test_get_slash_dot_slash_normalized() {
 6696         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        8622  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 6697   8623   
        }
 6698   8624   
 6699   8625   
        #[test]
 6700   8626   
        fn test_get_slash_dot_slash_unnormalized() {
 6701         -
            run_v4a_test_suite(
 6702         -
                "get-slash-dot-slash-unnormalized",
 6703         -
                SignatureLocation::Headers,
 6704         -
            );
        8627  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 6705   8628   
        }
 6706   8629   
 6707   8630   
        #[test]
 6708   8631   
        fn test_get_slash_normalized() {
 6709         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        8632  +
            run_test_suite_v4a("get-slash-normalized");
 6710   8633   
        }
 6711   8634   
 6712   8635   
        #[test]
 6713   8636   
        fn test_get_slash_pointless_dot_normalized() {
 6714         -
            run_v4a_test_suite(
 6715         -
                "get-slash-pointless-dot-normalized",
 6716         -
                SignatureLocation::Headers,
 6717         -
            );
        8637  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 6718   8638   
        }
 6719   8639   
 6720   8640   
        #[test]
 6721   8641   
        fn test_get_slash_pointless_dot_unnormalized() {
 6722         -
            run_v4a_test_suite(
 6723         -
                "get-slash-pointless-dot-unnormalized",
 6724         -
                SignatureLocation::Headers,
 6725         -
            );
        8642  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 6726   8643   
        }
 6727   8644   
 6728   8645   
        #[test]
 6729   8646   
        fn test_get_slash_unnormalized() {
 6730         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        8647  +
            run_test_suite_v4a("get-slash-unnormalized");
 6731   8648   
        }
 6732   8649   
 6733   8650   
        #[test]
 6734   8651   
        fn test_get_slashes_normalized() {
 6735         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        8652  +
            run_test_suite_v4a("get-slashes-normalized");
 6736   8653   
        }
 6737   8654   
 6738   8655   
        #[test]
 6739   8656   
        fn test_get_slashes_unnormalized() {
 6740         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        8657  +
            run_test_suite_v4a("get-slashes-unnormalized");
        8658  +
        }
        8659  +
        8660  +
        #[test]
        8661  +
        #[ignore = "relies on single encode of path segments"]
        8662  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8663  +
        // skipped until we add control over double_uri_encode in context.json
        8664  +
        fn test_get_space_normalized() {
        8665  +
            run_test_suite_v4a("get-space-normalized");
        8666  +
        }
        8667  +
        8668  +
        #[test]
        8669  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8670  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8671  +
        fn test_get_space_unnormalized() {
        8672  +
            run_test_suite_v4a("get-space-unnormalized");
 6741   8673   
        }
 6742   8674   
 6743   8675   
        #[test]
 6744   8676   
        fn test_get_unreserved() {
 6745         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        8677  +
            run_test_suite_v4a("get-unreserved");
        8678  +
        }
        8679  +
        8680  +
        #[test]
        8681  +
        #[ignore = "httparse fails on invalid uri character"]
        8682  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8683  +
        fn test_get_utf8() {
        8684  +
            run_test_suite_v4a("get-utf8");
 6746   8685   
        }
 6747   8686   
 6748   8687   
        #[test]
 6749   8688   
        fn test_get_vanilla() {
 6750         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        8689  +
            run_test_suite_v4a("get-vanilla");
 6751   8690   
        }
 6752   8691   
 6753   8692   
        #[test]
 6754   8693   
        fn test_get_vanilla_empty_query_key() {
 6755         -
            run_v4a_test_suite(
 6756         -
                "get-vanilla-empty-query-key",
 6757         -
                SignatureLocation::QueryParams,
 6758         -
            );
        8694  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 6759   8695   
        }
 6760   8696   
 6761   8697   
        #[test]
 6762   8698   
        fn test_get_vanilla_query() {
 6763         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        8699  +
            run_test_suite_v4a("get-vanilla-query");
        8700  +
        }
        8701  +
        8702  +
        #[test]
        8703  +
        fn test_get_vanilla_query_order_encoded() {
        8704  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 6764   8705   
        }
 6765   8706   
 6766   8707   
        #[test]
 6767   8708   
        fn test_get_vanilla_query_order_key_case() {
 6768         -
            run_v4a_test_suite(
 6769         -
                "get-vanilla-query-order-key-case",
 6770         -
                SignatureLocation::QueryParams,
 6771         -
            );
        8709  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 6772   8710   
        }
 6773   8711   
 6774   8712   
        #[test]
 6775   8713   
        fn test_get_vanilla_query_unreserved() {
 6776         -
            run_v4a_test_suite(
 6777         -
                "get-vanilla-query-unreserved",
 6778         -
                SignatureLocation::QueryParams,
 6779         -
            );
        8714  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        8715  +
        }
        8716  +
        8717  +
        #[test]
        8718  +
        #[ignore = "httparse fails on invalid uri character"]
        8719  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8720  +
        fn test_get_vanilla_utf8_query() {
        8721  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 6780   8722   
        }
 6781   8723   
 6782   8724   
        #[test]
 6783   8725   
        fn test_get_vanilla_with_session_token() {
 6784         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        8726  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 6785   8727   
        }
 6786   8728   
 6787   8729   
        #[test]
 6788   8730   
        fn test_post_header_key_case() {
 6789         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        8731  +
            run_test_suite_v4a("post-header-key-case");
 6790   8732   
        }
 6791   8733   
 6792   8734   
        #[test]
 6793   8735   
        fn test_post_header_key_sort() {
 6794         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        8736  +
            run_test_suite_v4a("post-header-key-sort");
 6795   8737   
        }
 6796   8738   
 6797   8739   
        #[test]
 6798   8740   
        fn test_post_header_value_case() {
 6799         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        8741  +
            run_test_suite_v4a("post-header-value-case");
 6800   8742   
        }
 6801   8743   
 6802   8744   
        #[test]
 6803   8745   
        fn test_post_sts_header_after() {
 6804         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        8746  +
            run_test_suite_v4a("post-sts-header-after");
 6805   8747   
        }
 6806   8748   
 6807   8749   
        #[test]
 6808   8750   
        fn test_post_sts_header_before() {
 6809         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        8751  +
            run_test_suite_v4a("post-sts-header-before");
 6810   8752   
        }
 6811   8753   
 6812   8754   
        #[test]
 6813   8755   
        fn test_post_vanilla() {
 6814         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        8756  +
            run_test_suite_v4a("post-vanilla");
 6815   8757   
        }
 6816   8758   
 6817   8759   
        #[test]
 6818   8760   
        fn test_post_vanilla_empty_query_value() {
 6819         -
            run_v4a_test_suite(
 6820         -
                "post-vanilla-empty-query-value",
 6821         -
                SignatureLocation::QueryParams,
 6822         -
            );
        8761  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 6823   8762   
        }
 6824   8763   
 6825   8764   
        #[test]
 6826   8765   
        fn test_post_vanilla_query() {
 6827         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        8766  +
            run_test_suite_v4a("post-vanilla-query");
 6828   8767   
        }
 6829   8768   
 6830   8769   
        #[test]
 6831   8770   
        fn test_post_x_www_form_urlencoded() {
 6832         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        8771  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 6833   8772   
        }
 6834   8773   
 6835   8774   
        #[test]
 6836   8775   
        fn test_post_x_www_form_urlencoded_parameters() {
 6837         -
            run_v4a_test_suite(
 6838         -
                "post-x-www-form-urlencoded-parameters",
 6839         -
                SignatureLocation::QueryParams,
 6840         -
            );
        8776  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 6841   8777   
        }
 6842   8778   
    }
 6843   8779   
 6844   8780   
    #[test]
 6845   8781   
    fn test_sign_url_escape() {
 6846         -
        let test = "double-encode-path";
        8782  +
        let test = SigningSuiteTest::v4("double-encode-path");
 6847   8783   
        let settings = SigningSettings::default();
 6848   8784   
        let identity = &Credentials::for_tests().into();
 6849   8785   
        let params = v4::SigningParams {
 6850   8786   
            identity,
 6851   8787   
            region: "us-east-1",
 6852   8788   
            name: "service",
 6853   8789   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6854   8790   
            settings,
 6855   8791   
        }
 6856   8792   
        .into();
 6857   8793   
 6858         -
        let original = test::v4::test_request(test);
        8794  +
        let original = test.request();
 6859   8795   
        let signable = SignableRequest::from(&original);
 6860   8796   
        let out = sign(signable, &params).unwrap();
 6861   8797   
        assert_eq!(
 6862   8798   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 6863   8799   
            out.signature
 6864   8800   
        );
 6865   8801   
 6866   8802   
        let mut signed = original.as_http_request();
 6867   8803   
        out.output.apply_to_request_http0x(&mut signed);
 6868   8804   
 6869         -
        let expected = test::v4::test_signed_request(test);
 6870         -
        assert_req_eq!(expected, signed);
 6871         -
    }
 6872         -
 6873         -
    #[test]
 6874         -
    fn test_sign_vanilla_with_query_params() {
 6875         -
        let settings = SigningSettings {
 6876         -
            signature_location: SignatureLocation::QueryParams,
 6877         -
            expires_in: Some(Duration::from_secs(35)),
 6878         -
            ..Default::default()
 6879         -
        };
 6880         -
        let identity = &Credentials::for_tests().into();
 6881         -
        let params = v4::SigningParams {
 6882         -
            identity,
 6883         -
            region: "us-east-1",
 6884         -
            name: "service",
 6885         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6886         -
            settings,
 6887         -
        }
 6888         -
        .into();
 6889         -
 6890         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6891         -
        let signable = SignableRequest::from(&original);
 6892         -
        let out = sign(signable, &params).unwrap();
 6893         -
        assert_eq!(
 6894         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 6895         -
            out.signature
 6896         -
        );
 6897         -
 6898         -
        let mut signed = original.as_http_request();
 6899         -
        out.output.apply_to_request_http0x(&mut signed);
 6900         -
 6901         -
        let expected =
 6902         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        8805  +
        let expected = test.signed_request(SignatureLocation::Headers);
 6903   8806   
        assert_req_eq!(expected, signed);
 6904   8807   
    }
 6905   8808   
 6906   8809   
    #[test]
 6907   8810   
    fn test_sign_headers_utf8() {
 6908   8811   
        let settings = SigningSettings::default();
 6909   8812   
        let identity = &Credentials::for_tests().into();
 6910   8813   
        let params = v4::SigningParams {
 6911   8814   
            identity,
 6912   8815   
            region: "us-east-1",
 6913   8816   
            name: "service",
 6914   8817   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6915   8818   
            settings,
 6916   8819   
        }
 6917   8820   
        .into();
 6918   8821   
 6919   8822   
        let original = http0::Request::builder()
 6920   8823   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 6921   8824   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 6922   8825   
            .body("")
 6923   8826   
            .unwrap()
 6924   8827   
            .into();
 6925   8828   
        let signable = SignableRequest::from(&original);
 6926   8829   
        let out = sign(signable, &params).unwrap();
 6927   8830   
        assert_eq!(
 6928   8831   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 6929   8832   
            out.signature
 6930   8833   
        );
 6931   8834   
 6932   8835   
        let mut signed = original.as_http_request();
 6933   8836   
@@ -1138,31 +1026,236 @@ mod tests {
 6934   8837   
        let mut request = http::Request::builder()
 6935   8838   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 6936   8839   
            .body("")
 6937   8840   
            .unwrap();
 6938   8841   
 6939   8842   
        instructions.apply_to_request_http1x(&mut request);
 6940   8843   
 6941   8844   
        assert_eq!(
 6942   8845   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 6943   8846   
            request.uri().path_and_query().unwrap().to_string()
 6944   8847   
        );
 6945   8848   
    }
 6946   8849   
 6947   8850   
    #[test]
 6948   8851   
    fn test_debug_signable_body() {
 6949   8852   
        let sut = SignableBody::Bytes(b"hello signable body");
 6950   8853   
        assert_eq!(
 6951   8854   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 6952   8855   
            format!("{sut:?}")
 6953   8856   
        );
 6954   8857   
 6955   8858   
        let sut = SignableBody::UnsignedPayload;
 6956   8859   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 6957   8860   
 6958   8861   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 6959   8862   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 6960   8863   
 6961   8864   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 6962   8865   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 6963   8866   
    }
        8867  +
        8868  +
    // v4 test suite
        8869  +
    mod v4_suite {
        8870  +
        use crate::http_request::test::run_test_suite_v4;
        8871  +
        8872  +
        #[test]
        8873  +
        fn test_get_header_key_duplicate() {
        8874  +
            run_test_suite_v4("get-header-key-duplicate");
        8875  +
        }
        8876  +
        8877  +
        #[test]
        8878  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8879  +
        fn test_get_header_value_multiline() {
        8880  +
            run_test_suite_v4("get-header-value-multiline");
        8881  +
        }
        8882  +
        8883  +
        #[test]
        8884  +
        fn test_get_header_value_order() {
        8885  +
            run_test_suite_v4("get-header-value-order");
        8886  +
        }
        8887  +
        8888  +
        #[test]
        8889  +
        fn test_get_header_value_trim() {
        8890  +
            run_test_suite_v4("get-header-value-trim");
        8891  +
        }
        8892  +
        8893  +
        #[test]
        8894  +
        fn test_get_relative_normalized() {
        8895  +
            run_test_suite_v4("get-relative-normalized");
        8896  +
        }
        8897  +
        8898  +
        #[test]
        8899  +
        fn test_get_relative_relative_normalized() {
        8900  +
            run_test_suite_v4("get-relative-relative-normalized");
        8901  +
        }
        8902  +
        8903  +
        #[test]
        8904  +
        fn test_get_relative_relative_unnormalized() {
        8905  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        8906  +
        }
        8907  +
        8908  +
        #[test]
        8909  +
        fn test_get_relative_unnormalized() {
        8910  +
            run_test_suite_v4("get-relative-unnormalized");
        8911  +
        }
        8912  +
        8913  +
        #[test]
        8914  +
        fn test_get_slash_dot_slash_normalized() {
        8915  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        8916  +
        }
        8917  +
        8918  +
        #[test]
        8919  +
        fn test_get_slash_dot_slash_unnormalized() {
        8920  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        8921  +
        }
        8922  +
        8923  +
        #[test]
        8924  +
        fn test_get_slash_normalized() {
        8925  +
            run_test_suite_v4("get-slash-normalized");
        8926  +
        }
        8927  +
        8928  +
        #[test]
        8929  +
        fn test_get_slash_pointless_dot_normalized() {
        8930  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        8931  +
        }
        8932  +
        8933  +
        #[test]
        8934  +
        fn test_get_slash_pointless_dot_unnormalized() {
        8935  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        8936  +
        }
        8937  +
        8938  +
        #[test]
        8939  +
        fn test_get_slash_unnormalized() {
        8940  +
            run_test_suite_v4("get-slash-unnormalized");
        8941  +
        }
        8942  +
        8943  +
        #[test]
        8944  +
        fn test_get_slashes_normalized() {
        8945  +
            run_test_suite_v4("get-slashes-normalized");
        8946  +
        }
        8947  +
        8948  +
        #[test]
        8949  +
        fn test_get_slashes_unnormalized() {
        8950  +
            run_test_suite_v4("get-slashes-unnormalized");
        8951  +
        }
        8952  +
        8953  +
        #[test]
        8954  +
        #[ignore = "relies on single encode of path segments"]
        8955  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8956  +
        // skipped until we add control over double_uri_encode in context.json
        8957  +
        fn test_get_space_normalized() {
        8958  +
            run_test_suite_v4("get-space-normalized");
        8959  +
        }
        8960  +
        8961  +
        #[test]
        8962  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8963  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8964  +
        fn test_get_space_unnormalized() {
        8965  +
            run_test_suite_v4("get-space-unnormalized");
        8966  +
        }
        8967  +
        8968  +
        #[test]
        8969  +
        fn test_get_unreserved() {
        8970  +
            run_test_suite_v4("get-unreserved");
        8971  +
        }
        8972  +
        8973  +
        #[test]
        8974  +
        #[ignore = "httparse fails on invalid uri character"]
        8975  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8976  +
        fn test_get_utf8() {
        8977  +
            run_test_suite_v4("get-utf8");
        8978  +
        }
        8979  +
        8980  +
        #[test]
        8981  +
        fn test_get_vanilla() {
        8982  +
            run_test_suite_v4("get-vanilla");
        8983  +
        }
        8984  +
        8985  +
        #[test]
        8986  +
        fn test_get_vanilla_empty_query_key() {
        8987  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        8988  +
        }
        8989  +
        8990  +
        #[test]
        8991  +
        fn test_get_vanilla_query() {
        8992  +
            run_test_suite_v4("get-vanilla-query");
        8993  +
        }
        8994  +
        8995  +
        #[test]
        8996  +
        fn test_get_vanilla_query_order_encoded() {
        8997  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        8998  +
        }
        8999  +
        9000  +
        #[test]
        9001  +
        fn test_get_vanilla_query_order_key_case() {
        9002  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        9003  +
        }
        9004  +
        9005  +
        #[test]
        9006  +
        fn test_get_vanilla_query_unreserved() {
        9007  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        9008  +
        }
        9009  +
        9010  +
        #[test]
        9011  +
        #[ignore = "httparse fails on invalid uri character"]
        9012  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9013  +
        fn test_get_vanilla_utf8_query() {
        9014  +
            run_test_suite_v4("get-vanilla-utf8-query");
        9015  +
        }
        9016  +
        9017  +
        #[test]
        9018  +
        fn test_get_vanilla_with_session_token() {
        9019  +
            run_test_suite_v4("get-vanilla-with-session-token");
        9020  +
        }
        9021  +
        9022  +
        #[test]
        9023  +
        fn test_post_header_key_case() {
        9024  +
            run_test_suite_v4("post-header-key-case");
        9025  +
        }
        9026  +
        9027  +
        #[test]
        9028  +
        fn test_post_header_key_sort() {
        9029  +
            run_test_suite_v4("post-header-key-sort");
        9030  +
        }
        9031  +
        9032  +
        #[test]
        9033  +
        fn test_post_header_value_case() {
        9034  +
            run_test_suite_v4("post-header-value-case");
        9035  +
        }
        9036  +
        9037  +
        #[test]
        9038  +
        fn test_post_sts_header_after() {
        9039  +
            run_test_suite_v4("post-sts-header-after");
        9040  +
        }
        9041  +
        9042  +
        #[test]
        9043  +
        fn test_post_sts_header_before() {
        9044  +
            run_test_suite_v4("post-sts-header-before");
        9045  +
        }
        9046  +
        9047  +
        #[test]
        9048  +
        fn test_post_vanilla() {
        9049  +
            run_test_suite_v4("post-vanilla");
        9050  +
        }
        9051  +
        9052  +
        #[test]
        9053  +
        fn test_post_vanilla_empty_query_value() {
        9054  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        9055  +
        }
        9056  +
        9057  +
        #[test]
        9058  +
        fn test_post_vanilla_query() {
        9059  +
            run_test_suite_v4("post-vanilla-query");
        9060  +
        }
        9061  +
        9062  +
        #[test]
        9063  +
        fn test_post_x_www_form_urlencoded() {
        9064  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        9065  +
        }
        9066  +
        9067  +
        #[test]
        9068  +
        fn test_post_x_www_form_urlencoded_parameters() {
        9069  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        9070  +
        }
        9071  +
    }
 6964   9072   
}
 6965   9073   
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
 6966   9074   
index be6c496..86eec20 100644
 6967         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        9075  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 6968   9076   
@@ -1,242 +1,453 @@
 6969   9077   
/*
 6970   9078   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 6971   9079   
 * SPDX-License-Identifier: Apache-2.0
 6972   9080   
 */
 6973   9081   
 6974   9082   
//! Functions shared between the tests of several modules.
 6975   9083   
 6976         -
use crate::http_request::{SignableBody, SignableRequest};
        9084  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        9085  +
use crate::http_request::{
        9086  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        9087  +
    SigningSettings,
        9088  +
};
        9089  +
use aws_credential_types::Credentials;
        9090  +
use aws_smithy_runtime_api::client::identity::Identity;
 6977   9091   
use http0::{Method, Uri};
        9092  +
use std::borrow::Cow;
 6978   9093   
use std::error::Error as StdError;
        9094  +
use std::time::{Duration, SystemTime};
        9095  +
use time::format_description::well_known::Rfc3339;
        9096  +
use time::OffsetDateTime;
        9097  +
        9098  +
/// Common test suite collection
        9099  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        9100  +
enum Collection {
        9101  +
    V4,
        9102  +
    V4A,
        9103  +
}
 6979   9104   
 6980         -
pub(crate) mod v4 {
 6981         -
    use super::*;
        9105  +
/// A test from the common CRT test suite
        9106  +
#[derive(Debug, Clone)]
        9107  +
pub(crate) struct SigningSuiteTest {
        9108  +
    test_name: &'static str,
        9109  +
    collection: Collection,
        9110  +
}
 6982   9111   
 6983         -
    fn path(name: &str, ext: &str) -> String {
 6984         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        9112  +
impl SigningSuiteTest {
        9113  +
    /// Create a new test from the V4 test suite
        9114  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        9115  +
        Self {
        9116  +
            test_name,
        9117  +
            collection: Collection::V4,
        9118  +
        }
 6985   9119   
    }
 6986   9120   
 6987         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 6988         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 6989         -
        read(&path(name, "creq")).trim().to_string()
        9121  +
    /// Create a new test from the V4a test suite
        9122  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        9123  +
        Self {
        9124  +
            test_name,
        9125  +
            collection: Collection::V4A,
        9126  +
        }
 6990   9127   
    }
 6991   9128   
 6992         -
    pub(crate) fn test_sts(name: &str) -> String {
 6993         -
        read(&path(name, "sts"))
        9129  +
    /// Get the path to a file in this test suite directory
        9130  +
    fn path(&self, filename: &str) -> String {
        9131  +
        let dir = match self.collection {
        9132  +
            Collection::V4 => "v4",
        9133  +
            Collection::V4A => "v4a",
        9134  +
        };
        9135  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 6994   9136   
    }
 6995   9137   
 6996         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6997         -
        test_parsed_request(name, "req")
        9138  +
    /// Get the HTTP request for the test
        9139  +
    pub(crate) fn request(&self) -> TestRequest {
        9140  +
        test_parsed_request(&self.path("request.txt"))
 6998   9141   
    }
 6999   9142   
 7000         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 7001         -
        test_parsed_request(name, "sreq")
        9143  +
    /// Get the signed HTTP request for the test
        9144  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        9145  +
        match signature_location {
        9146  +
            SignatureLocation::QueryParams => {
        9147  +
                test_parsed_request(&self.path("query-signed-request.txt"))
        9148  +
            }
        9149  +
            SignatureLocation::Headers => {
        9150  +
                test_parsed_request(&self.path("header-signed-request.txt"))
        9151  +
            }
        9152  +
        }
 7002   9153   
    }
 7003   9154   
 7004         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 7005         -
        test_parsed_request(name, "qpsreq")
        9155  +
    /// Get the canonical request for the test
        9156  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        9157  +
        match signature_location {
        9158  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        9159  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
        9160  +
        }
 7006   9161   
    }
 7007   9162   
 7008         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 7009         -
        let path = path(name, ext);
 7010         -
        match parse_request(read(&path).as_bytes()) {
 7011         -
            Ok(parsed) => parsed,
 7012         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        9163  +
    /// Get the string to sign for the test
        9164  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
        9165  +
        match signature_location {
        9166  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        9167  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 7013   9168   
        }
 7014   9169   
    }
 7015   9170   
 7016         -
    #[test]
 7017         -
    fn test_parse() {
 7018         -
        test_request("post-header-key-case");
        9171  +
    /// Get the signature for the test
        9172  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
        9173  +
        match signature_location {
        9174  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        9175  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        9176  +
        }
 7019   9177   
    }
 7020   9178   
 7021         -
    #[test]
 7022         -
    fn test_read_query_params() {
 7023         -
        test_request("get-vanilla-query-order-key-case");
        9179  +
    /// Get the test context for the test
        9180  +
    pub(crate) fn context(&self) -> TestContext {
        9181  +
        let context = read(&self.path("context.json"));
        9182  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        9183  +
        tc_builder.build()
 7024   9184   
    }
 7025   9185   
}
 7026   9186   
 7027         -
#[cfg(feature = "sigv4a")]
 7028         -
pub(crate) mod v4a {
 7029         -
    use super::*;
 7030         -
    use crate::http_request::{
 7031         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 7032         -
    };
 7033         -
    use aws_credential_types::Credentials;
 7034         -
    use aws_smithy_runtime_api::client::identity::Identity;
 7035         -
    use serde_derive::Deserialize;
 7036         -
    use std::time::{Duration, SystemTime};
 7037         -
    use time::format_description::well_known::Rfc3339;
 7038         -
    use time::OffsetDateTime;
 7039         -
 7040         -
    fn path(test_name: &str, definition_name: &str) -> String {
 7041         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        9187  +
fn test_parsed_request(path: &str) -> TestRequest {
        9188  +
    match parse_request(read(path).as_bytes()) {
        9189  +
        Ok(parsed) => parsed,
        9190  +
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 7042   9191   
    }
        9192  +
}
 7043   9193   
 7044         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7045         -
        test_parsed_request(&path(name, "request"))
 7046         -
    }
        9194  +
fn new_v4_signing_params_from_context(
        9195  +
    test_context: &'_ TestContext,
        9196  +
    signature_location: SignatureLocation,
        9197  +
) -> crate::http_request::SigningParams<'_> {
        9198  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        9199  +
    params.settings.signature_location = signature_location;
        9200  +
    params.into()
        9201  +
}
 7047   9202   
 7048         -
    pub(crate) fn test_canonical_request(
 7049         -
        name: &str,
 7050         -
        signature_location: SignatureLocation,
 7051         -
    ) -> String {
 7052         -
        match signature_location {
 7053         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 7054         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        9203  +
/// Run the given test from the v4 suite for both header and query
        9204  +
/// signature locations
        9205  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        9206  +
    run_v4_test(test_name, SignatureLocation::Headers);
        9207  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        9208  +
}
        9209  +
        9210  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        9211  +
    assert_eq!(expected.scheme(), actual.scheme());
        9212  +
    assert_eq!(expected.authority(), actual.authority());
        9213  +
    assert_eq!(expected.path(), actual.path());
        9214  +
        9215  +
    // query params may be out of order
        9216  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9217  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        9218  +
    expected_params.sort();
        9219  +
        9220  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9221  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        9222  +
    actual_params.sort();
        9223  +
        9224  +
    assert_eq!(expected_params, actual_params);
        9225  +
}
        9226  +
        9227  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        9228  +
    let expected = expected.as_http_request();
        9229  +
    let actual = actual;
        9230  +
    assert_eq!(expected.method(), actual.method());
        9231  +
    assert_eq!(
        9232  +
        expected.headers().len(),
        9233  +
        actual.headers().len(),
        9234  +
        "extra or missing headers"
        9235  +
    );
        9236  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        9237  +
    assert_uri_eq(expected.uri(), actual.uri());
        9238  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        9239  +
}
        9240  +
        9241  +
/// Run the given test from the v4 suite for the given signature location
        9242  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        9243  +
    let test = SigningSuiteTest::v4(test_name);
        9244  +
    let tc = test.context();
        9245  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        9246  +
        9247  +
    let req = test.request();
        9248  +
    let expected_creq = test.canonical_request(signature_location);
        9249  +
    let signable_req = SignableRequest::from(&req);
        9250  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9251  +
        9252  +
    // check canonical request
        9253  +
    assert_eq!(
        9254  +
        expected_creq,
        9255  +
        actual_creq.to_string(),
        9256  +
        "canonical request didn't match (signature location: {signature_location:?})"
        9257  +
    );
        9258  +
        9259  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        9260  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9261  +
    let actual_string_to_sign = StringToSign::new_v4(
        9262  +
        *params.time(),
        9263  +
        params.region().unwrap(),
        9264  +
        params.name(),
        9265  +
        hashed_creq,
        9266  +
    )
        9267  +
    .to_string();
        9268  +
        9269  +
    // check string to sign
        9270  +
    assert_eq!(
        9271  +
        expected_string_to_sign, actual_string_to_sign,
        9272  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        9273  +
    );
        9274  +
        9275  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        9276  +
    let mut signed = req.as_http_request();
        9277  +
    out.output.apply_to_request_http0x(&mut signed);
        9278  +
        9279  +
    // check signature
        9280  +
    assert_eq!(
        9281  +
        test.signature(signature_location),
        9282  +
        out.signature,
        9283  +
        "signature didn't match (signature location: {signature_location:?})"
        9284  +
    );
        9285  +
        9286  +
    let expected = test.signed_request(signature_location);
        9287  +
    assert_requests_eq(expected, signed);
        9288  +
}
        9289  +
        9290  +
/// Test suite context.json
        9291  +
pub(crate) struct TestContext {
        9292  +
    pub(crate) identity: Identity,
        9293  +
    pub(crate) expiration_in_seconds: u64,
        9294  +
    pub(crate) normalize: bool,
        9295  +
    pub(crate) region: String,
        9296  +
    pub(crate) service: String,
        9297  +
    pub(crate) timestamp: String,
        9298  +
    pub(crate) omit_session_token: bool,
        9299  +
    pub(crate) sign_body: bool,
        9300  +
}
        9301  +
        9302  +
// Serde has limitations requiring this odd workaround.
        9303  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        9304  +
fn return_true() -> bool {
        9305  +
    true
        9306  +
}
        9307  +
        9308  +
#[derive(serde_derive::Deserialize)]
        9309  +
pub(crate) struct TestContextBuilder {
        9310  +
    credentials: TestContextCreds,
        9311  +
    expiration_in_seconds: u64,
        9312  +
    normalize: bool,
        9313  +
    region: String,
        9314  +
    service: String,
        9315  +
    timestamp: String,
        9316  +
    #[serde(default)]
        9317  +
    omit_session_token: bool,
        9318  +
    #[serde(default = "return_true")]
        9319  +
    sign_body: bool,
        9320  +
}
        9321  +
        9322  +
impl TestContextBuilder {
        9323  +
    pub(crate) fn build(self) -> TestContext {
        9324  +
        let identity = Identity::new(
        9325  +
            Credentials::from_keys(
        9326  +
                &self.credentials.access_key_id,
        9327  +
                &self.credentials.secret_access_key,
        9328  +
                self.credentials.token.clone(),
        9329  +
            ),
        9330  +
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
        9331  +
        );
        9332  +
        9333  +
        TestContext {
        9334  +
            identity,
        9335  +
            expiration_in_seconds: self.expiration_in_seconds,
        9336  +
            normalize: self.normalize,
        9337  +
            region: self.region,
        9338  +
            service: self.service,
        9339  +
            timestamp: self.timestamp,
        9340  +
            omit_session_token: self.omit_session_token,
        9341  +
            sign_body: self.sign_body,
 7055   9342   
        }
 7056   9343   
    }
        9344  +
}
 7057   9345   
 7058         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
 7059         -
        match signature_location {
 7060         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 7061         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        9346  +
#[derive(serde_derive::Deserialize)]
        9347  +
pub(crate) struct TestContextCreds {
        9348  +
    access_key_id: String,
        9349  +
    secret_access_key: String,
        9350  +
    token: Option<String>,
        9351  +
}
        9352  +
        9353  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        9354  +
    fn from(tc: &'a TestContext) -> Self {
        9355  +
        crate::sign::v4::SigningParams {
        9356  +
            identity: &tc.identity,
        9357  +
            region: &tc.region,
        9358  +
            name: &tc.service,
        9359  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        9360  +
                .unwrap()
        9361  +
                .into(),
        9362  +
            settings: SigningSettings {
        9363  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        9364  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        9365  +
                uri_path_normalization_mode: tc.normalize.into(),
        9366  +
                session_token_mode: if tc.omit_session_token {
        9367  +
                    SessionTokenMode::Exclude
        9368  +
                } else {
        9369  +
                    SessionTokenMode::Include
        9370  +
                },
        9371  +
                payload_checksum_kind: if tc.sign_body {
        9372  +
                    PayloadChecksumKind::XAmzSha256
        9373  +
                } else {
        9374  +
                    PayloadChecksumKind::NoHeader
        9375  +
                },
        9376  +
                ..Default::default()
        9377  +
            },
 7062   9378   
        }
 7063   9379   
    }
        9380  +
}
 7064   9381   
 7065         -
    fn test_parsed_request(path: &str) -> TestRequest {
 7066         -
        match parse_request(read(path).as_bytes()) {
 7067         -
            Ok(parsed) => parsed,
 7068         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
 7069         -
        }
        9382  +
#[cfg(feature = "sigv4a")]
        9383  +
pub(crate) mod v4a {
        9384  +
    use super::*;
        9385  +
    use crate::http_request::{
        9386  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        9387  +
    };
        9388  +
    use crate::sign::v4a;
        9389  +
    use p256::ecdsa::signature::{Signature, Verifier};
        9390  +
    use p256::ecdsa::{DerSignature, SigningKey};
        9391  +
    use std::time::Duration;
        9392  +
    use time::format_description::well_known::Rfc3339;
        9393  +
    use time::OffsetDateTime;
        9394  +
        9395  +
    fn new_v4a_signing_params_from_context(
        9396  +
        test_context: &'_ TestContext,
        9397  +
        signature_location: SignatureLocation,
        9398  +
    ) -> crate::http_request::SigningParams<'_> {
        9399  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        9400  +
        params.settings.signature_location = signature_location;
        9401  +
        params.into()
 7070   9402   
    }
 7071   9403   
 7072         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 7073         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 7074         -
        let context = read(&path);
 7075         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 7076         -
        tc_builder.build()
        9404  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        9405  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        9406  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
 7077   9407   
    }
 7078   9408   
 7079         -
    pub(crate) struct TestContext {
 7080         -
        pub(crate) identity: Identity,
 7081         -
        pub(crate) expiration_in_seconds: u64,
 7082         -
        pub(crate) normalize: bool,
 7083         -
        pub(crate) region: String,
 7084         -
        pub(crate) service: String,
 7085         -
        pub(crate) timestamp: String,
 7086         -
        pub(crate) omit_session_token: bool,
 7087         -
        pub(crate) sign_body: bool,
        9409  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        9410  +
        let test = SigningSuiteTest::v4a(test_name);
        9411  +
        let tc = test.context();
        9412  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        9413  +
        9414  +
        let req = test.request();
        9415  +
        let expected_creq = test.canonical_request(signature_location);
        9416  +
        let signable_req = SignableRequest::from(&req);
        9417  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9418  +
        9419  +
        assert_eq!(
        9420  +
            expected_creq,
        9421  +
            actual_creq.to_string(),
        9422  +
            "canonical request didn't match (signature location: {signature_location:?})"
        9423  +
        );
        9424  +
        9425  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        9426  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9427  +
        let actual_string_to_sign = StringToSign::new_v4a(
        9428  +
            *params.time(),
        9429  +
            params.region_set().unwrap(),
        9430  +
            params.name(),
        9431  +
            hashed_creq,
        9432  +
        )
        9433  +
        .to_string();
        9434  +
        9435  +
        assert_eq!(
        9436  +
            expected_string_to_sign, actual_string_to_sign,
        9437  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        9438  +
        );
        9439  +
        9440  +
        let out = sign(signable_req, &params).unwrap();
        9441  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        9442  +
        out.output
        9443  +
            .apply_to_request_http0x(&mut req.as_http_request());
        9444  +
        9445  +
        let creds = params.credentials().unwrap();
        9446  +
        let signing_key =
        9447  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        9448  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        9449  +
        let sig = sig
        9450  +
            .try_into()
        9451  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        9452  +
        9453  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        9454  +
        let peer_public_key = signing_key.verifying_key();
        9455  +
        let sts = actual_string_to_sign.as_bytes();
        9456  +
        peer_public_key.verify(sts, &sig).unwrap();
        9457  +
        // TODO(sigv4a) - use public.key.json as verifying key?
 7088   9458   
    }
 7089   9459   
 7090   9460   
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 7091   9461   
        fn from(tc: &'a TestContext) -> Self {
 7092   9462   
            crate::sign::v4a::SigningParams {
 7093   9463   
                identity: &tc.identity,
 7094   9464   
                region_set: &tc.region,
 7095   9465   
                name: &tc.service,
 7096   9466   
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 7097   9467   
                    .unwrap()
 7098   9468   
                    .into(),
 7099   9469   
                settings: SigningSettings {
 7100   9470   
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 7101   9471   
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 7102   9472   
                    uri_path_normalization_mode: tc.normalize.into(),
 7103   9473   
                    session_token_mode: if tc.omit_session_token {
 7104   9474   
                        SessionTokenMode::Exclude
 7105   9475   
                    } else {
 7106   9476   
                        SessionTokenMode::Include
 7107   9477   
                    },
 7108   9478   
                    payload_checksum_kind: if tc.sign_body {
 7109   9479   
                        PayloadChecksumKind::XAmzSha256
 7110   9480   
                    } else {
 7111   9481   
                        PayloadChecksumKind::NoHeader
 7112   9482   
                    },
 7113   9483   
                    ..Default::default()
 7114   9484   
                },
 7115   9485   
            }
 7116   9486   
        }
 7117   9487   
    }
 7118   9488   
 7119         -
    // Serde has limitations requiring this odd workaround.
 7120         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 7121         -
    fn return_true() -> bool {
 7122         -
        true
 7123         -
    }
 7124         -
 7125         -
    #[derive(Deserialize)]
 7126         -
    pub(crate) struct TestContextBuilder {
 7127         -
        credentials: TestContextCreds,
 7128         -
        expiration_in_seconds: u64,
 7129         -
        normalize: bool,
 7130         -
        region: String,
 7131         -
        service: String,
 7132         -
        timestamp: String,
 7133         -
        #[serde(default)]
 7134         -
        omit_session_token: bool,
 7135         -
        #[serde(default = "return_true")]
 7136         -
        sign_body: bool,
 7137         -
    }
 7138         -
 7139         -
    impl TestContextBuilder {
 7140         -
        pub(crate) fn build(self) -> TestContext {
 7141         -
            let identity = Identity::new(
 7142         -
                Credentials::from_keys(
 7143         -
                    &self.credentials.access_key_id,
 7144         -
                    &self.credentials.secret_access_key,
 7145         -
                    self.credentials.token.clone(),
 7146         -
                ),
 7147         -
                Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 7148         -
            );
 7149         -
 7150         -
            TestContext {
 7151         -
                identity,
 7152         -
                expiration_in_seconds: self.expiration_in_seconds,
 7153         -
                normalize: self.normalize,
 7154         -
                region: self.region,
 7155         -
                service: self.service,
 7156         -
                timestamp: self.timestamp,
 7157         -
                omit_session_token: self.omit_session_token,
 7158         -
                sign_body: self.sign_body,
 7159         -
            }
 7160         -
        }
 7161         -
    }
 7162         -
 7163         -
    #[derive(Deserialize)]
 7164         -
    pub(crate) struct TestContextCreds {
 7165         -
        access_key_id: String,
 7166         -
        secret_access_key: String,
 7167         -
        token: Option<String>,
 7168         -
    }
 7169         -
 7170   9489   
    #[test]
 7171   9490   
    fn test_parse() {
 7172         -
        let req = test_request("post-header-key-case");
        9491  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 7173   9492   
        assert_eq!(req.method, "POST");
 7174   9493   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7175   9494   
        assert!(req.headers.is_empty());
 7176   9495   
    }
 7177   9496   
 7178   9497   
    #[test]
 7179   9498   
    fn test_read_query_params() {
 7180         -
        let req = test_request("get-header-value-trim");
        9499  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 7181   9500   
        assert_eq!(req.method, "GET");
 7182   9501   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7183   9502   
        assert!(!req.headers.is_empty());
 7184   9503   
    }
 7185   9504   
}
 7186   9505   
 7187   9506   
fn read(path: &str) -> String {
 7188   9507   
    println!("Loading `{}` for test case...", path);
 7189   9508   
    let v = {
 7190   9509   
        match std::fs::read_to_string(path) {
 7191   9510   
            // This replacement is necessary for tests to pass on Windows, as reading the
 7192   9511   
            // test snapshots from the file system results in CRLF line endings being inserted.
 7193   9512   
            Ok(value) => value.replace("\r\n", "\n"),
 7194   9513   
            Err(err) => {
 7195   9514   
                panic!("failed to load test case `{}`: {}", path, err);
 7196   9515   
            }
 7197   9516   
        }
 7198   9517   
    };
 7199   9518   
 7200   9519   
    v.trim().to_string()
 7201   9520   
}
 7202   9521   
 7203   9522   
pub(crate) struct TestRequest {
 7204   9523   
    pub(crate) uri: String,
 7205   9524   
    pub(crate) method: String,
 7206   9525   
    pub(crate) headers: Vec<(String, String)>,
 7207   9526   
    pub(crate) body: TestSignedBody,
 7208   9527   
}
 7209   9528   
 7210   9529   
pub(crate) enum TestSignedBody {
 7211   9530   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 7212   9531   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 7213   9532   
                    )
 7214   9533   
                })
 7215   9534   
                .collect::<Vec<_>>(),
 7216   9535   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 7217   9536   
        }
 7218   9537   
    }
 7219   9538   
}
 7220   9539   
 7221   9540   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 7222   9541   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 7223   9542   
        SignableRequest::new(
 7224   9543   
            &request.method,
 7225   9544   
            &request.uri,
 7226   9545   
            request
 7227   9546   
                .headers
 7228   9547   
                .iter()
 7229   9548   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 7230   9549   
            request.body.as_signable_body(),
 7231   9550   
        )
 7232   9551   
        .expect("URI MUST be valid")
 7233   9552   
    }
 7234   9553   
}
 7235   9554   
 7236   9555   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 7237   9556   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 7238   9557   
    // httparse 1.5 requires two trailing newlines to head the header section.
 7239   9558   
    let mut with_newline = Vec::from(s);
 7240   9559   
    with_newline.push(b'\n');
 7241   9560   
    let mut req = httparse::Request::new(&mut headers);
 7242         -
    let _ = req.parse(&with_newline).unwrap();
        9561  +
    let status = req.parse(&with_newline).unwrap();
        9562  +
        9563  +
    let body = if status.is_complete() {
        9564  +
        let body_offset = status.unwrap();
        9565  +
        // ignore the newline we added, take from original
        9566  +
        &s[body_offset..]
        9567  +
    } else {
        9568  +
        &[]
        9569  +
    };
 7243   9570   
 7244   9571   
    let mut uri_builder = Uri::builder().scheme("https");
 7245   9572   
    if let Some(path) = req.path {
 7246   9573   
        uri_builder = uri_builder.path_and_query(path);
 7247   9574   
    }
 7248   9575   
 7249   9576   
    let mut headers = vec![];
 7250   9577   
    for header in req.headers {
 7251   9578   
        let name = header.name.to_lowercase();
 7252   9579   
        if name == "host" {
 7253   9580   
            uri_builder = uri_builder.authority(header.value);
 7254   9581   
        } else if !name.is_empty() {
 7255   9582   
            headers.push((
 7256   9583   
                header.name.to_string(),
 7257   9584   
                std::str::from_utf8(header.value)?.to_string(),
 7258   9585   
            ));
 7259   9586   
        }
 7260   9587   
    }
 7261   9588   
 7262   9589   
    Ok(TestRequest {
 7263   9590   
        uri: uri_builder.build()?.to_string(),
 7264   9591   
        method: req.method.unwrap().to_string(),
 7265   9592   
        headers,
 7266         -
        body: TestSignedBody::Bytes(vec![]),
        9593  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 7267   9594   
    })
 7268   9595   
}
 7269   9596   
 7270   9597   
#[test]
 7271   9598   
fn test_parse_headers() {
 7272   9599   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 7273   9600   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 7274   9601   
    assert_eq!(
 7275   9602   
        httparse::parse_headers(buf, &mut headers),
 7276   9603   
        Ok(httparse::Status::Complete((
 7277   9604   
            56,
 7278   9605   
            &[
 7279   9606   
                httparse::Header {
 7280   9607   
                    name: "Host",
 7281   9608   
                    value: b"example.amazonaws.com",
 7282   9609   
                },
 7283   9610   
                httparse::Header {
 7284   9611   
                    name: "X-Amz-Date",
 7285   9612   
                    value: b"20150830T123600Z",
 7286   9613   
                }
 7287   9614   
            ][..]
 7288   9615   
        )))
 7289   9616   
    );
 7290   9617   
}
 7291   9618   
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
 7292   9619   
index a208453..fc00249 100644
 7293         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        9620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 7294   9621   
@@ -168,52 +168,54 @@ pub mod signing_params {
 7295   9622   
        );
 7296   9623   
 7297   9624   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 7298   9625   
        /// a required argument was not given.
 7299   9626   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 7300   9627   
            Ok(SigningParams {
 7301   9628   
                identity: self
 7302   9629   
                    .identity
 7303   9630   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 7304   9631   
                region: self
 7305   9632   
                    .region
 7306   9633   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 7307   9634   
                name: self
 7308   9635   
                    .name
 7309   9636   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 7310   9637   
                time: self
 7311   9638   
                    .time
 7312   9639   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 7313   9640   
                settings: self
 7314   9641   
                    .settings
 7315   9642   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 7316   9643   
            })
 7317   9644   
        }
 7318   9645   
    }
 7319   9646   
}
 7320   9647   
 7321   9648   
#[cfg(test)]
 7322   9649   
mod tests {
 7323   9650   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 7324   9651   
    use crate::date_time::test_parsers::parse_date_time;
 7325         -
    use crate::http_request::test;
 7326   9652   
 7327   9653   
    #[test]
 7328   9654   
    fn test_signature_calculation() {
 7329   9655   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 7330         -
        let creq = test::v4::test_canonical_request("iam");
        9656  +
        let creq = r#"AWS4-HMAC-SHA256
        9657  +
20150830T123600Z
        9658  +
20150830/us-east-1/iam/aws4_request
        9659  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 7331   9660   
        let time = parse_date_time("20150830T123600Z").unwrap();
 7332   9661   
 7333   9662   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 7334   9663   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 7335   9664   
 7336   9665   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 7337   9666   
        assert_eq!(expected, &signature);
 7338   9667   
    }
 7339   9668   
 7340   9669   
    #[test]
 7341   9670   
    fn sign_payload_empty_string() {
 7342   9671   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 7343   9672   
        let actual = sha256_hex_string([]);
 7344   9673   
        assert_eq!(expected, actual);
 7345   9674   
    }
 7346   9675   
}
 7347   9676   
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
 7348   9677   
index ce78c38..8c2f591 100644
 7349         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        9678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 7350   9679   
@@ -1,43 +1,43 @@
 7351   9680   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7352   9681   
[package]
 7353   9682   
name = "aws-smithy-checksums"
 7354   9683   
version = "0.63.5"
 7355   9684   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 7356   9685   
description = "Checksum calculation and verification callbacks"
 7357   9686   
edition = "2021"
 7358   9687   
license = "Apache-2.0"
 7359   9688   
repository = "https://github.com/smithy-lang/smithy-rs"
 7360   9689   
[package.metadata.docs.rs]
 7361   9690   
all-features = true
 7362   9691   
targets = ["x86_64-unknown-linux-gnu"]
 7363   9692   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7364   9693   
rustdoc-args = ["--cfg", "docsrs"]
 7365   9694   
 7366   9695   
[dependencies]
 7367   9696   
bytes = "1.10.0"
 7368   9697   
crc-fast = "1.3.0"
 7369   9698   
hex = "0.4.3"
 7370   9699   
http = "0.2.9"
 7371   9700   
http-body = "0.4.5"
 7372   9701   
md-5 = "0.10"
 7373   9702   
pin-project-lite = "0.2.14"
 7374   9703   
sha1 = "0.10"
 7375   9704   
sha2 = "0.10"
 7376   9705   
tracing = "0.1.40"
 7377   9706   
 7378   9707   
[dependencies.aws-smithy-http]
 7379   9708   
path = "../aws-smithy-http"
 7380         -
version = "0.62.2"
        9709  +
version = "0.62.3"
 7381   9710   
 7382   9711   
[dependencies.aws-smithy-types]
 7383   9712   
path = "../aws-smithy-types"
 7384   9713   
version = "1.3.2"
 7385   9714   
 7386   9715   
[dev-dependencies]
 7387   9716   
bytes-utils = "0.1.2"
 7388   9717   
pretty_assertions = "1.3"
 7389   9718   
tracing-test = "0.2.1"
 7390   9719   
 7391   9720   
[dev-dependencies.tokio]
 7392   9721   
version = "1.23.1"
 7393   9722   
features = ["macros", "rt"]
 7394   9723   
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
 7395   9724   
index 970c99e..d3c7a49 100644
 7396         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        9725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 7397   9726   
@@ -1,34 +1,34 @@
 7398   9727   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7399   9728   
[package]
 7400   9729   
name = "aws-smithy-http"
 7401         -
version = "0.62.2"
        9730  +
version = "0.62.3"
 7402   9731   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7403   9732   
description = "Smithy HTTP logic for smithy-rs."
 7404   9733   
edition = "2021"
 7405   9734   
license = "Apache-2.0"
 7406   9735   
repository = "https://github.com/smithy-lang/smithy-rs"
 7407   9736   
[package.metadata.docs.rs]
 7408   9737   
all-features = true
 7409   9738   
targets = ["x86_64-unknown-linux-gnu"]
 7410   9739   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7411   9740   
rustdoc-args = ["--cfg", "docsrs"]
 7412   9741   
 7413   9742   
[features]
 7414   9743   
event-stream = ["aws-smithy-eventstream"]
 7415   9744   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 7416   9745   
 7417   9746   
[dependencies]
 7418   9747   
bytes = "1.10.0"
 7419   9748   
bytes-utils = "0.1"
 7420   9749   
percent-encoding = "2.3.1"
 7421   9750   
pin-project-lite = "0.2.14"
 7422   9751   
pin-utils = "0.1.0"
 7423   9752   
tracing = "0.1.40"
 7424   9753   
futures-core = "0.3.31"
 7425   9754   
 7426   9755   
[dependencies.aws-smithy-eventstream]
 7427   9756   
path = "../aws-smithy-eventstream"
 7428   9757   
optional = true
 7429   9758   
version = "0.60.10"
 7430   9759   
 7431   9760   
[dependencies.aws-smithy-runtime-api]
 7432   9761   
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
 7433   9762   
index 508f7a2..361545e 100644
 7434         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        9763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 7435   9764   
@@ -1,27 +1,27 @@
 7436   9765   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7437   9766   
[[bin]]
 7438   9767   
name = "read_many_from_str"
 7439   9768   
path = "fuzz_targets/read_many_from_str.rs"
 7440   9769   
test = false
 7441   9770   
doc = false
 7442   9771   
 7443   9772   
[package]
 7444   9773   
name = "aws-smithy-http-fuzz"
 7445   9774   
version = "0.0.0"
 7446   9775   
authors = ["Automatically generated"]
 7447   9776   
publish = false
 7448   9777   
edition = "2021"
 7449   9778   
 7450   9779   
[package.metadata]
 7451   9780   
cargo-fuzz = true
 7452   9781   
 7453   9782   
[dependencies]
 7454   9783   
libfuzzer-sys = "=0.4.7"
 7455   9784   
http = "0.2.3"
 7456   9785   
 7457   9786   
[dependencies.aws-smithy-http]
 7458   9787   
path = ".."
 7459         -
version = "0.62.2"
        9788  +
version = "0.62.3"
 7460   9789   
 7461   9790   
[workspace]
 7462   9791   
members = ["."]
 7463   9792   
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
 7464   9793   
index fef41d0..2792229 100644
 7465         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        9794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 7466   9795   
@@ -25,68 +25,74 @@ impl QueryWriter {
 7467   9796   
    pub fn new(uri: &Uri) -> Self {
 7468   9797   
        let new_path_and_query = uri
 7469   9798   
            .path_and_query()
 7470   9799   
            .map(|pq| pq.to_string())
 7471   9800   
            .unwrap_or_default();
 7472   9801   
        let prefix = if uri.query().is_none() {
 7473   9802   
            Some('?')
 7474   9803   
        } else if !uri.query().unwrap_or_default().is_empty() {
 7475   9804   
            Some('&')
 7476   9805   
        } else {
 7477   9806   
            None
 7478   9807   
        };
 7479   9808   
        QueryWriter {
 7480   9809   
            base_uri: uri.clone(),
 7481   9810   
            new_path_and_query,
 7482   9811   
            prefix,
 7483   9812   
        }
 7484   9813   
    }
 7485   9814   
 7486   9815   
    /// Clears all query parameters.
 7487   9816   
    pub fn clear_params(&mut self) {
 7488   9817   
        if let Some(index) = self.new_path_and_query.find('?') {
 7489   9818   
            self.new_path_and_query.truncate(index);
 7490   9819   
            self.prefix = Some('?');
 7491   9820   
        }
 7492   9821   
    }
 7493   9822   
 7494   9823   
    /// Inserts a new query parameter. The key and value are percent encoded
 7495   9824   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 7496   9825   
    pub fn insert(&mut self, k: &str, v: &str) {
        9826  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        9827  +
    }
        9828  +
    
        9829  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        9830  +
    /// as is.
        9831  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 7497   9832   
        if let Some(prefix) = self.prefix {
 7498   9833   
            self.new_path_and_query.push(prefix);
 7499   9834   
        }
 7500   9835   
        self.prefix = Some('&');
 7501         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        9836  +
        self.new_path_and_query.push_str(encoded_k);
 7502   9837   
        self.new_path_and_query.push('=');
 7503         -
 7504         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
        9838  +
        self.new_path_and_query.push_str(encoded_v)
        9839  +
        
 7505   9840   
    }
 7506   9841   
 7507   9842   
    /// Returns just the built query string.
 7508   9843   
    pub fn build_query(self) -> String {
 7509   9844   
        self.build_uri().query().unwrap_or_default().to_string()
 7510   9845   
    }
 7511   9846   
 7512   9847   
    /// Returns a full [`Uri`] with the query string updated.
 7513   9848   
    pub fn build_uri(self) -> Uri {
 7514   9849   
        let mut parts = self.base_uri.into_parts();
 7515   9850   
        parts.path_and_query = Some(
 7516   9851   
            self.new_path_and_query
 7517   9852   
                .parse()
 7518   9853   
                .expect("adding query should not invalidate URI"),
 7519   9854   
        );
 7520   9855   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 7521   9856   
    }
 7522   9857   
}
 7523   9858   
 7524   9859   
#[cfg(test)]
 7525   9860   
mod test {
 7526   9861   
    use super::QueryWriter;
 7527   9862   
    use http_02x::Uri;
 7528   9863   
 7529   9864   
    #[test]
 7530   9865   
    fn empty_uri() {
 7531   9866   
        let uri = Uri::from_static("http://www.example.com");
 7532   9867   
        let mut query_writer = QueryWriter::new(&uri);
 7533   9868   
        query_writer.insert("key", "val%ue");
 7534   9869   
        query_writer.insert("another", "value");
 7535   9870   
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
 7536   9871   
index f108978..df7a9fe 100644
 7537         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        9872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 7538   9873   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 7539   9874   
 7540   9875   
[package.metadata.smithy-rs-release-tooling]
 7541   9876   
stable = true
 7542   9877   
[package.metadata.cargo-udeps.ignore]
 7543   9878   
normal = ["aws-smithy-http"]
 7544   9879   
 7545   9880   
[features]
 7546   9881   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 7547   9882   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 7548   9883   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 7549   9884   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 7550   9885   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 7551   9886   
rt-tokio = ["tokio/rt"]
 7552   9887   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 7553   9888   
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"]
 7554   9889   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 7555   9890   
 7556   9891   
[dependencies]
 7557   9892   
bytes = "1.10.0"
 7558   9893   
fastrand = "2.3.0"
 7559   9894   
pin-project-lite = "0.2.14"
 7560   9895   
pin-utils = "0.1.0"
 7561   9896   
tracing = "0.1.40"
 7562   9897   
 7563   9898   
[dependencies.aws-smithy-async]
 7564   9899   
path = "../aws-smithy-async"
 7565   9900   
version = "1.2.5"
 7566   9901   
 7567   9902   
[dependencies.aws-smithy-http]
 7568   9903   
path = "../aws-smithy-http"
 7569         -
version = "0.62.2"
        9904  +
version = "0.62.3"
 7570   9905   
 7571   9906   
[dependencies.aws-smithy-observability]
 7572   9907   
path = "../aws-smithy-observability"
 7573   9908   
version = "0.1.3"
 7574   9909   
 7575   9910   
[dependencies.aws-smithy-runtime-api]
 7576   9911   
path = "../aws-smithy-runtime-api"
 7577   9912   
version = "1.8.5"
 7578   9913   
 7579   9914   
[dependencies.aws-smithy-types]
 7580   9915   
path = "../aws-smithy-types"
 7581   9916   
features = ["http-body-0-4-x"]
 7582   9917   
version = "1.3.2"
 7583   9918   
 7584   9919   
[dependencies.aws-smithy-http-client]
 7585   9920   
path = "../aws-smithy-http-client"
 7586   9921   
optional = true
 7587   9922   
version = "1.0.6"
 7588   9923   
 7589   9924   
[dependencies.http-02x]
 7590   9925   
package = "http"
 7591   9926   
version = "0.2.9"
 7592   9927   
 7593   9928   
[dependencies.http-1x]
 7594   9929   
package = "http"
 7595   9930   
version = "1"
 7596   9931   
 7597   9932   
[dependencies.http-body-04x]
 7598   9933   
package = "http-body"
 7599   9934   
version = "0.4.5"
 7600   9935   
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
 7601   9936   
index 4e050c6..f58eb1c 100644
 7602         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
        9937  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 7603   9938   
@@ -1,33 +1,33 @@
 7604   9939   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7605   9940   
[package]
 7606   9941   
name = "aws-smithy-wasm"
 7607   9942   
version = "0.1.4"
 7608   9943   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 7609   9944   
description = "Smithy WebAssembly configuration for smithy-rs."
 7610   9945   
edition = "2021"
 7611   9946   
license = "Apache-2.0"
 7612   9947   
repository = "https://github.com/awslabs/smithy-rs"
 7613   9948   
[package.metadata.docs.rs]
 7614   9949   
all-features = true
 7615   9950   
targets = ["x86_64-unknown-linux-gnu"]
 7616   9951   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7617   9952   
rustdoc-args = ["--cfg", "docsrs"]
 7618   9953   
 7619   9954   
[dependencies]
 7620   9955   
bytes = "1.10.0"
 7621   9956   
http = "1.0.0"
 7622   9957   
tracing = "0.1.40"
 7623   9958   
wasi = "0.12.1"
 7624   9959   
 7625   9960   
[dependencies.aws-smithy-runtime-api]
 7626   9961   
path = "../aws-smithy-runtime-api"
 7627   9962   
features = ["http-1x"]
 7628   9963   
version = "1.8.5"
 7629   9964   
 7630   9965   
[dependencies.aws-smithy-http]
 7631   9966   
path = "../aws-smithy-http"
 7632         -
version = "0.62.2"
        9967  +
version = "0.62.3"
 7633   9968   
 7634   9969   
[dependencies.aws-smithy-types]
 7635   9970   
path = "../aws-smithy-types"
 7636   9971   
version = "1.3.2"
 7637   9972   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7638   9973   
index a880648..139e808 100644
 7639         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
        9974  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7640   9975   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 7641   9976   
edition = "2021"
 7642   9977   
license = "Apache-2.0"
 7643   9978   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7644   9979   
rust-version = "1.86.0"
 7645   9980   
readme = "README.md"
 7646   9981   
[package.metadata.smithy]
 7647   9982   
codegen-version = "ci"
 7648   9983   
[package.metadata.docs.rs]
 7649   9984   
all-features = true
 7650   9985   
targets = ["x86_64-unknown-linux-gnu"]
 7651   9986   
[dependencies.aws-credential-types]
 7652   9987   
path = "../aws-credential-types"
 7653   9988   
version = "1.2.4"
 7654   9989   
 7655   9990   
[dependencies.aws-runtime]
 7656   9991   
path = "../aws-runtime"
 7657   9992   
features = ["event-stream"]
 7658   9993   
version = "1.5.9"
 7659   9994   
 7660   9995   
[dependencies.aws-smithy-async]
 7661   9996   
path = "../aws-smithy-async"
 7662   9997   
version = "1.2.5"
 7663   9998   
 7664   9999   
[dependencies.aws-smithy-eventstream]
 7665  10000   
path = "../aws-smithy-eventstream"
 7666  10001   
version = "0.60.10"
 7667  10002   
 7668  10003   
[dependencies.aws-smithy-http]
 7669  10004   
path = "../aws-smithy-http"
 7670  10005   
features = ["event-stream"]
 7671         -
version = "0.62.2"
       10006  +
version = "0.62.3"
 7672  10007   
 7673  10008   
[dependencies.aws-smithy-json]
 7674  10009   
path = "../aws-smithy-json"
 7675  10010   
version = "0.61.4"
 7676  10011   
 7677  10012   
[dependencies.aws-smithy-runtime]
 7678  10013   
path = "../aws-smithy-runtime"
 7679  10014   
features = ["client"]
 7680  10015   
version = "1.8.5"
 7681  10016   
 7682  10017   
[dependencies.aws-smithy-runtime-api]
 7683  10018   
path = "../aws-smithy-runtime-api"
 7684  10019   
features = ["client", "http-02x"]
 7685  10020   
version = "1.8.5"
 7686  10021   
 7687  10022   
[dependencies.aws-smithy-types]
 7688  10023   
path = "../aws-smithy-types"
 7689  10024   
version = "1.3.2"
 7690  10025   
 7691  10026   
[dependencies.aws-types]
 7692  10027   
path = "../aws-types"
 7693  10028   
version = "1.3.8"
 7694  10029   
 7695  10030   
[dependencies.bytes]
 7696  10031   
version = "1.4.0"
 7697  10032   
 7698  10033   
[dependencies.fastrand]
 7699  10034   
version = "2.0.0"
 7700  10035   
 7701  10036   
[dependencies.http]
 7702  10037   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7703  10038   
index 415ecc9..667d12b 100644
 7704         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
       10039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7705  10040   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 7706  10041   
edition = "2021"
 7707  10042   
license = "Apache-2.0"
 7708  10043   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7709  10044   
rust-version = "1.86.0"
 7710  10045   
readme = "README.md"
 7711  10046   
[package.metadata.smithy]
 7712  10047   
codegen-version = "ci"
 7713  10048   
[package.metadata.docs.rs]
 7714  10049   
all-features = true
 7715  10050   
targets = ["x86_64-unknown-linux-gnu"]
 7716  10051   
[dependencies.aws-credential-types]
 7717  10052   
path = "../aws-credential-types"
 7718  10053   
version = "1.2.4"
 7719  10054   
 7720  10055   
[dependencies.aws-runtime]
 7721  10056   
path = "../aws-runtime"
 7722  10057   
features = ["event-stream"]
 7723  10058   
version = "1.5.9"
 7724  10059   
 7725  10060   
[dependencies.aws-smithy-async]
 7726  10061   
path = "../aws-smithy-async"
 7727  10062   
version = "1.2.5"
 7728  10063   
 7729  10064   
[dependencies.aws-smithy-eventstream]
 7730  10065   
path = "../aws-smithy-eventstream"
 7731  10066   
version = "0.60.10"
 7732  10067   
 7733  10068   
[dependencies.aws-smithy-http]
 7734  10069   
path = "../aws-smithy-http"
 7735  10070   
features = ["event-stream"]
 7736         -
version = "0.62.2"
       10071  +
version = "0.62.3"
 7737  10072   
 7738  10073   
[dependencies.aws-smithy-json]
 7739  10074   
path = "../aws-smithy-json"
 7740  10075   
version = "0.61.4"
 7741  10076   
 7742  10077   
[dependencies.aws-smithy-runtime]
 7743  10078   
path = "../aws-smithy-runtime"
 7744  10079   
features = ["client"]
 7745  10080   
version = "1.8.5"
 7746  10081   
 7747  10082   
[dependencies.aws-smithy-runtime-api]
 7748  10083   
path = "../aws-smithy-runtime-api"
 7749  10084   
features = ["client", "http-02x"]
 7750  10085   
version = "1.8.5"
 7751  10086   
 7752  10087   
[dependencies.aws-smithy-types]
 7753  10088   
path = "../aws-smithy-types"
 7754  10089   
version = "1.3.2"
 7755  10090   
 7756  10091   
[dependencies.aws-types]
 7757  10092   
path = "../aws-types"
 7758  10093   
version = "1.3.8"
 7759  10094   
 7760  10095   
[dependencies.bytes]
 7761  10096   
version = "1.4.0"
 7762  10097   
 7763  10098   
[dependencies.fastrand]
 7764  10099   
version = "2.0.0"
 7765  10100   
 7766  10101   
[dependencies.http]
 7767  10102   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7768  10103   
index 8871cab..ed88de6 100644
 7769         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
       10104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7770  10105   
@@ -1,61 +1,61 @@
 7771  10106   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7772  10107   
[package]
 7773  10108   
name = "aws-sdk-codecatalyst"
 7774  10109   
version = "0.0.0-local"
 7775  10110   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7776  10111   
description = "AWS SDK for Amazon CodeCatalyst"
 7777  10112   
edition = "2021"
 7778  10113   
license = "Apache-2.0"
 7779  10114   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7780  10115   
rust-version = "1.86.0"
 7781  10116   
readme = "README.md"
 7782  10117   
[package.metadata.smithy]
 7783  10118   
codegen-version = "ci"
 7784  10119   
[package.metadata.docs.rs]
 7785  10120   
all-features = true
 7786  10121   
targets = ["x86_64-unknown-linux-gnu"]
 7787  10122   
[dependencies.aws-credential-types]
 7788  10123   
path = "../aws-credential-types"
 7789  10124   
version = "1.2.4"
 7790  10125   
 7791  10126   
[dependencies.aws-runtime]
 7792  10127   
path = "../aws-runtime"
 7793  10128   
version = "1.5.9"
 7794  10129   
 7795  10130   
[dependencies.aws-smithy-async]
 7796  10131   
path = "../aws-smithy-async"
 7797  10132   
version = "1.2.5"
 7798  10133   
 7799  10134   
[dependencies.aws-smithy-http]
 7800  10135   
path = "../aws-smithy-http"
 7801         -
version = "0.62.2"
       10136  +
version = "0.62.3"
 7802  10137   
 7803  10138   
[dependencies.aws-smithy-json]
 7804  10139   
path = "../aws-smithy-json"
 7805  10140   
version = "0.61.4"
 7806  10141   
 7807  10142   
[dependencies.aws-smithy-runtime]
 7808  10143   
path = "../aws-smithy-runtime"
 7809  10144   
features = ["client", "http-auth"]
 7810  10145   
version = "1.8.5"
 7811  10146   
 7812  10147   
[dependencies.aws-smithy-runtime-api]
 7813  10148   
path = "../aws-smithy-runtime-api"
 7814  10149   
features = ["client", "http-02x", "http-auth"]
 7815  10150   
version = "1.8.5"
 7816  10151   
 7817  10152   
[dependencies.aws-smithy-types]
 7818  10153   
path = "../aws-smithy-types"
 7819  10154   
version = "1.3.2"
 7820  10155   
 7821  10156   
[dependencies.aws-types]
 7822  10157   
path = "../aws-types"
 7823  10158   
version = "1.3.8"
 7824  10159   
 7825  10160   
[dependencies.bytes]
 7826  10161   
version = "1.4.0"
 7827  10162   
 7828  10163   
[dependencies.fastrand]
 7829  10164   
version = "2.0.0"
 7830  10165   
 7831  10166   
[dependencies.http]
 7832  10167   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7833  10168   
index 89573ff..05238af 100644
 7834         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
       10169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7835  10170   
@@ -1,61 +1,61 @@
 7836  10171   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7837  10172   
[package]
 7838  10173   
name = "aws-sdk-config"
 7839  10174   
version = "0.0.0-local"
 7840  10175   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7841  10176   
description = "AWS SDK for AWS Config"
 7842  10177   
edition = "2021"
 7843  10178   
license = "Apache-2.0"
 7844  10179   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7845  10180   
rust-version = "1.86.0"
 7846  10181   
readme = "README.md"
 7847  10182   
[package.metadata.smithy]
 7848  10183   
codegen-version = "ci"
 7849  10184   
[package.metadata.docs.rs]
 7850  10185   
all-features = true
 7851  10186   
targets = ["x86_64-unknown-linux-gnu"]
 7852  10187   
[dependencies.aws-credential-types]
 7853  10188   
path = "../aws-credential-types"
 7854  10189   
version = "1.2.4"
 7855  10190   
 7856  10191   
[dependencies.aws-runtime]
 7857  10192   
path = "../aws-runtime"
 7858  10193   
version = "1.5.9"
 7859  10194   
 7860  10195   
[dependencies.aws-smithy-async]
 7861  10196   
path = "../aws-smithy-async"
 7862  10197   
version = "1.2.5"
 7863  10198   
 7864  10199   
[dependencies.aws-smithy-http]
 7865  10200   
path = "../aws-smithy-http"
 7866         -
version = "0.62.2"
       10201  +
version = "0.62.3"
 7867  10202   
 7868  10203   
[dependencies.aws-smithy-json]
 7869  10204   
path = "../aws-smithy-json"
 7870  10205   
version = "0.61.4"
 7871  10206   
 7872  10207   
[dependencies.aws-smithy-runtime]
 7873  10208   
path = "../aws-smithy-runtime"
 7874  10209   
features = ["client"]
 7875  10210   
version = "1.8.5"
 7876  10211   
 7877  10212   
[dependencies.aws-smithy-runtime-api]
 7878  10213   
path = "../aws-smithy-runtime-api"
 7879  10214   
features = ["client", "http-02x"]
 7880  10215   
version = "1.8.5"
 7881  10216   
 7882  10217   
[dependencies.aws-smithy-types]
 7883  10218   
path = "../aws-smithy-types"
 7884  10219   
version = "1.3.2"
 7885  10220   
 7886  10221   
[dependencies.aws-types]
 7887  10222   
path = "../aws-types"
 7888  10223   
version = "1.3.8"
 7889  10224   
 7890  10225   
[dependencies.bytes]
 7891  10226   
version = "1.4.0"
 7892  10227   
 7893  10228   
[dependencies.fastrand]
 7894  10229   
version = "2.0.0"
 7895  10230   
 7896  10231   
[dependencies.http]
 7897  10232   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7898  10233   
index d397c58..2c1062b 100644
 7899         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
       10234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7900  10235   
@@ -1,61 +1,61 @@
 7901  10236   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7902  10237   
[package]
 7903  10238   
name = "aws-sdk-dynamodb"
 7904  10239   
version = "0.0.0-local"
 7905  10240   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7906  10241   
description = "AWS SDK for Amazon DynamoDB"
 7907  10242   
edition = "2021"
 7908  10243   
license = "Apache-2.0"
 7909  10244   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7910  10245   
rust-version = "1.86.0"
 7911  10246   
readme = "README.md"
 7912  10247   
[package.metadata.smithy]
 7913  10248   
codegen-version = "ci"
 7914  10249   
[package.metadata.docs.rs]
 7915  10250   
all-features = true
 7916  10251   
targets = ["x86_64-unknown-linux-gnu"]
 7917  10252   
[dependencies.aws-credential-types]
 7918  10253   
path = "../aws-credential-types"
 7919  10254   
version = "1.2.4"
 7920  10255   
 7921  10256   
[dependencies.aws-runtime]
 7922  10257   
path = "../aws-runtime"
 7923  10258   
version = "1.5.9"
 7924  10259   
 7925  10260   
[dependencies.aws-smithy-async]
 7926  10261   
path = "../aws-smithy-async"
 7927  10262   
version = "1.2.5"
 7928  10263   
 7929  10264   
[dependencies.aws-smithy-http]
 7930  10265   
path = "../aws-smithy-http"
 7931         -
version = "0.62.2"
       10266  +
version = "0.62.3"
 7932  10267   
 7933  10268   
[dependencies.aws-smithy-json]
 7934  10269   
path = "../aws-smithy-json"
 7935  10270   
version = "0.61.4"
 7936  10271   
 7937  10272   
[dependencies.aws-smithy-runtime]
 7938  10273   
path = "../aws-smithy-runtime"
 7939  10274   
features = ["client"]
 7940  10275   
version = "1.8.5"
 7941  10276   
 7942  10277   
[dependencies.aws-smithy-runtime-api]
 7943  10278   
path = "../aws-smithy-runtime-api"
 7944  10279   
features = ["client", "http-02x"]
 7945  10280   
version = "1.8.5"
 7946  10281   
 7947  10282   
[dependencies.aws-smithy-types]
 7948  10283   
path = "../aws-smithy-types"
 7949  10284   
version = "1.3.2"
 7950  10285   
 7951  10286   
[dependencies.aws-types]
 7952  10287   
path = "../aws-types"
 7953  10288   
version = "1.3.8"
 7954  10289   
 7955  10290   
[dependencies.bytes]
 7956  10291   
version = "1.4.0"
 7957  10292   
 7958  10293   
[dependencies.fastrand]
 7959  10294   
version = "2.0.0"
 7960  10295   
 7961  10296   
[dependencies.http]
 7962  10297   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7963  10298   
index c0ba315..46168af 100644
 7964         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
       10299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7965  10300   
@@ -1,61 +1,61 @@
 7966  10301   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7967  10302   
[package]
 7968  10303   
name = "aws-sdk-ec2"
 7969  10304   
version = "0.0.0-local"
 7970  10305   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7971  10306   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 7972  10307   
edition = "2021"
 7973  10308   
license = "Apache-2.0"
 7974  10309   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7975  10310   
rust-version = "1.86.0"
 7976  10311   
readme = "README.md"
 7977  10312   
[package.metadata.smithy]
 7978  10313   
codegen-version = "ci"
 7979  10314   
[package.metadata.docs.rs]
 7980  10315   
all-features = true
 7981  10316   
targets = ["x86_64-unknown-linux-gnu"]
 7982  10317   
[dependencies.aws-credential-types]
 7983  10318   
path = "../aws-credential-types"
 7984  10319   
version = "1.2.4"
 7985  10320   
 7986  10321   
[dependencies.aws-runtime]
 7987  10322   
path = "../aws-runtime"
 7988  10323   
version = "1.5.9"
 7989  10324   
 7990  10325   
[dependencies.aws-smithy-async]
 7991  10326   
path = "../aws-smithy-async"
 7992  10327   
version = "1.2.5"
 7993  10328   
 7994  10329   
[dependencies.aws-smithy-http]
 7995  10330   
path = "../aws-smithy-http"
 7996         -
version = "0.62.2"
       10331  +
version = "0.62.3"
 7997  10332   
 7998  10333   
[dependencies.aws-smithy-json]
 7999  10334   
path = "../aws-smithy-json"
 8000  10335   
version = "0.61.4"
 8001  10336   
 8002  10337   
[dependencies.aws-smithy-query]
 8003  10338   
path = "../aws-smithy-query"
 8004  10339   
version = "0.60.7"
 8005  10340   
 8006  10341   
[dependencies.aws-smithy-runtime]
 8007  10342   
path = "../aws-smithy-runtime"
 8008  10343   
features = ["client"]
 8009  10344   
version = "1.8.5"
 8010  10345   
 8011  10346   
[dependencies.aws-smithy-runtime-api]
 8012  10347   
path = "../aws-smithy-runtime-api"
 8013  10348   
features = ["client", "http-02x"]
 8014  10349   
version = "1.8.5"
 8015  10350   
 8016  10351   
[dependencies.aws-smithy-types]
 8017  10352   
path = "../aws-smithy-types"
 8018  10353   
version = "1.3.2"
 8019  10354   
 8020  10355   
[dependencies.aws-smithy-xml]
 8021  10356   
path = "../aws-smithy-xml"
 8022  10357   
version = "0.60.10"
 8023  10358   
 8024  10359   
[dependencies.aws-types]
 8025  10360   
path = "../aws-types"
 8026  10361   
version = "1.3.8"
 8027  10362   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8028  10363   
index 4474d17..095d40e 100644
 8029         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
       10364  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8030  10365   
@@ -1,61 +1,61 @@
 8031  10366   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8032  10367   
[package]
 8033  10368   
name = "aws-sdk-ecs"
 8034  10369   
version = "0.0.0-local"
 8035  10370   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8036  10371   
description = "AWS SDK for Amazon EC2 Container Service"
 8037  10372   
edition = "2021"
 8038  10373   
license = "Apache-2.0"
 8039  10374   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8040  10375   
rust-version = "1.86.0"
 8041  10376   
readme = "README.md"
 8042  10377   
[package.metadata.smithy]
 8043  10378   
codegen-version = "ci"
 8044  10379   
[package.metadata.docs.rs]
 8045  10380   
all-features = true
 8046  10381   
targets = ["x86_64-unknown-linux-gnu"]
 8047  10382   
[dependencies.aws-credential-types]
 8048  10383   
path = "../aws-credential-types"
 8049  10384   
version = "1.2.4"
 8050  10385   
 8051  10386   
[dependencies.aws-runtime]
 8052  10387   
path = "../aws-runtime"
 8053  10388   
version = "1.5.9"
 8054  10389   
 8055  10390   
[dependencies.aws-smithy-async]
 8056  10391   
path = "../aws-smithy-async"
 8057  10392   
version = "1.2.5"
 8058  10393   
 8059  10394   
[dependencies.aws-smithy-http]
 8060  10395   
path = "../aws-smithy-http"
 8061         -
version = "0.62.2"
       10396  +
version = "0.62.3"
 8062  10397   
 8063  10398   
[dependencies.aws-smithy-json]
 8064  10399   
path = "../aws-smithy-json"
 8065  10400   
version = "0.61.4"
 8066  10401   
 8067  10402   
[dependencies.aws-smithy-runtime]
 8068  10403   
path = "../aws-smithy-runtime"
 8069  10404   
features = ["client"]
 8070  10405   
version = "1.8.5"
 8071  10406   
 8072  10407   
[dependencies.aws-smithy-runtime-api]
 8073  10408   
path = "../aws-smithy-runtime-api"
 8074  10409   
features = ["client", "http-02x"]
 8075  10410   
version = "1.8.5"
 8076  10411   
 8077  10412   
[dependencies.aws-smithy-types]
 8078  10413   
path = "../aws-smithy-types"
 8079  10414   
version = "1.3.2"
 8080  10415   
 8081  10416   
[dependencies.aws-types]
 8082  10417   
path = "../aws-types"
 8083  10418   
version = "1.3.8"
 8084  10419   
 8085  10420   
[dependencies.bytes]
 8086  10421   
version = "1.4.0"
 8087  10422   
 8088  10423   
[dependencies.fastrand]
 8089  10424   
version = "2.0.0"
 8090  10425   
 8091  10426   
[dependencies.http]
 8092  10427   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8093  10428   
index 15b1d77..16d7d89 100644
 8094         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
       10429  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8095  10430   
@@ -1,65 +1,65 @@
 8096  10431   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8097  10432   
[package]
 8098  10433   
name = "aws-sdk-glacier"
 8099  10434   
version = "0.0.0-local"
 8100  10435   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8101  10436   
description = "AWS SDK for Amazon Glacier"
 8102  10437   
edition = "2021"
 8103  10438   
license = "Apache-2.0"
 8104  10439   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8105  10440   
rust-version = "1.86.0"
 8106  10441   
readme = "README.md"
 8107  10442   
[package.metadata.smithy]
 8108  10443   
codegen-version = "ci"
 8109  10444   
[package.metadata.docs.rs]
 8110  10445   
all-features = true
 8111  10446   
targets = ["x86_64-unknown-linux-gnu"]
 8112  10447   
[dependencies.aws-credential-types]
 8113  10448   
path = "../aws-credential-types"
 8114  10449   
version = "1.2.4"
 8115  10450   
 8116  10451   
[dependencies.aws-runtime]
 8117  10452   
path = "../aws-runtime"
 8118  10453   
version = "1.5.9"
 8119  10454   
 8120  10455   
[dependencies.aws-sigv4]
 8121  10456   
path = "../aws-sigv4"
 8122         -
version = "1.3.3"
       10457  +
version = "1.3.4"
 8123  10458   
 8124  10459   
[dependencies.aws-smithy-async]
 8125  10460   
path = "../aws-smithy-async"
 8126  10461   
version = "1.2.5"
 8127  10462   
 8128  10463   
[dependencies.aws-smithy-http]
 8129  10464   
path = "../aws-smithy-http"
 8130         -
version = "0.62.2"
       10465  +
version = "0.62.3"
 8131  10466   
 8132  10467   
[dependencies.aws-smithy-json]
 8133  10468   
path = "../aws-smithy-json"
 8134  10469   
version = "0.61.4"
 8135  10470   
 8136  10471   
[dependencies.aws-smithy-runtime]
 8137  10472   
path = "../aws-smithy-runtime"
 8138  10473   
features = ["client"]
 8139  10474   
version = "1.8.5"
 8140  10475   
 8141  10476   
[dependencies.aws-smithy-runtime-api]
 8142  10477   
path = "../aws-smithy-runtime-api"
 8143  10478   
features = ["client", "http-02x"]
 8144  10479   
version = "1.8.5"
 8145  10480   
 8146  10481   
[dependencies.aws-smithy-types]
 8147  10482   
path = "../aws-smithy-types"
 8148  10483   
version = "1.3.2"
 8149  10484   
 8150  10485   
[dependencies.aws-types]
 8151  10486   
path = "../aws-types"
 8152  10487   
version = "1.3.8"
 8153  10488   
 8154  10489   
[dependencies.bytes]
 8155  10490   
version = "1.4.0"
 8156  10491   
 8157  10492   
[dependencies.fastrand]
 8158  10493   
version = "2.0.0"
 8159  10494   
 8160  10495   
[dependencies.hex]
 8161  10496   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8162  10497   
index d718a3a..65e6f24 100644
 8163         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
       10498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8164  10499   
@@ -1,61 +1,61 @@
 8165  10500   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8166  10501   
[package]
 8167  10502   
name = "aws-sdk-iam"
 8168  10503   
version = "0.0.0-local"
 8169  10504   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8170  10505   
description = "AWS SDK for AWS Identity and Access Management"
 8171  10506   
edition = "2021"
 8172  10507   
license = "Apache-2.0"
 8173  10508   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8174  10509   
rust-version = "1.86.0"
 8175  10510   
readme = "README.md"
 8176  10511   
[package.metadata.smithy]
 8177  10512   
codegen-version = "ci"
 8178  10513   
[package.metadata.docs.rs]
 8179  10514   
all-features = true
 8180  10515   
targets = ["x86_64-unknown-linux-gnu"]
 8181  10516   
[dependencies.aws-credential-types]
 8182  10517   
path = "../aws-credential-types"
 8183  10518   
version = "1.2.4"
 8184  10519   
 8185  10520   
[dependencies.aws-runtime]
 8186  10521   
path = "../aws-runtime"
 8187  10522   
version = "1.5.9"
 8188  10523   
 8189  10524   
[dependencies.aws-smithy-async]
 8190  10525   
path = "../aws-smithy-async"
 8191  10526   
version = "1.2.5"
 8192  10527   
 8193  10528   
[dependencies.aws-smithy-http]
 8194  10529   
path = "../aws-smithy-http"
 8195         -
version = "0.62.2"
       10530  +
version = "0.62.3"
 8196  10531   
 8197  10532   
[dependencies.aws-smithy-json]
 8198  10533   
path = "../aws-smithy-json"
 8199  10534   
version = "0.61.4"
 8200  10535   
 8201  10536   
[dependencies.aws-smithy-query]
 8202  10537   
path = "../aws-smithy-query"
 8203  10538   
version = "0.60.7"
 8204  10539   
 8205  10540   
[dependencies.aws-smithy-runtime]
 8206  10541   
path = "../aws-smithy-runtime"
 8207  10542   
features = ["client"]
 8208  10543   
version = "1.8.5"
 8209  10544   
 8210  10545   
[dependencies.aws-smithy-runtime-api]
 8211  10546   
path = "../aws-smithy-runtime-api"
 8212  10547   
features = ["client", "http-02x"]
 8213  10548   
version = "1.8.5"
 8214  10549   
 8215  10550   
[dependencies.aws-smithy-types]
 8216  10551   
path = "../aws-smithy-types"
 8217  10552   
version = "1.3.2"
 8218  10553   
 8219  10554   
[dependencies.aws-smithy-xml]
 8220  10555   
path = "../aws-smithy-xml"
 8221  10556   
version = "0.60.10"
 8222  10557   
 8223  10558   
[dependencies.aws-types]
 8224  10559   
path = "../aws-types"
 8225  10560   
version = "1.3.8"
 8226  10561   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8227  10562   
index 0ed4302..3d828a5 100644
 8228         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
       10563  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8229  10564   
@@ -1,61 +1,61 @@
 8230  10565   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8231  10566   
[package]
 8232  10567   
name = "aws-sdk-kms"
 8233  10568   
version = "0.0.0-local"
 8234  10569   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8235  10570   
description = "AWS SDK for AWS Key Management Service"
 8236  10571   
edition = "2021"
 8237  10572   
license = "Apache-2.0"
 8238  10573   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8239  10574   
rust-version = "1.86.0"
 8240  10575   
readme = "README.md"
 8241  10576   
[package.metadata.smithy]
 8242  10577   
codegen-version = "ci"
 8243  10578   
[package.metadata.docs.rs]
 8244  10579   
all-features = true
 8245  10580   
targets = ["x86_64-unknown-linux-gnu"]
 8246  10581   
[dependencies.aws-credential-types]
 8247  10582   
path = "../aws-credential-types"
 8248  10583   
version = "1.2.4"
 8249  10584   
 8250  10585   
[dependencies.aws-runtime]
 8251  10586   
path = "../aws-runtime"
 8252  10587   
version = "1.5.9"
 8253  10588   
 8254  10589   
[dependencies.aws-smithy-async]
 8255  10590   
path = "../aws-smithy-async"
 8256  10591   
version = "1.2.5"
 8257  10592   
 8258  10593   
[dependencies.aws-smithy-http]
 8259  10594   
path = "../aws-smithy-http"
 8260         -
version = "0.62.2"
       10595  +
version = "0.62.3"
 8261  10596   
 8262  10597   
[dependencies.aws-smithy-json]
 8263  10598   
path = "../aws-smithy-json"
 8264  10599   
version = "0.61.4"
 8265  10600   
 8266  10601   
[dependencies.aws-smithy-runtime]
 8267  10602   
path = "../aws-smithy-runtime"
 8268  10603   
features = ["client"]
 8269  10604   
version = "1.8.5"
 8270  10605   
 8271  10606   
[dependencies.aws-smithy-runtime-api]
 8272  10607   
path = "../aws-smithy-runtime-api"
 8273  10608   
features = ["client", "http-02x"]
 8274  10609   
version = "1.8.5"
 8275  10610   
 8276  10611   
[dependencies.aws-smithy-types]
 8277  10612   
path = "../aws-smithy-types"
 8278  10613   
version = "1.3.2"
 8279  10614   
 8280  10615   
[dependencies.aws-types]
 8281  10616   
path = "../aws-types"
 8282  10617   
version = "1.3.8"
 8283  10618   
 8284  10619   
[dependencies.bytes]
 8285  10620   
version = "1.4.0"
 8286  10621   
 8287  10622   
[dependencies.fastrand]
 8288  10623   
version = "2.0.0"
 8289  10624   
 8290  10625   
[dependencies.http]
 8291  10626   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8292  10627   
index 6518dfc..6b94752 100644
 8293         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
       10628  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8294  10629   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 8295  10630   
edition = "2021"
 8296  10631   
license = "Apache-2.0"
 8297  10632   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8298  10633   
rust-version = "1.86.0"
 8299  10634   
readme = "README.md"
 8300  10635   
[package.metadata.smithy]
 8301  10636   
codegen-version = "ci"
 8302  10637   
[package.metadata.docs.rs]
 8303  10638   
all-features = true
 8304  10639   
targets = ["x86_64-unknown-linux-gnu"]
 8305  10640   
[dependencies.aws-credential-types]
 8306  10641   
path = "../aws-credential-types"
 8307  10642   
version = "1.2.4"
 8308  10643   
 8309  10644   
[dependencies.aws-runtime]
 8310  10645   
path = "../aws-runtime"
 8311  10646   
features = ["event-stream"]
 8312  10647   
version = "1.5.9"
 8313  10648   
 8314  10649   
[dependencies.aws-smithy-async]
 8315  10650   
path = "../aws-smithy-async"
 8316  10651   
version = "1.2.5"
 8317  10652   
 8318  10653   
[dependencies.aws-smithy-eventstream]
 8319  10654   
path = "../aws-smithy-eventstream"
 8320  10655   
version = "0.60.10"
 8321  10656   
 8322  10657   
[dependencies.aws-smithy-http]
 8323  10658   
path = "../aws-smithy-http"
 8324  10659   
features = ["event-stream"]
 8325         -
version = "0.62.2"
       10660  +
version = "0.62.3"
 8326  10661   
 8327  10662   
[dependencies.aws-smithy-json]
 8328  10663   
path = "../aws-smithy-json"
 8329  10664   
version = "0.61.4"
 8330  10665   
 8331  10666   
[dependencies.aws-smithy-runtime]
 8332  10667   
path = "../aws-smithy-runtime"
 8333  10668   
features = ["client"]
 8334  10669   
version = "1.8.5"
 8335  10670   
 8336  10671   
[dependencies.aws-smithy-runtime-api]
 8337  10672   
path = "../aws-smithy-runtime-api"
 8338  10673   
features = ["client", "http-02x"]
 8339  10674   
version = "1.8.5"
 8340  10675   
 8341  10676   
[dependencies.aws-smithy-types]
 8342  10677   
path = "../aws-smithy-types"
 8343  10678   
version = "1.3.2"
 8344  10679   
 8345  10680   
[dependencies.aws-types]
 8346  10681   
path = "../aws-types"
 8347  10682   
version = "1.3.8"
 8348  10683   
 8349  10684   
[dependencies.bytes]
 8350  10685   
version = "1.4.0"
 8351  10686   
 8352  10687   
[dependencies.fastrand]
 8353  10688   
version = "2.0.0"
 8354  10689   
 8355  10690   
[dependencies.http]
 8356  10691   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8357  10692   
index dabb0e0..34cbc15 100644
 8358         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
       10693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8359  10694   
@@ -1,65 +1,65 @@
 8360  10695   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8361  10696   
[package]
 8362  10697   
name = "aws-sdk-polly"
 8363  10698   
version = "0.0.0-local"
 8364  10699   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8365  10700   
description = "AWS SDK for Amazon Polly"
 8366  10701   
edition = "2021"
 8367  10702   
license = "Apache-2.0"
 8368  10703   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8369  10704   
rust-version = "1.86.0"
 8370  10705   
readme = "README.md"
 8371  10706   
[package.metadata.smithy]
 8372  10707   
codegen-version = "ci"
 8373  10708   
[package.metadata.docs.rs]
 8374  10709   
all-features = true
 8375  10710   
targets = ["x86_64-unknown-linux-gnu"]
 8376  10711   
[dependencies.aws-credential-types]
 8377  10712   
path = "../aws-credential-types"
 8378  10713   
version = "1.2.4"
 8379  10714   
 8380  10715   
[dependencies.aws-runtime]
 8381  10716   
path = "../aws-runtime"
 8382  10717   
version = "1.5.9"
 8383  10718   
 8384  10719   
[dependencies.aws-sigv4]
 8385  10720   
path = "../aws-sigv4"
 8386         -
version = "1.3.3"
       10721  +
version = "1.3.4"
 8387  10722   
 8388  10723   
[dependencies.aws-smithy-async]
 8389  10724   
path = "../aws-smithy-async"
 8390  10725   
version = "1.2.5"
 8391  10726   
 8392  10727   
[dependencies.aws-smithy-http]
 8393  10728   
path = "../aws-smithy-http"
 8394         -
version = "0.62.2"
       10729  +
version = "0.62.3"
 8395  10730   
 8396  10731   
[dependencies.aws-smithy-json]
 8397  10732   
path = "../aws-smithy-json"
 8398  10733   
version = "0.61.4"
 8399  10734   
 8400  10735   
[dependencies.aws-smithy-runtime]
 8401  10736   
path = "../aws-smithy-runtime"
 8402  10737   
features = ["client"]
 8403  10738   
version = "1.8.5"
 8404  10739   
 8405  10740   
[dependencies.aws-smithy-runtime-api]
 8406  10741   
path = "../aws-smithy-runtime-api"
 8407  10742   
features = ["client", "http-02x"]
 8408  10743   
version = "1.8.5"
 8409  10744   
 8410  10745   
[dependencies.aws-smithy-types]
 8411  10746   
path = "../aws-smithy-types"
 8412  10747   
version = "1.3.2"
 8413  10748   
 8414  10749   
[dependencies.aws-types]
 8415  10750   
path = "../aws-types"
 8416  10751   
version = "1.3.8"
 8417  10752   
 8418  10753   
[dependencies.bytes]
 8419  10754   
version = "1.4.0"
 8420  10755   
 8421  10756   
[dependencies.fastrand]
 8422  10757   
version = "2.0.0"
 8423  10758   
 8424  10759   
[dependencies.http]
 8425  10760   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8426  10761   
index a884716..f3d8713 100644
 8427         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
       10762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8428  10763   
@@ -1,61 +1,61 @@
 8429  10764   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8430  10765   
[package]
 8431  10766   
name = "aws-sdk-qldbsession"
 8432  10767   
version = "0.0.0-local"
 8433  10768   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8434  10769   
description = "AWS SDK for Amazon QLDB Session"
 8435  10770   
edition = "2021"
 8436  10771   
license = "Apache-2.0"
 8437  10772   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8438  10773   
rust-version = "1.86.0"
 8439  10774   
readme = "README.md"
 8440  10775   
[package.metadata.smithy]
 8441  10776   
codegen-version = "ci"
 8442  10777   
[package.metadata.docs.rs]
 8443  10778   
all-features = true
 8444  10779   
targets = ["x86_64-unknown-linux-gnu"]
 8445  10780   
[dependencies.aws-credential-types]
 8446  10781   
path = "../aws-credential-types"
 8447  10782   
version = "1.2.4"
 8448  10783   
 8449  10784   
[dependencies.aws-runtime]
 8450  10785   
path = "../aws-runtime"
 8451  10786   
version = "1.5.9"
 8452  10787   
 8453  10788   
[dependencies.aws-smithy-async]
 8454  10789   
path = "../aws-smithy-async"
 8455  10790   
version = "1.2.5"
 8456  10791   
 8457  10792   
[dependencies.aws-smithy-http]
 8458  10793   
path = "../aws-smithy-http"
 8459         -
version = "0.62.2"
       10794  +
version = "0.62.3"
 8460  10795   
 8461  10796   
[dependencies.aws-smithy-json]
 8462  10797   
path = "../aws-smithy-json"
 8463  10798   
version = "0.61.4"
 8464  10799   
 8465  10800   
[dependencies.aws-smithy-runtime]
 8466  10801   
path = "../aws-smithy-runtime"
 8467  10802   
features = ["client"]
 8468  10803   
version = "1.8.5"
 8469  10804   
 8470  10805   
[dependencies.aws-smithy-runtime-api]
 8471  10806   
path = "../aws-smithy-runtime-api"
 8472  10807   
features = ["client", "http-02x"]
 8473  10808   
version = "1.8.5"
 8474  10809   
 8475  10810   
[dependencies.aws-smithy-types]
 8476  10811   
path = "../aws-smithy-types"
 8477  10812   
version = "1.3.2"
 8478  10813   
 8479  10814   
[dependencies.aws-types]
 8480  10815   
path = "../aws-types"
 8481  10816   
version = "1.3.8"
 8482  10817   
 8483  10818   
[dependencies.bytes]
 8484  10819   
version = "1.4.0"
 8485  10820   
 8486  10821   
[dependencies.fastrand]
 8487  10822   
version = "2.0.0"
 8488  10823   
 8489  10824   
[dependencies.http]
 8490  10825   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8491  10826   
index 32a7dc9..a2c752d 100644
 8492         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
       10827  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8493  10828   
@@ -1,61 +1,61 @@
 8494  10829   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8495  10830   
[package]
 8496  10831   
name = "aws-sdk-route53"
 8497  10832   
version = "0.0.0-local"
 8498  10833   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8499  10834   
description = "AWS SDK for Amazon Route 53"
 8500  10835   
edition = "2021"
 8501  10836   
license = "Apache-2.0"
 8502  10837   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8503  10838   
rust-version = "1.86.0"
 8504  10839   
readme = "README.md"
 8505  10840   
[package.metadata.smithy]
 8506  10841   
codegen-version = "ci"
 8507  10842   
[package.metadata.docs.rs]
 8508  10843   
all-features = true
 8509  10844   
targets = ["x86_64-unknown-linux-gnu"]
 8510  10845   
[dependencies.aws-credential-types]
 8511  10846   
path = "../aws-credential-types"
 8512  10847   
version = "1.2.4"
 8513  10848   
 8514  10849   
[dependencies.aws-runtime]
 8515  10850   
path = "../aws-runtime"
 8516  10851   
version = "1.5.9"
 8517  10852   
 8518  10853   
[dependencies.aws-smithy-async]
 8519  10854   
path = "../aws-smithy-async"
 8520  10855   
version = "1.2.5"
 8521  10856   
 8522  10857   
[dependencies.aws-smithy-http]
 8523  10858   
path = "../aws-smithy-http"
 8524         -
version = "0.62.2"
       10859  +
version = "0.62.3"
 8525  10860   
 8526  10861   
[dependencies.aws-smithy-json]
 8527  10862   
path = "../aws-smithy-json"
 8528  10863   
version = "0.61.4"
 8529  10864   
 8530  10865   
[dependencies.aws-smithy-runtime]
 8531  10866   
path = "../aws-smithy-runtime"
 8532  10867   
features = ["client"]
 8533  10868   
version = "1.8.5"
 8534  10869   
 8535  10870   
[dependencies.aws-smithy-runtime-api]
 8536  10871   
path = "../aws-smithy-runtime-api"
 8537  10872   
features = ["client", "http-02x"]
 8538  10873   
version = "1.8.5"
 8539  10874   
 8540  10875   
[dependencies.aws-smithy-types]
 8541  10876   
path = "../aws-smithy-types"
 8542  10877   
version = "1.3.2"
 8543  10878   
 8544  10879   
[dependencies.aws-smithy-xml]
 8545  10880   
path = "../aws-smithy-xml"
 8546  10881   
version = "0.60.10"
 8547  10882   
 8548  10883   
[dependencies.aws-types]
 8549  10884   
path = "../aws-types"
 8550  10885   
version = "1.3.8"
 8551  10886   
 8552  10887   
[dependencies.fastrand]
 8553  10888   
version = "2.0.0"
 8554  10889   
 8555  10890   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8556  10891   
index f65e261..2f6bec0 100644
 8557         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       10892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8558  10893   
@@ -1,75 +1,75 @@
 8559  10894   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8560  10895   
[package]
 8561  10896   
name = "aws-sdk-s3"
 8562  10897   
version = "0.0.0-local"
 8563  10898   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8564  10899   
description = "AWS SDK for Amazon Simple Storage Service"
 8565  10900   
edition = "2021"
 8566  10901   
license = "Apache-2.0"
 8567  10902   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8568  10903   
rust-version = "1.86.0"
 8569  10904   
readme = "README.md"
 8570  10905   
[package.metadata.smithy]
 8571  10906   
codegen-version = "ci"
 8572  10907   
[package.metadata.docs.rs]
 8573  10908   
all-features = true
 8574  10909   
targets = ["x86_64-unknown-linux-gnu"]
 8575  10910   
[dependencies.aws-credential-types]
 8576  10911   
path = "../aws-credential-types"
 8577  10912   
version = "1.2.4"
 8578  10913   
 8579  10914   
[dependencies.aws-runtime]
 8580  10915   
path = "../aws-runtime"
 8581  10916   
features = ["event-stream", "http-02x"]
 8582  10917   
version = "1.5.9"
 8583  10918   
 8584  10919   
[dependencies.aws-sigv4]
 8585  10920   
path = "../aws-sigv4"
 8586         -
version = "1.3.3"
       10921  +
version = "1.3.4"
 8587  10922   
 8588  10923   
[dependencies.aws-smithy-async]
 8589  10924   
path = "../aws-smithy-async"
 8590  10925   
version = "1.2.5"
 8591  10926   
 8592  10927   
[dependencies.aws-smithy-checksums]
 8593  10928   
path = "../aws-smithy-checksums"
 8594  10929   
version = "0.63.5"
 8595  10930   
 8596  10931   
[dependencies.aws-smithy-eventstream]
 8597  10932   
path = "../aws-smithy-eventstream"
 8598  10933   
version = "0.60.10"
 8599  10934   
 8600  10935   
[dependencies.aws-smithy-http]
 8601  10936   
path = "../aws-smithy-http"
 8602  10937   
features = ["event-stream"]
 8603         -
version = "0.62.2"
       10938  +
version = "0.62.3"
 8604  10939   
 8605  10940   
[dependencies.aws-smithy-json]
 8606  10941   
path = "../aws-smithy-json"
 8607  10942   
version = "0.61.4"
 8608  10943   
 8609  10944   
[dependencies.aws-smithy-runtime]
 8610  10945   
path = "../aws-smithy-runtime"
 8611  10946   
features = ["client"]
 8612  10947   
version = "1.8.5"
 8613  10948   
 8614  10949   
[dependencies.aws-smithy-runtime-api]
 8615  10950   
path = "../aws-smithy-runtime-api"
 8616  10951   
features = ["client", "http-02x"]
 8617  10952   
version = "1.8.5"
 8618  10953   
 8619  10954   
[dependencies.aws-smithy-types]
 8620  10955   
path = "../aws-smithy-types"
 8621  10956   
version = "1.3.2"
 8622  10957   
 8623  10958   
[dependencies.aws-smithy-xml]
 8624  10959   
path = "../aws-smithy-xml"
 8625  10960   
version = "0.60.10"
 8626  10961   
 8627  10962   
[dependencies.aws-types]
 8628  10963   
path = "../aws-types"
 8629  10964   
version = "1.3.8"
 8630  10965   
 8631  10966   
[dependencies.bytes]
 8632  10967   
version = "1.4.0"
 8633  10968   
 8634  10969   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8635  10970   
index b4d1cdd..861c0cc 100644
 8636         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       10971  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8637  10972   
@@ -1,61 +1,61 @@
 8638  10973   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8639  10974   
[package]
 8640  10975   
name = "aws-sdk-s3control"
 8641  10976   
version = "0.0.0-local"
 8642  10977   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8643  10978   
description = "AWS SDK for AWS S3 Control"
 8644  10979   
edition = "2021"
 8645  10980   
license = "Apache-2.0"
 8646  10981   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8647  10982   
rust-version = "1.86.0"
 8648  10983   
readme = "README.md"
 8649  10984   
[package.metadata.smithy]
 8650  10985   
codegen-version = "ci"
 8651  10986   
[package.metadata.docs.rs]
 8652  10987   
all-features = true
 8653  10988   
targets = ["x86_64-unknown-linux-gnu"]
 8654  10989   
[dependencies.aws-credential-types]
 8655  10990   
path = "../aws-credential-types"
 8656  10991   
version = "1.2.4"
 8657  10992   
 8658  10993   
[dependencies.aws-runtime]
 8659  10994   
path = "../aws-runtime"
 8660  10995   
version = "1.5.9"
 8661  10996   
 8662  10997   
[dependencies.aws-smithy-async]
 8663  10998   
path = "../aws-smithy-async"
 8664  10999   
version = "1.2.5"
 8665  11000   
 8666  11001   
[dependencies.aws-smithy-http]
 8667  11002   
path = "../aws-smithy-http"
 8668         -
version = "0.62.2"
       11003  +
version = "0.62.3"
 8669  11004   
 8670  11005   
[dependencies.aws-smithy-json]
 8671  11006   
path = "../aws-smithy-json"
 8672  11007   
version = "0.61.4"
 8673  11008   
 8674  11009   
[dependencies.aws-smithy-runtime]
 8675  11010   
path = "../aws-smithy-runtime"
 8676  11011   
features = ["client"]
 8677  11012   
version = "1.8.5"
 8678  11013   
 8679  11014   
[dependencies.aws-smithy-runtime-api]
 8680  11015   
path = "../aws-smithy-runtime-api"
 8681  11016   
features = ["client", "http-02x"]
 8682  11017   
version = "1.8.5"
 8683  11018   
 8684  11019   
[dependencies.aws-smithy-types]
 8685  11020   
path = "../aws-smithy-types"
 8686  11021   
version = "1.3.2"
 8687  11022   
 8688  11023   
[dependencies.aws-smithy-xml]
 8689  11024   
path = "../aws-smithy-xml"
 8690  11025   
version = "0.60.10"
 8691  11026   
 8692  11027   
[dependencies.aws-types]
 8693  11028   
path = "../aws-types"
 8694  11029   
version = "1.3.8"
 8695  11030   
 8696  11031   
[dependencies.fastrand]
 8697  11032   
version = "2.0.0"
 8698  11033   
 8699  11034   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8700  11035   
index 2cde182..fc367f4 100644
 8701         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       11036  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8702  11037   
@@ -1,61 +1,61 @@
 8703  11038   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8704  11039   
[package]
 8705  11040   
name = "aws-sdk-sso"
 8706  11041   
version = "0.0.0-local"
 8707  11042   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8708  11043   
description = "AWS SDK for AWS Single Sign-On"
 8709  11044   
edition = "2021"
 8710  11045   
license = "Apache-2.0"
 8711  11046   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8712  11047   
rust-version = "1.86.0"
 8713  11048   
readme = "README.md"
 8714  11049   
[package.metadata.smithy]
 8715  11050   
codegen-version = "ci"
 8716  11051   
[package.metadata.docs.rs]
 8717  11052   
all-features = true
 8718  11053   
targets = ["x86_64-unknown-linux-gnu"]
 8719  11054   
[dependencies.aws-credential-types]
 8720  11055   
path = "../aws-credential-types"
 8721  11056   
version = "1.2.4"
 8722  11057   
 8723  11058   
[dependencies.aws-runtime]
 8724  11059   
path = "../aws-runtime"
 8725  11060   
version = "1.5.9"
 8726  11061   
 8727  11062   
[dependencies.aws-smithy-async]
 8728  11063   
path = "../aws-smithy-async"
 8729  11064   
version = "1.2.5"
 8730  11065   
 8731  11066   
[dependencies.aws-smithy-http]
 8732  11067   
path = "../aws-smithy-http"
 8733         -
version = "0.62.2"
       11068  +
version = "0.62.3"
 8734  11069   
 8735  11070   
[dependencies.aws-smithy-json]
 8736  11071   
path = "../aws-smithy-json"
 8737  11072   
version = "0.61.4"
 8738  11073   
 8739  11074   
[dependencies.aws-smithy-runtime]
 8740  11075   
path = "../aws-smithy-runtime"
 8741  11076   
features = ["client"]
 8742  11077   
version = "1.8.5"
 8743  11078   
 8744  11079   
[dependencies.aws-smithy-runtime-api]
 8745  11080   
path = "../aws-smithy-runtime-api"
 8746  11081   
features = ["client", "http-02x"]
 8747  11082   
version = "1.8.5"
 8748  11083   
 8749  11084   
[dependencies.aws-smithy-types]
 8750  11085   
path = "../aws-smithy-types"
 8751  11086   
version = "1.3.2"
 8752  11087   
 8753  11088   
[dependencies.aws-types]
 8754  11089   
path = "../aws-types"
 8755  11090   
version = "1.3.8"
 8756  11091   
 8757  11092   
[dependencies.bytes]
 8758  11093   
version = "1.4.0"
 8759  11094   
 8760  11095   
[dependencies.fastrand]
 8761  11096   
version = "2.0.0"
 8762  11097   
 8763  11098   
[dependencies.http]
 8764  11099   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8765  11100   
index 7a34c16..588d0bd 100644
 8766         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       11101  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8767  11102   
@@ -1,61 +1,61 @@
 8768  11103   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8769  11104   
[package]
 8770  11105   
name = "aws-sdk-ssooidc"
 8771  11106   
version = "0.0.0-local"
 8772  11107   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8773  11108   
description = "AWS SDK for AWS SSO OIDC"
 8774  11109   
edition = "2021"
 8775  11110   
license = "Apache-2.0"
 8776  11111   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8777  11112   
rust-version = "1.86.0"
 8778  11113   
readme = "README.md"
 8779  11114   
[package.metadata.smithy]
 8780  11115   
codegen-version = "ci"
 8781  11116   
[package.metadata.docs.rs]
 8782  11117   
all-features = true
 8783  11118   
targets = ["x86_64-unknown-linux-gnu"]
 8784  11119   
[dependencies.aws-credential-types]
 8785  11120   
path = "../aws-credential-types"
 8786  11121   
version = "1.2.4"
 8787  11122   
 8788  11123   
[dependencies.aws-runtime]
 8789  11124   
path = "../aws-runtime"
 8790  11125   
version = "1.5.9"
 8791  11126   
 8792  11127   
[dependencies.aws-smithy-async]
 8793  11128   
path = "../aws-smithy-async"
 8794  11129   
version = "1.2.5"
 8795  11130   
 8796  11131   
[dependencies.aws-smithy-http]
 8797  11132   
path = "../aws-smithy-http"
 8798         -
version = "0.62.2"
       11133  +
version = "0.62.3"
 8799  11134   
 8800  11135   
[dependencies.aws-smithy-json]
 8801  11136   
path = "../aws-smithy-json"
 8802  11137   
version = "0.61.4"
 8803  11138   
 8804  11139   
[dependencies.aws-smithy-runtime]
 8805  11140   
path = "../aws-smithy-runtime"
 8806  11141   
features = ["client"]
 8807  11142   
version = "1.8.5"
 8808  11143   
 8809  11144   
[dependencies.aws-smithy-runtime-api]
 8810  11145   
path = "../aws-smithy-runtime-api"
 8811  11146   
features = ["client", "http-02x"]
 8812  11147   
version = "1.8.5"
 8813  11148   
 8814  11149   
[dependencies.aws-smithy-types]
 8815  11150   
path = "../aws-smithy-types"
 8816  11151   
version = "1.3.2"
 8817  11152   
 8818  11153   
[dependencies.aws-types]
 8819  11154   
path = "../aws-types"
 8820  11155   
version = "1.3.8"
 8821  11156   
 8822  11157   
[dependencies.bytes]
 8823  11158   
version = "1.4.0"
 8824  11159   
 8825  11160   
[dependencies.fastrand]
 8826  11161   
version = "2.0.0"
 8827  11162   
 8828  11163   
[dependencies.http]
 8829  11164   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8830  11165   
index 895dfb3..f2ce34e 100644
 8831         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       11166  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8832  11167   
@@ -1,61 +1,61 @@
 8833  11168   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8834  11169   
[package]
 8835  11170   
name = "aws-sdk-sts"
 8836  11171   
version = "0.0.0-local"
 8837  11172   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8838  11173   
description = "AWS SDK for AWS Security Token Service"
 8839  11174   
edition = "2021"
 8840  11175   
license = "Apache-2.0"
 8841  11176   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8842  11177   
rust-version = "1.86.0"
 8843  11178   
readme = "README.md"
 8844  11179   
[package.metadata.smithy]
 8845  11180   
codegen-version = "ci"
 8846  11181   
[package.metadata.docs.rs]
 8847  11182   
all-features = true
 8848  11183   
targets = ["x86_64-unknown-linux-gnu"]
 8849  11184   
[dependencies.aws-credential-types]
 8850  11185   
path = "../aws-credential-types"
 8851  11186   
version = "1.2.4"
 8852  11187   
 8853  11188   
[dependencies.aws-runtime]
 8854  11189   
path = "../aws-runtime"
 8855  11190   
version = "1.5.9"
 8856  11191   
 8857  11192   
[dependencies.aws-smithy-async]
 8858  11193   
path = "../aws-smithy-async"
 8859  11194   
version = "1.2.5"
 8860  11195   
 8861  11196   
[dependencies.aws-smithy-http]
 8862  11197   
path = "../aws-smithy-http"
 8863         -
version = "0.62.2"
       11198  +
version = "0.62.3"
 8864  11199   
 8865  11200   
[dependencies.aws-smithy-json]
 8866  11201   
path = "../aws-smithy-json"
 8867  11202   
version = "0.61.4"
 8868  11203   
 8869  11204   
[dependencies.aws-smithy-query]
 8870  11205   
path = "../aws-smithy-query"
 8871  11206   
version = "0.60.7"
 8872  11207   
 8873  11208   
[dependencies.aws-smithy-runtime]
 8874  11209   
path = "../aws-smithy-runtime"
 8875  11210   
features = ["client"]
 8876  11211   
version = "1.8.5"
 8877  11212   
 8878  11213   
[dependencies.aws-smithy-runtime-api]
 8879  11214   
path = "../aws-smithy-runtime-api"
 8880  11215   
features = ["client", "http-02x"]
 8881  11216   
version = "1.8.5"
 8882  11217   
 8883  11218   
[dependencies.aws-smithy-types]
 8884  11219   
path = "../aws-smithy-types"
 8885  11220   
version = "1.3.2"
 8886  11221   
 8887  11222   
[dependencies.aws-smithy-xml]
 8888  11223   
path = "../aws-smithy-xml"
 8889  11224   
version = "0.60.10"
 8890  11225   
 8891  11226   
[dependencies.aws-types]
 8892  11227   
path = "../aws-types"
 8893  11228   
version = "1.3.8"
 8894  11229   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8895  11230   
index d556561..91178b6 100644
 8896         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       11231  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8897  11232   
@@ -1,61 +1,61 @@
 8898  11233   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8899  11234   
[package]
 8900  11235   
name = "aws-sdk-timestreamquery"
 8901  11236   
version = "0.0.0-local"
 8902  11237   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8903  11238   
description = "AWS SDK for Amazon Timestream Query"
 8904  11239   
edition = "2021"
 8905  11240   
license = "Apache-2.0"
 8906  11241   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8907  11242   
rust-version = "1.86.0"
 8908  11243   
readme = "README.md"
 8909  11244   
[package.metadata.smithy]
 8910  11245   
codegen-version = "ci"
 8911  11246   
[package.metadata.docs.rs]
 8912  11247   
all-features = true
 8913  11248   
targets = ["x86_64-unknown-linux-gnu"]
 8914  11249   
[dependencies.aws-credential-types]
 8915  11250   
path = "../aws-credential-types"
 8916  11251   
version = "1.2.4"
 8917  11252   
 8918  11253   
[dependencies.aws-runtime]
 8919  11254   
path = "../aws-runtime"
 8920  11255   
version = "1.5.9"
 8921  11256   
 8922  11257   
[dependencies.aws-smithy-async]
 8923  11258   
path = "../aws-smithy-async"
 8924  11259   
version = "1.2.5"
 8925  11260   
 8926  11261   
[dependencies.aws-smithy-http]
 8927  11262   
path = "../aws-smithy-http"
 8928         -
version = "0.62.2"
       11263  +
version = "0.62.3"
 8929  11264   
 8930  11265   
[dependencies.aws-smithy-json]
 8931  11266   
path = "../aws-smithy-json"
 8932  11267   
version = "0.61.4"
 8933  11268   
 8934  11269   
[dependencies.aws-smithy-runtime]
 8935  11270   
path = "../aws-smithy-runtime"
 8936  11271   
features = ["client"]
 8937  11272   
version = "1.8.5"
 8938  11273   
 8939  11274   
[dependencies.aws-smithy-runtime-api]
 8940  11275   
path = "../aws-smithy-runtime-api"
 8941  11276   
features = ["client", "http-02x"]
 8942  11277   
version = "1.8.5"
 8943  11278   
 8944  11279   
[dependencies.aws-smithy-types]
 8945  11280   
path = "../aws-smithy-types"
 8946  11281   
version = "1.3.2"
 8947  11282   
 8948  11283   
[dependencies.aws-types]
 8949  11284   
path = "../aws-types"
 8950  11285   
version = "1.3.8"
 8951  11286   
 8952  11287   
[dependencies.bytes]
 8953  11288   
version = "1.4.0"
 8954  11289   
 8955  11290   
[dependencies.fastrand]
 8956  11291   
version = "2.0.0"
 8957  11292   
 8958  11293   
[dependencies.http]
 8959  11294   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8960  11295   
index 0c56e4c..95731e3 100644
 8961         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       11296  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8962  11297   
@@ -1,61 +1,61 @@
 8963  11298   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8964  11299   
[package]
 8965  11300   
name = "aws-sdk-timestreamwrite"
 8966  11301   
version = "0.0.0-local"
 8967  11302   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8968  11303   
description = "AWS SDK for Amazon Timestream Write"
 8969  11304   
edition = "2021"
 8970  11305   
license = "Apache-2.0"
 8971  11306   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8972  11307   
rust-version = "1.86.0"
 8973  11308   
readme = "README.md"
 8974  11309   
[package.metadata.smithy]
 8975  11310   
codegen-version = "ci"
 8976  11311   
[package.metadata.docs.rs]
 8977  11312   
all-features = true
 8978  11313   
targets = ["x86_64-unknown-linux-gnu"]
 8979  11314   
[dependencies.aws-credential-types]
 8980  11315   
path = "../aws-credential-types"
 8981  11316   
version = "1.2.4"
 8982  11317   
 8983  11318   
[dependencies.aws-runtime]
 8984  11319   
path = "../aws-runtime"
 8985  11320   
version = "1.5.9"
 8986  11321   
 8987  11322   
[dependencies.aws-smithy-async]
 8988  11323   
path = "../aws-smithy-async"
 8989  11324   
version = "1.2.5"
 8990  11325   
 8991  11326   
[dependencies.aws-smithy-http]
 8992  11327   
path = "../aws-smithy-http"
 8993         -
version = "0.62.2"
       11328  +
version = "0.62.3"
 8994  11329   
 8995  11330   
[dependencies.aws-smithy-json]
 8996  11331   
path = "../aws-smithy-json"
 8997  11332   
version = "0.61.4"
 8998  11333   
 8999  11334   
[dependencies.aws-smithy-runtime]
 9000  11335   
path = "../aws-smithy-runtime"
 9001  11336   
features = ["client"]
 9002  11337   
version = "1.8.5"
 9003  11338   
 9004  11339   
[dependencies.aws-smithy-runtime-api]
 9005  11340   
path = "../aws-smithy-runtime-api"
 9006  11341   
features = ["client", "http-02x"]
 9007  11342   
version = "1.8.5"
 9008  11343   
 9009  11344   
[dependencies.aws-smithy-types]
 9010  11345   
path = "../aws-smithy-types"
 9011  11346   
version = "1.3.2"
 9012  11347   
 9013  11348   
[dependencies.aws-types]
 9014  11349   
path = "../aws-types"
 9015  11350   
version = "1.3.8"
 9016  11351   
 9017  11352   
[dependencies.bytes]
 9018  11353   
version = "1.4.0"
 9019  11354   
 9020  11355   
[dependencies.fastrand]
 9021  11356   
version = "2.0.0"
 9022  11357   
 9023  11358   
[dependencies.http]
 9024  11359   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9025  11360   
index 5b35037..9fb220a 100644
 9026         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       11361  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9027  11362   
@@ -1,71 +1,71 @@
 9028  11363   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9029  11364   
[package]
 9030  11365   
name = "aws-sdk-transcribestreaming"
 9031  11366   
version = "0.0.0-local"
 9032  11367   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9033  11368   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 9034  11369   
edition = "2021"
 9035  11370   
license = "Apache-2.0"
 9036  11371   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9037  11372   
rust-version = "1.86.0"
 9038  11373   
readme = "README.md"
 9039  11374   
[package.metadata.smithy]
 9040  11375   
codegen-version = "ci"
 9041  11376   
[package.metadata.docs.rs]
 9042  11377   
all-features = true
 9043  11378   
targets = ["x86_64-unknown-linux-gnu"]
 9044  11379   
[dependencies.aws-credential-types]
 9045  11380   
path = "../aws-credential-types"
 9046  11381   
version = "1.2.4"
 9047  11382   
 9048  11383   
[dependencies.aws-runtime]
 9049  11384   
path = "../aws-runtime"
 9050  11385   
features = ["event-stream"]
 9051  11386   
version = "1.5.9"
 9052  11387   
 9053  11388   
[dependencies.aws-sigv4]
 9054  11389   
path = "../aws-sigv4"
 9055         -
version = "1.3.3"
       11390  +
version = "1.3.4"
 9056  11391   
 9057  11392   
[dependencies.aws-smithy-async]
 9058  11393   
path = "../aws-smithy-async"
 9059  11394   
version = "1.2.5"
 9060  11395   
 9061  11396   
[dependencies.aws-smithy-eventstream]
 9062  11397   
path = "../aws-smithy-eventstream"
 9063  11398   
version = "0.60.10"
 9064  11399   
 9065  11400   
[dependencies.aws-smithy-http]
 9066  11401   
path = "../aws-smithy-http"
 9067  11402   
features = ["event-stream"]
 9068         -
version = "0.62.2"
       11403  +
version = "0.62.3"
 9069  11404   
 9070  11405   
[dependencies.aws-smithy-json]
 9071  11406   
path = "../aws-smithy-json"
 9072  11407   
version = "0.61.4"
 9073  11408   
 9074  11409   
[dependencies.aws-smithy-runtime]
 9075  11410   
path = "../aws-smithy-runtime"
 9076  11411   
features = ["client"]
 9077  11412   
version = "1.8.5"
 9078  11413