AWS SDK

AWS SDK

rev. 3964b40d6806bc3f52bd311e2c791030c3325f2c (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq

@@ -1,0 +5,0 @@
    1         -
POST / HTTP/1.1
    2         -
Host:example.amazonaws.com
    3         -
My-Header1:value1
    4         -
X-Amz-Date:20150830T123600Z
    5         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz

@@ -1,0 +8049,10361 @@
    1         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
    2      0   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
    3      1   
deleted file mode 100644
    4      2   
index 99c3210..0000000
    5         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
           3  +
++ /dev/null
    6      4   
@@ -1,5 +0,0 @@
    7         -
POST / HTTP/1.1
    8         -
Host:example.amazonaws.com
    9         -
My-Header1:VALUE1
   10         -
X-Amz-Date:20150830T123600Z
   11         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
   12      5   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.authz
   13      6   
deleted file mode 100644
   14      7   
index 89e572e..0000000
   15         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.authz
           8  +
++ /dev/null
   16      9   
@@ -1 +0,0 @@
   17         -
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
   18     10   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.authz
   19     11   
deleted file mode 100644
   20     12   
index 64aa046..0000000
   21         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.authz
          13  +
++ /dev/null
   22     14   
@@ -1 +0,0 @@
   23         -
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
   24     15   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
   25     16   
deleted file mode 100644
   26     17   
index cc34282..0000000
   27         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
          18  +
++ /dev/null
   28     19   
@@ -1,15 +0,0 @@
   29         -
A note about using temporary security credentials:
   30         -

   31         -
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).
   32         -

   33         -
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.
   34         -

   35         -
The test suite has 2 examples:
   36         -

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

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

   41         -
The test suite uses this example value for X-Amz-Security-Token:
   42         -

   43         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
   44     20   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.authz
   45     21   
deleted file mode 100644
   46     22   
index 44280cd..0000000
   47         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.authz
          23  +
++ /dev/null
   48     24   
@@ -1 +0,0 @@
   49         -
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
   50     25   
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
   51     26   
deleted file mode 100644
   52     27   
index 82af150..0000000
   53         -
-- 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
          28  +
++ /dev/null
   54     29   
@@ -1,4 +0,0 @@
   55         -
POST /?Param1=value1 HTTP/1.1
   56         -
Host:example.amazonaws.com
   57         -
X-Amz-Date:20150830T123600Z
   58         -
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
   59     30   
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
   60     31   
deleted file mode 100644
   61     32   
index 44280cd..0000000
   62         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
          33  +
++ /dev/null
   63     34   
@@ -1 +0,0 @@
   64         -
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
   65     35   
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
   66     36   
deleted file mode 100644
   67     37   
index 82af150..0000000
   68         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
          38  +
++ /dev/null
   69     39   
@@ -1,4 +0,0 @@
   70         -
POST /?Param1=value1 HTTP/1.1
   71         -
Host:example.amazonaws.com
   72         -
X-Amz-Date:20150830T123600Z
   73         -
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
   74     40   
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
   75     41   
deleted file mode 100644
   76     42   
index 89e572e..0000000
   77         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
          43  +
++ /dev/null
   78     44   
@@ -1 +0,0 @@
   79         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
   80     45   
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
   81     46   
deleted file mode 100644
   82     47   
index a5ada0d..0000000
   83         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
          48  +
++ /dev/null
   84     49   
@@ -1,4 +0,0 @@
   85         -
POST / HTTP/1.1
   86         -
Host:example.amazonaws.com
   87         -
X-Amz-Date:20150830T123600Z
   88         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
   89     50   
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
   90     51   
deleted file mode 100644
   91     52   
index df90ca3..0000000
   92         -
-- 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
          53  +
++ /dev/null
   93     54   
@@ -1 +0,0 @@
   94         -
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
   95     55   
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
   96     56   
deleted file mode 100644
   97     57   
index 457b0d5..0000000
   98         -
-- 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
          58  +
++ /dev/null
   99     59   
@@ -1,9 +0,0 @@
  100         -
POST
  101         -
/
  102         -
Param1=value1
  103         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  104         -
host:example.amazonaws.com
  105         -
x-amz-date:20150830T123600Z
  106         -
  107         -
content-type;host;x-amz-date
  108         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  109     60   
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
  110     61   
deleted file mode 100644
  111     62   
index b8ecb89..0000000
  112         -
-- 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
          63  +
++ /dev/null
  113     64   
@@ -1,7 +0,0 @@
  114         -
POST / HTTP/1.1
  115         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  116         -
Host:example.amazonaws.com
  117         -
X-Amz-Date:20150830T123600Z
  118         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  119         -
  120         -
Param1=value1
              \
 No newline at end of file
  121     65   
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
  122     66   
deleted file mode 100644
  123     67   
index 79077d2..0000000
  124         -
-- 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
          68  +
++ /dev/null
  125     69   
@@ -1 +0,0 @@
  126         -
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
  127     70   
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
  128     71   
deleted file mode 100644
  129     72   
index 7852617..0000000
  130         -
-- 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
          73  +
++ /dev/null
  131     74   
@@ -1,4 +0,0 @@
  132         -
POST / HTTP/1.1
  133         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  134         -
Host:example.amazonaws.com
  135         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  136     75   
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
  137     76   
deleted file mode 100644
  138     77   
index 3e2e571..0000000
  139         -
-- 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
          78  +
++ /dev/null
  140     79   
@@ -1,4 +0,0 @@
  141         -
POST / HTTP/1.1
  142         -
Host:example.amazonaws.com
  143         -
X-Amz-Date:20150830T123600Z
  144         -
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
  145     80   
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
  146     81   
deleted file mode 100644
  147     82   
index 89ceae8..0000000
  148         -
-- 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
          83  +
++ /dev/null
  149     84   
@@ -1,4 +0,0 @@
  150         -
AWS4-HMAC-SHA256
  151         -
20150830T123600Z
  152         -
20150830/us-east-1/service/aws4_request
  153         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  154     85   
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
  155     86   
deleted file mode 100755
  156     87   
index d645695..0000000
  157         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
          88  +
++ /dev/null
  158     89   
@@ -1,202 +0,0 @@
  159         -
  160         -
                                 Apache License
  161         -
                           Version 2.0, January 2004
  162         -
                        http://www.apache.org/licenses/
  163         -
  164         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  165         -
  166         -
   1. Definitions.
  167         -
  168         -
      "License" shall mean the terms and conditions for use, reproduction,
  169         -
      and distribution as defined by Sections 1 through 9 of this document.
  170         -
  171         -
      "Licensor" shall mean the copyright owner or entity authorized by
  172         -
      the copyright owner that is granting the License.
  173         -
  174         -
      "Legal Entity" shall mean the union of the acting entity and all
  175         -
      other entities that control, are controlled by, or are under common
  176         -
      control with that entity. For the purposes of this definition,
  177         -
      "control" means (i) the power, direct or indirect, to cause the
  178         -
      direction or management of such entity, whether by contract or
  179         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  180         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  181         -
  182         -
      "You" (or "Your") shall mean an individual or Legal Entity
  183         -
      exercising permissions granted by this License.
  184         -
  185         -
      "Source" form shall mean the preferred form for making modifications,
  186         -
      including but not limited to software source code, documentation
  187         -
      source, and configuration files.
  188         -
  189         -
      "Object" form shall mean any form resulting from mechanical
  190         -
      transformation or translation of a Source form, including but
  191         -
      not limited to compiled object code, generated documentation,
  192         -
      and conversions to other media types.
  193         -
  194         -
      "Work" shall mean the work of authorship, whether in Source or
  195         -
      Object form, made available under the License, as indicated by a
  196         -
      copyright notice that is included in or attached to the work
  197         -
      (an example is provided in the Appendix below).
  198         -
  199         -
      "Derivative Works" shall mean any work, whether in Source or Object
  200         -
      form, that is based on (or derived from) the Work and for which the
  201         -
      editorial revisions, annotations, elaborations, or other modifications
  202         -
      represent, as a whole, an original work of authorship. For the purposes
  203         -
      of this License, Derivative Works shall not include works that remain
  204         -
      separable from, or merely link (or bind by name) to the interfaces of,
  205         -
      the Work and Derivative Works thereof.
  206         -
  207         -
      "Contribution" shall mean any work of authorship, including
  208         -
      the original version of the Work and any modifications or additions
  209         -
      to that Work or Derivative Works thereof, that is intentionally
  210         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  211         -
      or by an individual or Legal Entity authorized to submit on behalf of
  212         -
      the copyright owner. For the purposes of this definition, "submitted"
  213         -
      means any form of electronic, verbal, or written communication sent
  214         -
      to the Licensor or its representatives, including but not limited to
  215         -
      communication on electronic mailing lists, source code control systems,
  216         -
      and issue tracking systems that are managed by, or on behalf of, the
  217         -
      Licensor for the purpose of discussing and improving the Work, but
  218         -
      excluding communication that is conspicuously marked or otherwise
  219         -
      designated in writing by the copyright owner as "Not a Contribution."
  220         -
  221         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  222         -
      on behalf of whom a Contribution has been received by Licensor and
  223         -
      subsequently incorporated within the Work.
  224         -
  225         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  226         -
      this License, each Contributor hereby grants to You a perpetual,
  227         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  228         -
      copyright license to reproduce, prepare Derivative Works of,
  229         -
      publicly display, publicly perform, sublicense, and distribute the
  230         -
      Work and such Derivative Works in Source or Object form.
  231         -
  232         -
   3. Grant of Patent License. Subject to the terms and conditions of
  233         -
      this License, each Contributor hereby grants to You a perpetual,
  234         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  235         -
      (except as stated in this section) patent license to make, have made,
  236         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  237         -
      where such license applies only to those patent claims licensable
  238         -
      by such Contributor that are necessarily infringed by their
  239         -
      Contribution(s) alone or by combination of their Contribution(s)
  240         -
      with the Work to which such Contribution(s) was submitted. If You
  241         -
      institute patent litigation against any entity (including a
  242         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  243         -
      or a Contribution incorporated within the Work constitutes direct
  244         -
      or contributory patent infringement, then any patent licenses
  245         -
      granted to You under this License for that Work shall terminate
  246         -
      as of the date such litigation is filed.
  247         -
  248         -
   4. Redistribution. You may reproduce and distribute copies of the
  249         -
      Work or Derivative Works thereof in any medium, with or without
  250         -
      modifications, and in Source or Object form, provided that You
  251         -
      meet the following conditions:
  252         -
  253         -
      (a) You must give any other recipients of the Work or
  254         -
          Derivative Works a copy of this License; and
  255         -
  256         -
      (b) You must cause any modified files to carry prominent notices
  257         -
          stating that You changed the files; and
  258         -
  259         -
      (c) You must retain, in the Source form of any Derivative Works
  260         -
          that You distribute, all copyright, patent, trademark, and
  261         -
          attribution notices from the Source form of the Work,
  262         -
          excluding those notices that do not pertain to any part of
  263         -
          the Derivative Works; and
  264         -
  265         -
      (d) If the Work includes a "NOTICE" text file as part of its
  266         -
          distribution, then any Derivative Works that You distribute must
  267         -
          include a readable copy of the attribution notices contained
  268         -
          within such NOTICE file, excluding those notices that do not
  269         -
          pertain to any part of the Derivative Works, in at least one
  270         -
          of the following places: within a NOTICE text file distributed
  271         -
          as part of the Derivative Works; within the Source form or
  272         -
          documentation, if provided along with the Derivative Works; or,
  273         -
          within a display generated by the Derivative Works, if and
  274         -
          wherever such third-party notices normally appear. The contents
  275         -
          of the NOTICE file are for informational purposes only and
  276         -
          do not modify the License. You may add Your own attribution
  277         -
          notices within Derivative Works that You distribute, alongside
  278         -
          or as an addendum to the NOTICE text from the Work, provided
  279         -
          that such additional attribution notices cannot be construed
  280         -
          as modifying the License.
  281         -
  282         -
      You may add Your own copyright statement to Your modifications and
  283         -
      may provide additional or different license terms and conditions
  284         -
      for use, reproduction, or distribution of Your modifications, or
  285         -
      for any such Derivative Works as a whole, provided Your use,
  286         -
      reproduction, and distribution of the Work otherwise complies with
  287         -
      the conditions stated in this License.
  288         -
  289         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  290         -
      any Contribution intentionally submitted for inclusion in the Work
  291         -
      by You to the Licensor shall be under the terms and conditions of
  292         -
      this License, without any additional terms or conditions.
  293         -
      Notwithstanding the above, nothing herein shall supersede or modify
  294         -
      the terms of any separate license agreement you may have executed
  295         -
      with Licensor regarding such Contributions.
  296         -
  297         -
   6. Trademarks. This License does not grant permission to use the trade
  298         -
      names, trademarks, service marks, or product names of the Licensor,
  299         -
      except as required for reasonable and customary use in describing the
  300         -
      origin of the Work and reproducing the content of the NOTICE file.
  301         -
  302         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  303         -
      agreed to in writing, Licensor provides the Work (and each
  304         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  305         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  306         -
      implied, including, without limitation, any warranties or conditions
  307         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  308         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  309         -
      appropriateness of using or redistributing the Work and assume any
  310         -
      risks associated with Your exercise of permissions under this License.
  311         -
  312         -
   8. Limitation of Liability. In no event and under no legal theory,
  313         -
      whether in tort (including negligence), contract, or otherwise,
  314         -
      unless required by applicable law (such as deliberate and grossly
  315         -
      negligent acts) or agreed to in writing, shall any Contributor be
  316         -
      liable to You for damages, including any direct, indirect, special,
  317         -
      incidental, or consequential damages of any character arising as a
  318         -
      result of this License or out of the use or inability to use the
  319         -
      Work (including but not limited to damages for loss of goodwill,
  320         -
      work stoppage, computer failure or malfunction, or any and all
  321         -
      other commercial damages or losses), even if such Contributor
  322         -
      has been advised of the possibility of such damages.
  323         -
  324         -
   9. Accepting Warranty or Additional Liability. While redistributing
  325         -
      the Work or Derivative Works thereof, You may choose to offer,
  326         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  327         -
      or other liability obligations and/or rights consistent with this
  328         -
      License. However, in accepting such obligations, You may act only
  329         -
      on Your own behalf and on Your sole responsibility, not on behalf
  330         -
      of any other Contributor, and only if You agree to indemnify,
  331         -
      defend, and hold each Contributor harmless for any liability
  332         -
      incurred by, or claims asserted against, such Contributor by reason
  333         -
      of your accepting any such warranty or additional liability.
  334         -
  335         -
   END OF TERMS AND CONDITIONS
  336         -
  337         -
   APPENDIX: How to apply the Apache License to your work.
  338         -
  339         -
      To apply the Apache License to your work, attach the following
  340         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  341         -
      replaced with your own identifying information. (Don't include
  342         -
      the brackets!)  The text should be enclosed in the appropriate
  343         -
      comment syntax for the file format. We also recommend that a
  344         -
      file or class name and description of purpose be included on the
  345         -
      same "printed page" as the copyright notice for easier
  346         -
      identification within third-party archives.
  347         -
  348         -
   Copyright [yyyy] [name of copyright owner]
  349         -
  350         -
   Licensed under the Apache License, Version 2.0 (the "License");
  351         -
   you may not use this file except in compliance with the License.
  352         -
   You may obtain a copy of the License at
  353         -
  354         -
       http://www.apache.org/licenses/LICENSE-2.0
  355         -
  356         -
   Unless required by applicable law or agreed to in writing, software
  357         -
   distributed under the License is distributed on an "AS IS" BASIS,
  358         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  359         -
   See the License for the specific language governing permissions and
  360         -
   limitations under the License.
  361     90   
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
  362     91   
deleted file mode 100755
  363     92   
index d85f69e..0000000
  364         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
          93  +
++ /dev/null
  365     94   
@@ -1,2 +0,0 @@
  366         -
AWS Signature Version 4a Test Suite
  367         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  368     95   
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
  369     96   
deleted file mode 100644
  370     97   
index c716622..0000000
  371         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
          98  +
++ /dev/null
  372     99   
@@ -1,24 +0,0 @@
  373         -
Where did the files in this directory come from?
  374         -
================================================
  375         -
  376         -
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.
  377         -
  378         -
Signature Version 4A Test Suite
  379         -
------------------------------
  380         -
  381         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  382         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  383         -
  384         -
Each test group contains several files that you can use to validate most of the tasks described in
  385         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  386         -
  387         -
- context.json - Credentials and signer options to use when signing test requests
  388         -
- request.txt - The web request to be signed.
  389         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  390         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  391         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  392         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  393         -
  394         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  395         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  396         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  397    100   
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
  398    101   
deleted file mode 100644
  399    102   
index 45771c7..0000000
  400         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         103  +
++ /dev/null
  401    104   
@@ -1,12 +0,0 @@
  402         -
{
  403         -
    "credentials": {
  404         -
        "access_key_id": "AKIDEXAMPLE",
  405         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  406         -
    },
  407         -
    "expiration_in_seconds": 3600,
  408         -
    "normalize": true,
  409         -
    "region": "us-east-1",
  410         -
    "service": "service",
  411         -
    "sign_body": false,
  412         -
    "timestamp": "2015-08-30T12:36:00Z"
  413         -
}
  414    105   
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
  415    106   
deleted file mode 100644
  416    107   
index 45771c7..0000000
  417         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         108  +
++ /dev/null
  418    109   
@@ -1,12 +0,0 @@
  419         -
{
  420         -
    "credentials": {
  421         -
        "access_key_id": "AKIDEXAMPLE",
  422         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  423         -
    },
  424         -
    "expiration_in_seconds": 3600,
  425         -
    "normalize": true,
  426         -
    "region": "us-east-1",
  427         -
    "service": "service",
  428         -
    "sign_body": false,
  429         -
    "timestamp": "2015-08-30T12:36:00Z"
  430         -
}
  431    110   
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
  432    111   
deleted file mode 100644
  433    112   
index 45771c7..0000000
  434         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         113  +
++ /dev/null
  435    114   
@@ -1,12 +0,0 @@
  436         -
{
  437         -
    "credentials": {
  438         -
        "access_key_id": "AKIDEXAMPLE",
  439         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  440         -
    },
  441         -
    "expiration_in_seconds": 3600,
  442         -
    "normalize": true,
  443         -
    "region": "us-east-1",
  444         -
    "service": "service",
  445         -
    "sign_body": false,
  446         -
    "timestamp": "2015-08-30T12:36:00Z"
  447         -
}
  448    115   
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
  449    116   
deleted file mode 100644
  450    117   
index 45771c7..0000000
  451         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         118  +
++ /dev/null
  452    119   
@@ -1,12 +0,0 @@
  453         -
{
  454         -
    "credentials": {
  455         -
        "access_key_id": "AKIDEXAMPLE",
  456         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  457         -
    },
  458         -
    "expiration_in_seconds": 3600,
  459         -
    "normalize": true,
  460         -
    "region": "us-east-1",
  461         -
    "service": "service",
  462         -
    "sign_body": false,
  463         -
    "timestamp": "2015-08-30T12:36:00Z"
  464         -
}
  465    120   
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
  466    121   
deleted file mode 100644
  467    122   
index afe367b..0000000
  468         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         123  +
++ /dev/null
  469    124   
@@ -1,12 +0,0 @@
  470         -
{
  471         -
    "credentials": {
  472         -
        "access_key_id": "AKIDEXAMPLE",
  473         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  474         -
    },
  475         -
    "expiration_in_seconds": 3600,
  476         -
    "normalize": false,
  477         -
    "region": "us-east-1",
  478         -
    "service": "service",
  479         -
    "sign_body": false,
  480         -
    "timestamp": "2015-08-30T12:36:00Z"
  481         -
}
  482    125   
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
  483    126   
deleted file mode 100644
  484    127   
index 45771c7..0000000
  485         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         128  +
++ /dev/null
  486    129   
@@ -1,12 +0,0 @@
  487         -
{
  488         -
    "credentials": {
  489         -
        "access_key_id": "AKIDEXAMPLE",
  490         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  491         -
    },
  492         -
    "expiration_in_seconds": 3600,
  493         -
    "normalize": true,
  494         -
    "region": "us-east-1",
  495         -
    "service": "service",
  496         -
    "sign_body": false,
  497         -
    "timestamp": "2015-08-30T12:36:00Z"
  498         -
}
  499    130   
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
  500    131   
deleted file mode 100644
  501    132   
index afe367b..0000000
  502         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         133  +
++ /dev/null
  503    134   
@@ -1,12 +0,0 @@
  504         -
{
  505         -
    "credentials": {
  506         -
        "access_key_id": "AKIDEXAMPLE",
  507         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  508         -
    },
  509         -
    "expiration_in_seconds": 3600,
  510         -
    "normalize": false,
  511         -
    "region": "us-east-1",
  512         -
    "service": "service",
  513         -
    "sign_body": false,
  514         -
    "timestamp": "2015-08-30T12:36:00Z"
  515         -
}
  516    135   
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
  517    136   
deleted file mode 100644
  518    137   
index 45771c7..0000000
  519         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         138  +
++ /dev/null
  520    139   
@@ -1,12 +0,0 @@
  521         -
{
  522         -
    "credentials": {
  523         -
        "access_key_id": "AKIDEXAMPLE",
  524         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  525         -
    },
  526         -
    "expiration_in_seconds": 3600,
  527         -
    "normalize": true,
  528         -
    "region": "us-east-1",
  529         -
    "service": "service",
  530         -
    "sign_body": false,
  531         -
    "timestamp": "2015-08-30T12:36:00Z"
  532         -
}
  533    140   
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
  534    141   
deleted file mode 100644
  535    142   
index 45771c7..0000000
  536         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         143  +
++ /dev/null
  537    144   
@@ -1,12 +0,0 @@
  538         -
{
  539         -
    "credentials": {
  540         -
        "access_key_id": "AKIDEXAMPLE",
  541         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  542         -
    },
  543         -
    "expiration_in_seconds": 3600,
  544         -
    "normalize": true,
  545         -
    "region": "us-east-1",
  546         -
    "service": "service",
  547         -
    "sign_body": false,
  548         -
    "timestamp": "2015-08-30T12:36:00Z"
  549         -
}
  550    145   
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
  551    146   
deleted file mode 100644
  552    147   
index 45771c7..0000000
  553         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         148  +
++ /dev/null
  554    149   
@@ -1,12 +0,0 @@
  555         -
{
  556         -
    "credentials": {
  557         -
        "access_key_id": "AKIDEXAMPLE",
  558         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  559         -
    },
  560         -
    "expiration_in_seconds": 3600,
  561         -
    "normalize": true,
  562         -
    "region": "us-east-1",
  563         -
    "service": "service",
  564         -
    "sign_body": false,
  565         -
    "timestamp": "2015-08-30T12:36:00Z"
  566         -
}
  567    150   
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
  568    151   
deleted file mode 100644
  569    152   
index 45771c7..0000000
  570         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         153  +
++ /dev/null
  571    154   
@@ -1,12 +0,0 @@
  572         -
{
  573         -
    "credentials": {
  574         -
        "access_key_id": "AKIDEXAMPLE",
  575         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  576         -
    },
  577         -
    "expiration_in_seconds": 3600,
  578         -
    "normalize": true,
  579         -
    "region": "us-east-1",
  580         -
    "service": "service",
  581         -
    "sign_body": false,
  582         -
    "timestamp": "2015-08-30T12:36:00Z"
  583         -
}
  584    155   
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
  585    156   
deleted file mode 100644
  586    157   
index 45771c7..0000000
  587         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         158  +
++ /dev/null
  588    159   
@@ -1,12 +0,0 @@
  589         -
{
  590         -
    "credentials": {
  591         -
        "access_key_id": "AKIDEXAMPLE",
  592         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  593         -
    },
  594         -
    "expiration_in_seconds": 3600,
  595         -
    "normalize": true,
  596         -
    "region": "us-east-1",
  597         -
    "service": "service",
  598         -
    "sign_body": false,
  599         -
    "timestamp": "2015-08-30T12:36:00Z"
  600         -
}
  601    160   
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
  602    161   
deleted file mode 100644
  603    162   
index 47e7128..0000000
  604         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         163  +
++ /dev/null
  605    164   
@@ -1,9 +0,0 @@
  606         -
GET
  607         -
/
  608         -
  609         -
host:example.amazonaws.com
  610         -
x-amz-date:20150830T123600Z
  611         -
x-amz-region-set:us-east-1
  612         -
  613         -
host;x-amz-date;x-amz-region-set
  614         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  615    165   
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
  616    166   
deleted file mode 100644
  617    167   
index 95d7219..0000000
  618         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         168  +
++ /dev/null
  619    169   
@@ -1,4 +0,0 @@
  620         -
AWS4-ECDSA-P256-SHA256
  621         -
20150830T123600Z
  622         -
20150830/service/aws4_request
  623         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  624    170   
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
  625    171   
deleted file mode 100644
  626    172   
index a34ea26..0000000
  627         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         173  +
++ /dev/null
  628    174   
@@ -1,7 +0,0 @@
  629         -
GET
  630         -
/
  631         -
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
  632         -
host:example.amazonaws.com
  633         -
  634         -
host
  635         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  636    175   
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
  637    176   
deleted file mode 100644
  638    177   
index 48f855c..0000000
  639         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         178  +
++ /dev/null
  640    179   
@@ -1,4 +0,0 @@
  641         -
AWS4-ECDSA-P256-SHA256
  642         -
20150830T123600Z
  643         -
20150830/service/aws4_request
  644         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  645    180   
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
  646    181   
deleted file mode 100644
  647    182   
index 45771c7..0000000
  648         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         183  +
++ /dev/null
  649    184   
@@ -1,12 +0,0 @@
  650         -
{
  651         -
    "credentials": {
  652         -
        "access_key_id": "AKIDEXAMPLE",
  653         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  654         -
    },
  655         -
    "expiration_in_seconds": 3600,
  656         -
    "normalize": true,
  657         -
    "region": "us-east-1",
  658         -
    "service": "service",
  659         -
    "sign_body": false,
  660         -
    "timestamp": "2015-08-30T12:36:00Z"
  661         -
}
  662    185   
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
  663    186   
deleted file mode 100644
  664    187   
index 47e7128..0000000
  665         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         188  +
++ /dev/null
  666    189   
@@ -1,9 +0,0 @@
  667         -
GET
  668         -
/
  669         -
  670         -
host:example.amazonaws.com
  671         -
x-amz-date:20150830T123600Z
  672         -
x-amz-region-set:us-east-1
  673         -
  674         -
host;x-amz-date;x-amz-region-set
  675         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  676    190   
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
  677    191   
deleted file mode 100644
  678    192   
index 95d7219..0000000
  679         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         193  +
++ /dev/null
  680    194   
@@ -1,4 +0,0 @@
  681         -
AWS4-ECDSA-P256-SHA256
  682         -
20150830T123600Z
  683         -
20150830/service/aws4_request
  684         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  685    195   
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
  686    196   
deleted file mode 100644
  687    197   
index a34ea26..0000000
  688         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         198  +
++ /dev/null
  689    199   
@@ -1,7 +0,0 @@
  690         -
GET
  691         -
/
  692         -
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
  693         -
host:example.amazonaws.com
  694         -
  695         -
host
  696         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  697    200   
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
  698    201   
deleted file mode 100644
  699    202   
index 48f855c..0000000
  700         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         203  +
++ /dev/null
  701    204   
@@ -1,4 +0,0 @@
  702         -
AWS4-ECDSA-P256-SHA256
  703         -
20150830T123600Z
  704         -
20150830/service/aws4_request
  705         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  706    205   
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
  707    206   
deleted file mode 100644
  708    207   
index 45771c7..0000000
  709         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         208  +
++ /dev/null
  710    209   
@@ -1,12 +0,0 @@
  711         -
{
  712         -
    "credentials": {
  713         -
        "access_key_id": "AKIDEXAMPLE",
  714         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  715         -
    },
  716         -
    "expiration_in_seconds": 3600,
  717         -
    "normalize": true,
  718         -
    "region": "us-east-1",
  719         -
    "service": "service",
  720         -
    "sign_body": false,
  721         -
    "timestamp": "2015-08-30T12:36:00Z"
  722         -
}
  723    210   
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
  724    211   
deleted file mode 100644
  725    212   
index 45771c7..0000000
  726         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         213  +
++ /dev/null
  727    214   
@@ -1,12 +0,0 @@
  728         -
{
  729         -
    "credentials": {
  730         -
        "access_key_id": "AKIDEXAMPLE",
  731         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  732         -
    },
  733         -
    "expiration_in_seconds": 3600,
  734         -
    "normalize": true,
  735         -
    "region": "us-east-1",
  736         -
    "service": "service",
  737         -
    "sign_body": false,
  738         -
    "timestamp": "2015-08-30T12:36:00Z"
  739         -
}
  740    215   
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
  741    216   
deleted file mode 100644
  742    217   
index 45771c7..0000000
  743         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         218  +
++ /dev/null
  744    219   
@@ -1,12 +0,0 @@
  745         -
{
  746         -
    "credentials": {
  747         -
        "access_key_id": "AKIDEXAMPLE",
  748         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  749         -
    },
  750         -
    "expiration_in_seconds": 3600,
  751         -
    "normalize": true,
  752         -
    "region": "us-east-1",
  753         -
    "service": "service",
  754         -
    "sign_body": false,
  755         -
    "timestamp": "2015-08-30T12:36:00Z"
  756         -
}
  757    220   
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
  758    221   
deleted file mode 100644
  759    222   
index 45771c7..0000000
  760         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         223  +
++ /dev/null
  761    224   
@@ -1,12 +0,0 @@
  762         -
{
  763         -
    "credentials": {
  764         -
        "access_key_id": "AKIDEXAMPLE",
  765         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  766         -
    },
  767         -
    "expiration_in_seconds": 3600,
  768         -
    "normalize": true,
  769         -
    "region": "us-east-1",
  770         -
    "service": "service",
  771         -
    "sign_body": false,
  772         -
    "timestamp": "2015-08-30T12:36:00Z"
  773         -
}
  774    225   
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
  775    226   
deleted file mode 100644
  776    227   
index 45771c7..0000000
  777         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         228  +
++ /dev/null
  778    229   
@@ -1,12 +0,0 @@
  779         -
{
  780         -
    "credentials": {
  781         -
        "access_key_id": "AKIDEXAMPLE",
  782         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  783         -
    },
  784         -
    "expiration_in_seconds": 3600,
  785         -
    "normalize": true,
  786         -
    "region": "us-east-1",
  787         -
    "service": "service",
  788         -
    "sign_body": false,
  789         -
    "timestamp": "2015-08-30T12:36:00Z"
  790         -
}
  791    230   
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
  792    231   
deleted file mode 100644
  793    232   
index 45771c7..0000000
  794         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         233  +
++ /dev/null
  795    234   
@@ -1,12 +0,0 @@
  796         -
{
  797         -
    "credentials": {
  798         -
        "access_key_id": "AKIDEXAMPLE",
  799         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  800         -
    },
  801         -
    "expiration_in_seconds": 3600,
  802         -
    "normalize": true,
  803         -
    "region": "us-east-1",
  804         -
    "service": "service",
  805         -
    "sign_body": false,
  806         -
    "timestamp": "2015-08-30T12:36:00Z"
  807         -
}
  808    235   
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
  809    236   
deleted file mode 100644
  810    237   
index b6fdecf..0000000
  811         -
-- 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
         238  +
++ /dev/null
  812    239   
@@ -1,4 +0,0 @@
  813         -
AWS4-ECDSA-P256-SHA256
  814         -
20150830T123600Z
  815         -
20150830/service/aws4_request
  816         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  817    240   
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
  818    241   
deleted file mode 100644
  819    242   
index a300bea..0000000
  820         -
-- 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
         243  +
++ /dev/null
  821    244   
@@ -1,4 +0,0 @@
  822         -
AWS4-ECDSA-P256-SHA256
  823         -
20150830T123600Z
  824         -
20150830/service/aws4_request
  825         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
  826    245   
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
  827    246   
deleted file mode 100644
  828    247   
index b6fdecf..0000000
  829         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         248  +
++ /dev/null
  830    249   
@@ -1,4 +0,0 @@
  831         -
AWS4-ECDSA-P256-SHA256
  832         -
20150830T123600Z
  833         -
20150830/service/aws4_request
  834         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  835    250   
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
  836    251   
new file mode 100644
  837    252   
index 0000000..a674243
  838         -
-- /dev/null
         253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
  839    254   
@@ -0,0 +1,7 @@
         255  +
# AWS SigV4 and SigV4A Signing Test Suite
         256  +
         257  +
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).
         258  +
         259  +
We added the following changes:
         260  +
         261  +
* 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
  840    262   
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
  841    263   
similarity index 100%
  842    264   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
  843    265   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
  844    266   
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
  845    267   
similarity index 100%
  846    268   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
  847    269   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
  848    270   
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
  849    271   
similarity index 100%
  850    272   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
  851    273   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
  852    274   
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
  853    275   
similarity index 100%
  854    276   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
  855    277   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
  856    278   
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
  857    279   
similarity index 100%
  858    280   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
  859    281   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
  860    282   
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
  861    283   
similarity index 100%
  862    284   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
  863    285   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
  864    286   
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
  865    287   
similarity index 100%
  866    288   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
  867    289   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
  868    290   
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
  869    291   
similarity index 99%
  870    292   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
  871    293   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
  872    294   
index 45771c7..0468d80 100644
  873    295   
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
  874    296   
similarity index 100%
  875    297   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
  876    298   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
  877    299   
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
  878    300   
new file mode 100644
  879    301   
index 0000000..7fc5d7a
  880         -
-- /dev/null
         302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
  881    303   
@@ -0,0 +1 @@
         304  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
  882    305   
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
  883    306   
new file mode 100644
  884    307   
index 0000000..36a1205
  885         -
-- /dev/null
         308  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
  886    309   
@@ -0,0 +1,8 @@
         310  +
GET / HTTP/1.1
         311  +
Host:example.amazonaws.com
         312  +
My-Header1:value2
         313  +
My-Header1:value2
         314  +
My-Header1:value1
         315  +
X-Amz-Date:20150830T123600Z
         316  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         317  +
  887    318   
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
  888    319   
similarity index 100%
  889    320   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
  890    321   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
  891    322   
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
  892    323   
new file mode 100644
  893    324   
index 0000000..f9f4190
  894         -
-- /dev/null
         325  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
  895    326   
@@ -0,0 +1,8 @@
         327  +
GET
         328  +
/
         329  +
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
         330  +
host:example.amazonaws.com
         331  +
my-header1:value2,value2,value1
         332  +
         333  +
host;my-header1
         334  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  896    335   
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
  897    336   
new file mode 100644
  898    337   
index 0000000..5d0d87f
  899         -
-- /dev/null
         338  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
  900    339   
@@ -0,0 +1 @@
         340  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
  901    341   
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
  902    342   
new file mode 100644
  903    343   
index 0000000..c1dfcf4
  904         -
-- /dev/null
         344  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
  905    345   
@@ -0,0 +1,6 @@
         346  +
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
         347  +
Host:example.amazonaws.com
         348  +
My-Header1:value2
         349  +
My-Header1:value2
         350  +
My-Header1:value1
         351  +
  906    352   
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
  907    353   
similarity index 53%
  908    354   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
  909    355   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
  910    356   
index 0a3350a..077c1bb 100644
  911         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         357  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
  912    358   
@@ -1,4 +1,4 @@
  913    359   
AWS4-HMAC-SHA256
  914    360   
20150830T123600Z
  915    361   
20150830/us-east-1/service/aws4_request
  916         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         362  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
  917    363   
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
  918    364   
similarity index 100%
  919    365   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
  920    366   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
  921    367   
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
  922    368   
similarity index 99%
  923    369   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
  924    370   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
  925    371   
index 45771c7..0468d80 100644
  926    372   
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
  927    373   
similarity index 82%
  928    374   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
  929    375   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
  930    376   
index 721a39f..8cb5476 100644
  931         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
  932    378   
@@ -1,9 +1,9 @@
  933    379   
GET
  934    380   
/
  935    381   
  936    382   
host:example.amazonaws.com
  937         -
my-header1:value1,value2,value3
         383  +
my-header1:value1 value2 value3
  938    384   
x-amz-date:20150830T123600Z
  939    385   
  940    386   
host;my-header1;x-amz-date
  941    387   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  942    388   
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
  943    389   
new file mode 100644
  944    390   
index 0000000..e6ff7a9
  945         -
-- /dev/null
         391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
  946    392   
@@ -0,0 +1 @@
         393  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
  947    394   
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
  948    395   
new file mode 100644
  949    396   
index 0000000..b5ef6a0
  950         -
-- /dev/null
         397  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
  951    398   
@@ -0,0 +1,8 @@
         399  +
GET / HTTP/1.1
         400  +
Host:example.amazonaws.com
         401  +
My-Header1:value1
         402  +
  value2
         403  +
     value3
         404  +
X-Amz-Date:20150830T123600Z
         405  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         406  +
  952    407   
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
  953    408   
similarity index 53%
  954    409   
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
  955    410   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
  956    411   
index fd43a41..97c7430 100644
  957         -
-- 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
         412  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
  958    413   
@@ -1,4 +1,4 @@
  959    414   
AWS4-HMAC-SHA256
  960    415   
20150830T123600Z
  961    416   
20150830/us-east-1/service/aws4_request
  962         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         417  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
  963    418   
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
  964    419   
new file mode 100644
  965    420   
index 0000000..aac46de
  966         -
-- /dev/null
         421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
  967    422   
@@ -0,0 +1,8 @@
         423  +
GET
         424  +
/
         425  +
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
         426  +
host:example.amazonaws.com
         427  +
my-header1:value1 value2 value3
         428  +
         429  +
host;my-header1
         430  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  968    431   
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
  969    432   
new file mode 100644
  970    433   
index 0000000..205732d
  971         -
-- /dev/null
         434  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
  972    435   
@@ -0,0 +1 @@
         436  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
  973    437   
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
  974    438   
new file mode 100644
  975    439   
index 0000000..a891b87
  976         -
-- /dev/null
         440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
  977    441   
@@ -0,0 +1,6 @@
         442  +
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
         443  +
Host:example.amazonaws.com
         444  +
My-Header1:value1
         445  +
  value2
         446  +
     value3
         447  +
  978    448   
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
  979    449   
similarity index 53%
  980    450   
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
  981    451   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
  982    452   
index 90e66b8..ec3fe45 100644
  983         -
-- 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
         453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
  984    454   
@@ -1,4 +1,4 @@
  985    455   
AWS4-HMAC-SHA256
  986    456   
20150830T123600Z
  987    457   
20150830/us-east-1/service/aws4_request
  988         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         458  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
  989    459   
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
  990    460   
similarity index 75%
  991    461   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
  992    462   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
  993    463   
index 7caa6ac..b5026cd 100644
  994         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         464  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
  995    465   
@@ -1,6 +1,5 @@
  996    466   
GET / HTTP/1.1
  997    467   
Host:example.amazonaws.com
  998    468   
My-Header1:value1
  999    469   
  value2
 1000    470   
     value3
 1001         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1002    471   
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
 1003    472   
similarity index 99%
 1004    473   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1005    474   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1006    475   
index 45771c7..0468d80 100644
 1007    476   
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
 1008    477   
similarity index 100%
 1009    478   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1010    479   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1011    480   
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
 1012    481   
new file mode 100644
 1013    482   
index 0000000..8ef0494
 1014         -
-- /dev/null
         483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1015    484   
@@ -0,0 +1 @@
         485  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1016    486   
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
 1017    487   
new file mode 100644
 1018    488   
index 0000000..b786dc9
 1019         -
-- /dev/null
         489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1020    490   
@@ -0,0 +1,9 @@
         491  +
GET / HTTP/1.1
         492  +
Host:example.amazonaws.com
         493  +
My-Header1:value4
         494  +
My-Header1:value1
         495  +
My-Header1:value3
         496  +
My-Header1:value2
         497  +
X-Amz-Date:20150830T123600Z
         498  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         499  +
 1021    500   
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
 1022    501   
similarity index 100%
 1023    502   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1024    503   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1025    504   
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
 1026    505   
new file mode 100644
 1027    506   
index 0000000..a211cc5
 1028         -
-- /dev/null
         507  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1029    508   
@@ -0,0 +1,8 @@
         509  +
GET
         510  +
/
         511  +
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
         512  +
host:example.amazonaws.com
         513  +
my-header1:value4,value1,value3,value2
         514  +
         515  +
host;my-header1
         516  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1030    517   
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
 1031    518   
new file mode 100644
 1032    519   
index 0000000..417b0fa
 1033         -
-- /dev/null
         520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1034    521   
@@ -0,0 +1 @@
         522  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1035    523   
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
 1036    524   
new file mode 100644
 1037    525   
index 0000000..b615e5d
 1038         -
-- /dev/null
         526  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1039    527   
@@ -0,0 +1,7 @@
         528  +
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
         529  +
Host:example.amazonaws.com
         530  +
My-Header1:value4
         531  +
My-Header1:value1
         532  +
My-Header1:value3
         533  +
My-Header1:value2
         534  +
 1040    535   
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
 1041    536   
similarity index 53%
 1042    537   
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
 1043    538   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1044    539   
index f7e615e..dcaaa1b 100644
 1045         -
-- 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
         540  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1046    541   
@@ -1,4 +1,4 @@
 1047    542   
AWS4-HMAC-SHA256
 1048    543   
20150830T123600Z
 1049    544   
20150830/us-east-1/service/aws4_request
 1050         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         545  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1051    546   
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
 1052    547   
similarity index 100%
 1053    548   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1054    549   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1055    550   
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
 1056    551   
similarity index 99%
 1057    552   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1058    553   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1059    554   
index 45771c7..0468d80 100644
 1060    555   
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
 1061    556   
similarity index 100%
 1062    557   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1063    558   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1064    559   
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
 1065    560   
new file mode 100644
 1066    561   
index 0000000..36081a9
 1067         -
-- /dev/null
         562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1068    563   
@@ -0,0 +1 @@
         564  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1069    565   
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
 1070    566   
new file mode 100644
 1071    567   
index 0000000..6331d16
 1072         -
-- /dev/null
         568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1073    569   
@@ -0,0 +1,7 @@
         570  +
GET / HTTP/1.1
         571  +
Host:example.amazonaws.com
         572  +
My-Header1: value1
         573  +
My-Header2: "a   b   c"
         574  +
X-Amz-Date:20150830T123600Z
         575  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         576  +
 1074    577   
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
 1075    578   
similarity index 100%
 1076    579   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1077    580   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1078    581   
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
 1079    582   
new file mode 100644
 1080    583   
index 0000000..125c1f9
 1081         -
-- /dev/null
         584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1082    585   
@@ -0,0 +1,9 @@
         586  +
GET
         587  +
/
         588  +
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
         589  +
host:example.amazonaws.com
         590  +
my-header1:value1
         591  +
my-header2:"a b c"
         592  +
         593  +
host;my-header1;my-header2
         594  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1083    595   
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
 1084    596   
new file mode 100644
 1085    597   
index 0000000..17007a8
 1086         -
-- /dev/null
         598  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1087    599   
@@ -0,0 +1 @@
         600  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1088    601   
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
 1089    602   
new file mode 100644
 1090    603   
index 0000000..e519fd9
 1091         -
-- /dev/null
         604  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1092    605   
@@ -0,0 +1,5 @@
         606  +
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
         607  +
Host:example.amazonaws.com
         608  +
My-Header1: value1
         609  +
My-Header2: "a   b   c"
         610  +
 1093    611   
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
 1094    612   
new file mode 100644
 1095    613   
index 0000000..6b4b781
 1096         -
-- /dev/null
         614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1097    615   
@@ -0,0 +1,4 @@
         616  +
AWS4-HMAC-SHA256
         617  +
20150830T123600Z
         618  +
20150830/us-east-1/service/aws4_request
         619  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1098    620   
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
 1099    621   
similarity index 100%
 1100    622   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1101    623   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1102    624   
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
 1103    625   
new file mode 100644
 1104    626   
index 0000000..0468d80
 1105         -
-- /dev/null
         627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1106    628   
@@ -0,0 +1,12 @@
         629  +
{
         630  +
    "credentials": {
         631  +
        "access_key_id": "AKIDEXAMPLE",
         632  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         633  +
    },
         634  +
    "expiration_in_seconds": 3600,
         635  +
    "normalize": true,
         636  +
    "region": "us-east-1",
         637  +
    "service": "service",
         638  +
    "sign_body": false,
         639  +
    "timestamp": "2015-08-30T12:36:00Z"
         640  +
}
              \
 No newline at end of file
 1107    641   
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
 1108    642   
similarity index 100%
 1109    643   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1110    644   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1111    645   
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
 1112    646   
new file mode 100644
 1113    647   
index 0000000..87f295f
 1114         -
-- /dev/null
         648  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1115    649   
@@ -0,0 +1 @@
         650  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1116    651   
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
 1117    652   
new file mode 100644
 1118    653   
index 0000000..0de8327
 1119         -
-- /dev/null
         654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1120    655   
@@ -0,0 +1,5 @@
         656  +
GET /example/.. HTTP/1.1
         657  +
Host:example.amazonaws.com
         658  +
X-Amz-Date:20150830T123600Z
         659  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         660  +
 1121    661   
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
 1122    662   
similarity index 100%
 1123    663   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1124    664   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1125    665   
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
 1126    666   
new file mode 100644
 1127    667   
index 0000000..fb2420d
 1128         -
-- /dev/null
         668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1129    669   
@@ -0,0 +1,7 @@
         670  +
GET
         671  +
/
         672  +
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
         673  +
host:example.amazonaws.com
         674  +
         675  +
host
         676  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1130    677   
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
 1131    678   
new file mode 100644
 1132    679   
index 0000000..da5c905
 1133         -
-- /dev/null
         680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1134    681   
@@ -0,0 +1 @@
         682  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1135    683   
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
 1136    684   
new file mode 100644
 1137    685   
index 0000000..4329c98
 1138         -
-- /dev/null
         686  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1139    687   
@@ -0,0 +1,3 @@
         688  +
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
         689  +
Host:example.amazonaws.com
         690  +
 1140    691   
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
 1141    692   
new file mode 100644
 1142    693   
index 0000000..d837e67
 1143         -
-- /dev/null
         694  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1144    695   
@@ -0,0 +1,4 @@
         696  +
AWS4-HMAC-SHA256
         697  +
20150830T123600Z
         698  +
20150830/us-east-1/service/aws4_request
         699  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1145    700   
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
 1146    701   
similarity index 100%
 1147    702   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1148    703   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1149    704   
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
 1150    705   
new file mode 100644
 1151    706   
index 0000000..0468d80
 1152         -
-- /dev/null
         707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1153    708   
@@ -0,0 +1,12 @@
         709  +
{
         710  +
    "credentials": {
         711  +
        "access_key_id": "AKIDEXAMPLE",
         712  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         713  +
    },
         714  +
    "expiration_in_seconds": 3600,
         715  +
    "normalize": true,
         716  +
    "region": "us-east-1",
         717  +
    "service": "service",
         718  +
    "sign_body": false,
         719  +
    "timestamp": "2015-08-30T12:36:00Z"
         720  +
}
              \
 No newline at end of file
 1154    721   
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
 1155    722   
similarity index 100%
 1156    723   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1157    724   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1158    725   
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
 1159    726   
new file mode 100644
 1160    727   
index 0000000..87f295f
 1161         -
-- /dev/null
         728  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1162    729   
@@ -0,0 +1 @@
         730  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1163    731   
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
 1164    732   
new file mode 100644
 1165    733   
index 0000000..f9b3815
 1166         -
-- /dev/null
         734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1167    735   
@@ -0,0 +1,5 @@
         736  +
GET /example1/example2/../.. HTTP/1.1
         737  +
Host:example.amazonaws.com
         738  +
X-Amz-Date:20150830T123600Z
         739  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         740  +
 1168    741   
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
 1169    742   
similarity index 100%
 1170    743   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1171    744   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1172    745   
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
 1173    746   
new file mode 100644
 1174    747   
index 0000000..fb2420d
 1175         -
-- /dev/null
         748  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1176    749   
@@ -0,0 +1,7 @@
         750  +
GET
         751  +
/
         752  +
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
         753  +
host:example.amazonaws.com
         754  +
         755  +
host
         756  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1177    757   
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
 1178    758   
new file mode 100644
 1179    759   
index 0000000..da5c905
 1180         -
-- /dev/null
         760  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1181    761   
@@ -0,0 +1 @@
         762  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1182    763   
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
 1183    764   
new file mode 100644
 1184    765   
index 0000000..b2988b7
 1185         -
-- /dev/null
         766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1186    767   
@@ -0,0 +1,3 @@
         768  +
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
         769  +
Host:example.amazonaws.com
         770  +
 1187    771   
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
 1188    772   
new file mode 100644
 1189    773   
index 0000000..d837e67
 1190         -
-- /dev/null
         774  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1191    775   
@@ -0,0 +1,4 @@
         776  +
AWS4-HMAC-SHA256
         777  +
20150830T123600Z
         778  +
20150830/us-east-1/service/aws4_request
         779  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1192    780   
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
 1193    781   
similarity index 100%
 1194    782   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1195    783   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1196    784   
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
 1197    785   
similarity index 99%
 1198    786   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1199    787   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1200    788   
index afe367b..7bee5c7 100644
 1201    789   
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
 1202    790   
similarity index 82%
 1203    791   
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
 1204    792   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1205    793   
index 36c3cdf..6919c44 100644
 1206         -
-- 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
         794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1207    795   
@@ -1,8 +1,8 @@
 1208    796   
GET
 1209         -
/
 1210         -
Param1=Value1&Param1=value2
         797  +
/example1/example2/../..
         798  +
 1211    799   
host:example.amazonaws.com
 1212    800   
x-amz-date:20150830T123600Z
 1213    801   
 1214    802   
host;x-amz-date
 1215    803   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1216    804   
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
 1217    805   
new file mode 100644
 1218    806   
index 0000000..4092d83
 1219         -
-- /dev/null
         807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1220    808   
@@ -0,0 +1 @@
         809  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1221    810   
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
 1222    811   
new file mode 100644
 1223    812   
index 0000000..e731b35
 1224         -
-- /dev/null
         813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1225    814   
@@ -0,0 +1,5 @@
         815  +
GET /example1/example2/../.. HTTP/1.1
         816  +
Host:example.amazonaws.com
         817  +
X-Amz-Date:20150830T123600Z
         818  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
         819  +
 1226    820   
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
 1227    821   
new file mode 100644
 1228    822   
index 0000000..4f45752
 1229         -
-- /dev/null
         823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1230    824   
@@ -0,0 +1,4 @@
         825  +
AWS4-HMAC-SHA256
         826  +
20150830T123600Z
         827  +
20150830/us-east-1/service/aws4_request
         828  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1231    829   
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
 1232    830   
new file mode 100644
 1233    831   
index 0000000..e1fb07d
 1234         -
-- /dev/null
         832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1235    833   
@@ -0,0 +1,7 @@
         834  +
GET
         835  +
/example1/example2/../..
         836  +
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
         837  +
host:example.amazonaws.com
         838  +
         839  +
host
         840  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1236    841   
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
 1237    842   
new file mode 100644
 1238    843   
index 0000000..8ac31d7
 1239         -
-- /dev/null
         844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1240    845   
@@ -0,0 +1 @@
         846  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1241    847   
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
 1242    848   
new file mode 100644
 1243    849   
index 0000000..ac074f9
 1244         -
-- /dev/null
         850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1245    851   
@@ -0,0 +1,3 @@
         852  +
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
         853  +
Host:example.amazonaws.com
         854  +
 1246    855   
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
 1247    856   
new file mode 100644
 1248    857   
index 0000000..8dcb6ff
 1249         -
-- /dev/null
         858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1250    859   
@@ -0,0 +1,4 @@
         860  +
AWS4-HMAC-SHA256
         861  +
20150830T123600Z
         862  +
20150830/us-east-1/service/aws4_request
         863  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1251    864   
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
 1252    865   
similarity index 100%
 1253    866   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1254    867   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1255    868   
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
 1256    869   
similarity index 99%
 1257    870   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1258    871   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1259    872   
index afe367b..7bee5c7 100644
 1260    873   
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
 1261    874   
similarity index 82%
 1262    875   
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
 1263    876   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1264    877   
index 26898eb..f640bc2 100644
 1265         -
-- 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
         878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1266    879   
@@ -1,8 +1,8 @@
 1267    880   
GET
 1268         -
/
 1269         -
Param1=value1&Param1=value2
         881  +
/example/..
         882  +
 1270    883   
host:example.amazonaws.com
 1271    884   
x-amz-date:20150830T123600Z
 1272    885   
 1273    886   
host;x-amz-date
 1274    887   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1275    888   
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
 1276    889   
new file mode 100644
 1277    890   
index 0000000..d957303
 1278         -
-- /dev/null
         891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1279    892   
@@ -0,0 +1 @@
         893  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1280    894   
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
 1281    895   
new file mode 100644
 1282    896   
index 0000000..4f42ffc
 1283         -
-- /dev/null
         897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1284    898   
@@ -0,0 +1,5 @@
         899  +
GET /example/.. HTTP/1.1
         900  +
Host:example.amazonaws.com
         901  +
X-Amz-Date:20150830T123600Z
         902  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
         903  +
 1285    904   
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
 1286    905   
new file mode 100644
 1287    906   
index 0000000..ca54bda
 1288         -
-- /dev/null
         907  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1289    908   
@@ -0,0 +1,4 @@
         909  +
AWS4-HMAC-SHA256
         910  +
20150830T123600Z
         911  +
20150830/us-east-1/service/aws4_request
         912  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1290    913   
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
 1291    914   
new file mode 100644
 1292    915   
index 0000000..dc80036
 1293         -
-- /dev/null
         916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1294    917   
@@ -0,0 +1,7 @@
         918  +
GET
         919  +
/example/..
         920  +
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
         921  +
host:example.amazonaws.com
         922  +
         923  +
host
         924  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1295    925   
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
 1296    926   
new file mode 100644
 1297    927   
index 0000000..dfa0437
 1298         -
-- /dev/null
         928  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1299    929   
@@ -0,0 +1 @@
         930  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1300    931   
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
 1301    932   
new file mode 100644
 1302    933   
index 0000000..98367b1
 1303         -
-- /dev/null
         934  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1304    935   
@@ -0,0 +1,3 @@
         936  +
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
         937  +
Host:example.amazonaws.com
         938  +
 1305    939   
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
 1306    940   
new file mode 100644
 1307    941   
index 0000000..f65dd66
 1308         -
-- /dev/null
         942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1309    943   
@@ -0,0 +1,4 @@
         944  +
AWS4-HMAC-SHA256
         945  +
20150830T123600Z
         946  +
20150830/us-east-1/service/aws4_request
         947  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1310    948   
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
 1311    949   
similarity index 100%
 1312    950   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1313    951   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1314    952   
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
 1315    953   
new file mode 100644
 1316    954   
index 0000000..0468d80
 1317         -
-- /dev/null
         955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1318    956   
@@ -0,0 +1,12 @@
         957  +
{
         958  +
    "credentials": {
         959  +
        "access_key_id": "AKIDEXAMPLE",
         960  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         961  +
    },
         962  +
    "expiration_in_seconds": 3600,
         963  +
    "normalize": true,
         964  +
    "region": "us-east-1",
         965  +
    "service": "service",
         966  +
    "sign_body": false,
         967  +
    "timestamp": "2015-08-30T12:36:00Z"
         968  +
}
              \
 No newline at end of file
 1319    969   
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
 1320    970   
similarity index 100%
 1321    971   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1322    972   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1323    973   
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
 1324    974   
new file mode 100644
 1325    975   
index 0000000..87f295f
 1326         -
-- /dev/null
         976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1327    977   
@@ -0,0 +1 @@
         978  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1328    979   
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
 1329    980   
new file mode 100644
 1330    981   
index 0000000..99c8eeb
 1331         -
-- /dev/null
         982  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1332    983   
@@ -0,0 +1,5 @@
         984  +
GET /./ HTTP/1.1
         985  +
Host:example.amazonaws.com
         986  +
X-Amz-Date:20150830T123600Z
         987  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         988  +
 1333    989   
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
 1334    990   
similarity index 100%
 1335    991   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1336    992   
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
 1337    993   
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
 1338    994   
new file mode 100644
 1339    995   
index 0000000..fb2420d
 1340         -
-- /dev/null
         996  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1341    997   
@@ -0,0 +1,7 @@
         998  +
GET
         999  +
/
        1000  +
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
        1001  +
host:example.amazonaws.com
        1002  +
        1003  +
host
        1004  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1342   1005   
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
 1343   1006   
new file mode 100644
 1344   1007   
index 0000000..da5c905
 1345         -
-- /dev/null
        1008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1346   1009   
@@ -0,0 +1 @@
        1010  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1347   1011   
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
 1348   1012   
new file mode 100644
 1349   1013   
index 0000000..2e47f69
 1350         -
-- /dev/null
        1014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1351   1015   
@@ -0,0 +1,3 @@
        1016  +
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
        1017  +
Host:example.amazonaws.com
        1018  +
 1352   1019   
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
 1353   1020   
new file mode 100644
 1354   1021   
index 0000000..d837e67
 1355         -
-- /dev/null
        1022  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1356   1023   
@@ -0,0 +1,4 @@
        1024  +
AWS4-HMAC-SHA256
        1025  +
20150830T123600Z
        1026  +
20150830/us-east-1/service/aws4_request
        1027  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1357   1028   
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
 1358   1029   
similarity index 100%
 1359   1030   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1360   1031   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1361   1032   
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
 1362   1033   
similarity index 99%
 1363   1034   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1364   1035   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1365   1036   
index afe367b..7bee5c7 100644
 1366   1037   
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
 1367   1038   
new file mode 100644
 1368   1039   
index 0000000..5159048
 1369         -
-- /dev/null
        1040  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1370   1041   
@@ -0,0 +1,8 @@
        1042  +
GET
        1043  +
/./
        1044  +
        1045  +
host:example.amazonaws.com
        1046  +
x-amz-date:20150830T123600Z
        1047  +
        1048  +
host;x-amz-date
        1049  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1371   1050   
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
 1372   1051   
new file mode 100644
 1373   1052   
index 0000000..b49ff0e
 1374         -
-- /dev/null
        1053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1375   1054   
@@ -0,0 +1 @@
        1055  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1376   1056   
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
 1377   1057   
new file mode 100644
 1378   1058   
index 0000000..aeb1ffa
 1379         -
-- /dev/null
        1059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1380   1060   
@@ -0,0 +1,5 @@
        1061  +
GET /./ HTTP/1.1
        1062  +
Host:example.amazonaws.com
        1063  +
X-Amz-Date:20150830T123600Z
        1064  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1065  +
 1381   1066   
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
 1382   1067   
new file mode 100644
 1383   1068   
index 0000000..b7d8caf
 1384         -
-- /dev/null
        1069  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1385   1070   
@@ -0,0 +1,4 @@
        1071  +
AWS4-HMAC-SHA256
        1072  +
20150830T123600Z
        1073  +
20150830/us-east-1/service/aws4_request
        1074  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1386   1075   
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
 1387   1076   
new file mode 100644
 1388   1077   
index 0000000..d4e029e
 1389         -
-- /dev/null
        1078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1390   1079   
@@ -0,0 +1,7 @@
        1080  +
GET
        1081  +
/./
        1082  +
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
        1083  +
host:example.amazonaws.com
        1084  +
        1085  +
host
        1086  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1391   1087   
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
 1392   1088   
new file mode 100644
 1393   1089   
index 0000000..fe8f4cc
 1394         -
-- /dev/null
        1090  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1395   1091   
@@ -0,0 +1 @@
        1092  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1396   1093   
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
 1397   1094   
new file mode 100644
 1398   1095   
index 0000000..dcc4fc4
 1399         -
-- /dev/null
        1096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1400   1097   
@@ -0,0 +1,3 @@
        1098  +
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
        1099  +
Host:example.amazonaws.com
        1100  +
 1401   1101   
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
 1402   1102   
new file mode 100644
 1403   1103   
index 0000000..5fb3ada
 1404         -
-- /dev/null
        1104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1405   1105   
@@ -0,0 +1,4 @@
        1106  +
AWS4-HMAC-SHA256
        1107  +
20150830T123600Z
        1108  +
20150830/us-east-1/service/aws4_request
        1109  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1406   1110   
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
 1407   1111   
similarity index 100%
 1408   1112   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1409   1113   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1410   1114   
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
 1411   1115   
new file mode 100644
 1412   1116   
index 0000000..0468d80
 1413         -
-- /dev/null
        1117  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1414   1118   
@@ -0,0 +1,12 @@
        1119  +
{
        1120  +
    "credentials": {
        1121  +
        "access_key_id": "AKIDEXAMPLE",
        1122  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1123  +
    },
        1124  +
    "expiration_in_seconds": 3600,
        1125  +
    "normalize": true,
        1126  +
    "region": "us-east-1",
        1127  +
    "service": "service",
        1128  +
    "sign_body": false,
        1129  +
    "timestamp": "2015-08-30T12:36:00Z"
        1130  +
}
              \
 No newline at end of file
 1415   1131   
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
 1416   1132   
similarity index 100%
 1417   1133   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1418   1134   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1419   1135   
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
 1420   1136   
new file mode 100644
 1421   1137   
index 0000000..87f295f
 1422         -
-- /dev/null
        1138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1423   1139   
@@ -0,0 +1 @@
        1140  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1424   1141   
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
 1425   1142   
new file mode 100644
 1426   1143   
index 0000000..b91087b
 1427         -
-- /dev/null
        1144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1428   1145   
@@ -0,0 +1,5 @@
        1146  +
GET // HTTP/1.1
        1147  +
Host:example.amazonaws.com
        1148  +
X-Amz-Date:20150830T123600Z
        1149  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1150  +
 1429   1151   
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
 1430   1152   
similarity index 100%
 1431   1153   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1432   1154   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1433   1155   
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
 1434   1156   
new file mode 100644
 1435   1157   
index 0000000..fb2420d
 1436         -
-- /dev/null
        1158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1437   1159   
@@ -0,0 +1,7 @@
        1160  +
GET
        1161  +
/
        1162  +
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
        1163  +
host:example.amazonaws.com
        1164  +
        1165  +
host
        1166  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1438   1167   
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
 1439   1168   
new file mode 100644
 1440   1169   
index 0000000..da5c905
 1441         -
-- /dev/null
        1170  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1442   1171   
@@ -0,0 +1 @@
        1172  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1443   1173   
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
 1444   1174   
new file mode 100644
 1445   1175   
index 0000000..0290ba4
 1446         -
-- /dev/null
        1176  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1447   1177   
@@ -0,0 +1,3 @@
        1178  +
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
        1179  +
Host:example.amazonaws.com
        1180  +
 1448   1181   
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
 1449   1182   
new file mode 100644
 1450   1183   
index 0000000..d837e67
 1451         -
-- /dev/null
        1184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1452   1185   
@@ -0,0 +1,4 @@
        1186  +
AWS4-HMAC-SHA256
        1187  +
20150830T123600Z
        1188  +
20150830/us-east-1/service/aws4_request
        1189  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1453   1190   
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
 1454   1191   
similarity index 100%
 1455   1192   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1456   1193   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1457   1194   
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
 1458   1195   
new file mode 100644
 1459   1196   
index 0000000..0468d80
 1460         -
-- /dev/null
        1197  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1461   1198   
@@ -0,0 +1,12 @@
        1199  +
{
        1200  +
    "credentials": {
        1201  +
        "access_key_id": "AKIDEXAMPLE",
        1202  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1203  +
    },
        1204  +
    "expiration_in_seconds": 3600,
        1205  +
    "normalize": true,
        1206  +
    "region": "us-east-1",
        1207  +
    "service": "service",
        1208  +
    "sign_body": false,
        1209  +
    "timestamp": "2015-08-30T12:36:00Z"
        1210  +
}
              \
 No newline at end of file
 1462   1211   
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
 1463   1212   
similarity index 100%
 1464   1213   
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
 1465   1214   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1466   1215   
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
 1467   1216   
new file mode 100644
 1468   1217   
index 0000000..8f892bf
 1469         -
-- /dev/null
        1218  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1470   1219   
@@ -0,0 +1 @@
        1220  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1471   1221   
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
 1472   1222   
new file mode 100644
 1473   1223   
index 0000000..2a1895c
 1474         -
-- /dev/null
        1224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1475   1225   
@@ -0,0 +1,5 @@
        1226  +
GET /./example HTTP/1.1
        1227  +
Host:example.amazonaws.com
        1228  +
X-Amz-Date:20150830T123600Z
        1229  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1230  +
 1476   1231   
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
 1477   1232   
similarity index 100%
 1478   1233   
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
 1479   1234   
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
 1480   1235   
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
 1481   1236   
new file mode 100644
 1482   1237   
index 0000000..99dfc2a
 1483         -
-- /dev/null
        1238  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1484   1239   
@@ -0,0 +1,7 @@
        1240  +
GET
        1241  +
/example
        1242  +
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
        1243  +
host:example.amazonaws.com
        1244  +
        1245  +
host
        1246  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1485   1247   
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
 1486   1248   
new file mode 100644
 1487   1249   
index 0000000..fcd7a17
 1488         -
-- /dev/null
        1250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1489   1251   
@@ -0,0 +1 @@
        1252  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1490   1253   
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
 1491   1254   
new file mode 100644
 1492   1255   
index 0000000..f671de2
 1493         -
-- /dev/null
        1256  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1494   1257   
@@ -0,0 +1,3 @@
        1258  +
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
        1259  +
Host:example.amazonaws.com
        1260  +
 1495   1261   
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
 1496   1262   
new file mode 100644
 1497   1263   
index 0000000..f8456dc
 1498         -
-- /dev/null
        1264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1499   1265   
@@ -0,0 +1,4 @@
        1266  +
AWS4-HMAC-SHA256
        1267  +
20150830T123600Z
        1268  +
20150830/us-east-1/service/aws4_request
        1269  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1500   1270   
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
 1501   1271   
similarity index 100%
 1502   1272   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1503   1273   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1504   1274   
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
 1505   1275   
similarity index 99%
 1506   1276   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1507   1277   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1508   1278   
index afe367b..7bee5c7 100644
 1509   1279   
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
 1510   1280   
new file mode 100644
 1511   1281   
index 0000000..36698c7
 1512         -
-- /dev/null
        1282  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1513   1283   
@@ -0,0 +1,8 @@
        1284  +
GET
        1285  +
/./example
        1286  +
        1287  +
host:example.amazonaws.com
        1288  +
x-amz-date:20150830T123600Z
        1289  +
        1290  +
host;x-amz-date
        1291  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1514   1292   
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
 1515   1293   
new file mode 100644
 1516   1294   
index 0000000..4a4b8f2
 1517         -
-- /dev/null
        1295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1518   1296   
@@ -0,0 +1 @@
        1297  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1519   1298   
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
 1520   1299   
new file mode 100644
 1521   1300   
index 0000000..d462bcd
 1522         -
-- /dev/null
        1301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1523   1302   
@@ -0,0 +1,5 @@
        1303  +
GET /./example HTTP/1.1
        1304  +
Host:example.amazonaws.com
        1305  +
X-Amz-Date:20150830T123600Z
        1306  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1307  +
 1524   1308   
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
 1525   1309   
new file mode 100644
 1526   1310   
index 0000000..8be78c9
 1527         -
-- /dev/null
        1311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1528   1312   
@@ -0,0 +1,4 @@
        1313  +
AWS4-HMAC-SHA256
        1314  +
20150830T123600Z
        1315  +
20150830/us-east-1/service/aws4_request
        1316  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1529   1317   
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
 1530   1318   
new file mode 100644
 1531   1319   
index 0000000..fe1103c
 1532         -
-- /dev/null
        1320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1533   1321   
@@ -0,0 +1,7 @@
        1322  +
GET
        1323  +
/./example
        1324  +
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
        1325  +
host:example.amazonaws.com
        1326  +
        1327  +
host
        1328  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1534   1329   
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
 1535   1330   
new file mode 100644
 1536   1331   
index 0000000..ce80762
 1537         -
-- /dev/null
        1332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1538   1333   
@@ -0,0 +1 @@
        1334  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1539   1335   
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
 1540   1336   
new file mode 100644
 1541   1337   
index 0000000..30841a6
 1542         -
-- /dev/null
        1338  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1543   1339   
@@ -0,0 +1,3 @@
        1340  +
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
        1341  +
Host:example.amazonaws.com
        1342  +
 1544   1343   
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
 1545   1344   
new file mode 100644
 1546   1345   
index 0000000..5c66509
 1547         -
-- /dev/null
        1346  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1548   1347   
@@ -0,0 +1,4 @@
        1348  +
AWS4-HMAC-SHA256
        1349  +
20150830T123600Z
        1350  +
20150830/us-east-1/service/aws4_request
        1351  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1549   1352   
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
 1550   1353   
similarity index 100%
 1551   1354   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1552   1355   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1553   1356   
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
 1554   1357   
new file mode 100644
 1555   1358   
index 0000000..7bee5c7
 1556         -
-- /dev/null
        1359  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1557   1360   
@@ -0,0 +1,12 @@
        1361  +
{
        1362  +
    "credentials": {
        1363  +
        "access_key_id": "AKIDEXAMPLE",
        1364  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1365  +
    },
        1366  +
    "expiration_in_seconds": 3600,
        1367  +
    "normalize": false,
        1368  +
    "region": "us-east-1",
        1369  +
    "service": "service",
        1370  +
    "sign_body": false,
        1371  +
    "timestamp": "2015-08-30T12:36:00Z"
        1372  +
}
              \
 No newline at end of file
 1558   1373   
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
 1559   1374   
new file mode 100644
 1560   1375   
index 0000000..5860c8a
 1561         -
-- /dev/null
        1376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1562   1377   
@@ -0,0 +1,8 @@
        1378  +
GET
        1379  +
//
        1380  +
        1381  +
host:example.amazonaws.com
        1382  +
x-amz-date:20150830T123600Z
        1383  +
        1384  +
host;x-amz-date
        1385  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1563   1386   
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
 1564   1387   
new file mode 100644
 1565   1388   
index 0000000..8310471
 1566         -
-- /dev/null
        1389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1567   1390   
@@ -0,0 +1 @@
        1391  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1568   1392   
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
 1569   1393   
new file mode 100644
 1570   1394   
index 0000000..2a7afef
 1571         -
-- /dev/null
        1395  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1572   1396   
@@ -0,0 +1,5 @@
        1397  +
GET // HTTP/1.1
        1398  +
Host:example.amazonaws.com
        1399  +
X-Amz-Date:20150830T123600Z
        1400  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1401  +
 1573   1402   
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
 1574   1403   
new file mode 100644
 1575   1404   
index 0000000..06059dd
 1576         -
-- /dev/null
        1405  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1577   1406   
@@ -0,0 +1,4 @@
        1407  +
AWS4-HMAC-SHA256
        1408  +
20150830T123600Z
        1409  +
20150830/us-east-1/service/aws4_request
        1410  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1578   1411   
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
 1579   1412   
new file mode 100644
 1580   1413   
index 0000000..6d63aef
 1581         -
-- /dev/null
        1414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1582   1415   
@@ -0,0 +1,7 @@
        1416  +
GET
        1417  +
//
        1418  +
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
        1419  +
host:example.amazonaws.com
        1420  +
        1421  +
host
        1422  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1583   1423   
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
 1584   1424   
new file mode 100644
 1585   1425   
index 0000000..e5b7b6c
 1586         -
-- /dev/null
        1426  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1587   1427   
@@ -0,0 +1 @@
        1428  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1588   1429   
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
 1589   1430   
new file mode 100644
 1590   1431   
index 0000000..46fe3fd
 1591         -
-- /dev/null
        1432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1592   1433   
@@ -0,0 +1,3 @@
        1434  +
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
        1435  +
Host:example.amazonaws.com
        1436  +
 1593   1437   
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
 1594   1438   
new file mode 100644
 1595   1439   
index 0000000..ea79940
 1596         -
-- /dev/null
        1440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1597   1441   
@@ -0,0 +1,4 @@
        1442  +
AWS4-HMAC-SHA256
        1443  +
20150830T123600Z
        1444  +
20150830/us-east-1/service/aws4_request
        1445  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1598   1446   
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
 1599   1447   
similarity index 100%
 1600   1448   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1601   1449   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1602   1450   
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
 1603   1451   
new file mode 100644
 1604   1452   
index 0000000..0468d80
 1605         -
-- /dev/null
        1453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1606   1454   
@@ -0,0 +1,12 @@
        1455  +
{
        1456  +
    "credentials": {
        1457  +
        "access_key_id": "AKIDEXAMPLE",
        1458  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1459  +
    },
        1460  +
    "expiration_in_seconds": 3600,
        1461  +
    "normalize": true,
        1462  +
    "region": "us-east-1",
        1463  +
    "service": "service",
        1464  +
    "sign_body": false,
        1465  +
    "timestamp": "2015-08-30T12:36:00Z"
        1466  +
}
              \
 No newline at end of file
 1607   1467   
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
 1608   1468   
similarity index 100%
 1609   1469   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1610   1470   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1611   1471   
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
 1612   1472   
new file mode 100644
 1613   1473   
index 0000000..71c7bac
 1614         -
-- /dev/null
        1474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1615   1475   
@@ -0,0 +1 @@
        1476  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1616   1477   
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
 1617   1478   
new file mode 100644
 1618   1479   
index 0000000..0add1f1
 1619         -
-- /dev/null
        1480  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1620   1481   
@@ -0,0 +1,5 @@
        1482  +
GET //example// HTTP/1.1
        1483  +
Host:example.amazonaws.com
        1484  +
X-Amz-Date:20150830T123600Z
        1485  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1486  +
 1621   1487   
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
 1622   1488   
similarity index 100%
 1623   1489   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1624   1490   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1625   1491   
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
 1626   1492   
new file mode 100644
 1627   1493   
index 0000000..ce72510
 1628         -
-- /dev/null
        1494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1629   1495   
@@ -0,0 +1,7 @@
        1496  +
GET
        1497  +
/example/
        1498  +
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
        1499  +
host:example.amazonaws.com
        1500  +
        1501  +
host
        1502  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1630   1503   
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
 1631   1504   
new file mode 100644
 1632   1505   
index 0000000..265f387
 1633         -
-- /dev/null
        1506  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1634   1507   
@@ -0,0 +1 @@
        1508  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1635   1509   
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
 1636   1510   
new file mode 100644
 1637   1511   
index 0000000..e1fcb2e
 1638         -
-- /dev/null
        1512  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1639   1513   
@@ -0,0 +1,3 @@
        1514  +
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
        1515  +
Host:example.amazonaws.com
        1516  +
 1640   1517   
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
 1641   1518   
new file mode 100644
 1642   1519   
index 0000000..a14de61
 1643         -
-- /dev/null
        1520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1644   1521   
@@ -0,0 +1,4 @@
        1522  +
AWS4-HMAC-SHA256
        1523  +
20150830T123600Z
        1524  +
20150830/us-east-1/service/aws4_request
        1525  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1645   1526   
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
 1646   1527   
similarity index 100%
 1647   1528   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1648   1529   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1649   1530   
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
 1650   1531   
new file mode 100644
 1651   1532   
index 0000000..7bee5c7
 1652         -
-- /dev/null
        1533  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1653   1534   
@@ -0,0 +1,12 @@
        1535  +
{
        1536  +
    "credentials": {
        1537  +
        "access_key_id": "AKIDEXAMPLE",
        1538  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1539  +
    },
        1540  +
    "expiration_in_seconds": 3600,
        1541  +
    "normalize": false,
        1542  +
    "region": "us-east-1",
        1543  +
    "service": "service",
        1544  +
    "sign_body": false,
        1545  +
    "timestamp": "2015-08-30T12:36:00Z"
        1546  +
}
              \
 No newline at end of file
 1654   1547   
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
 1655   1548   
new file mode 100644
 1656   1549   
index 0000000..dfffaaf
 1657         -
-- /dev/null
        1550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1658   1551   
@@ -0,0 +1,8 @@
        1552  +
GET
        1553  +
//example//
        1554  +
        1555  +
host:example.amazonaws.com
        1556  +
x-amz-date:20150830T123600Z
        1557  +
        1558  +
host;x-amz-date
        1559  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1659   1560   
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
 1660   1561   
new file mode 100644
 1661   1562   
index 0000000..edbcc0d
 1662         -
-- /dev/null
        1563  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1663   1564   
@@ -0,0 +1 @@
        1565  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1664   1566   
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
 1665   1567   
new file mode 100644
 1666   1568   
index 0000000..4cc12dd
 1667         -
-- /dev/null
        1569  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 1668   1570   
@@ -0,0 +1,5 @@
        1571  +
GET //example// HTTP/1.1
        1572  +
Host:example.amazonaws.com
        1573  +
X-Amz-Date:20150830T123600Z
        1574  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1575  +
 1669   1576   
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
 1670   1577   
new file mode 100644
 1671   1578   
index 0000000..3eba390
 1672         -
-- /dev/null
        1579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 1673   1580   
@@ -0,0 +1,4 @@
        1581  +
AWS4-HMAC-SHA256
        1582  +
20150830T123600Z
        1583  +
20150830/us-east-1/service/aws4_request
        1584  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 1674   1585   
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
 1675   1586   
new file mode 100644
 1676   1587   
index 0000000..f7844e3
 1677         -
-- /dev/null
        1588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 1678   1589   
@@ -0,0 +1,7 @@
        1590  +
GET
        1591  +
//example//
        1592  +
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
        1593  +
host:example.amazonaws.com
        1594  +
        1595  +
host
        1596  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1679   1597   
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
 1680   1598   
new file mode 100644
 1681   1599   
index 0000000..a8d6b96
 1682         -
-- /dev/null
        1600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 1683   1601   
@@ -0,0 +1 @@
        1602  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 1684   1603   
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
 1685   1604   
new file mode 100644
 1686   1605   
index 0000000..a8322c6
 1687         -
-- /dev/null
        1606  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 1688   1607   
@@ -0,0 +1,3 @@
        1608  +
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
        1609  +
Host:example.amazonaws.com
        1610  +
 1689   1611   
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
 1690   1612   
new file mode 100644
 1691   1613   
index 0000000..068724d
 1692         -
-- /dev/null
        1614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 1693   1615   
@@ -0,0 +1,4 @@
        1616  +
AWS4-HMAC-SHA256
        1617  +
20150830T123600Z
        1618  +
20150830/us-east-1/service/aws4_request
        1619  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 1694   1620   
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
 1695   1621   
similarity index 100%
 1696   1622   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 1697   1623   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 1698   1624   
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
 1699   1625   
new file mode 100644
 1700   1626   
index 0000000..0468d80
 1701         -
-- /dev/null
        1627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 1702   1628   
@@ -0,0 +1,12 @@
        1629  +
{
        1630  +
    "credentials": {
        1631  +
        "access_key_id": "AKIDEXAMPLE",
        1632  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1633  +
    },
        1634  +
    "expiration_in_seconds": 3600,
        1635  +
    "normalize": true,
        1636  +
    "region": "us-east-1",
        1637  +
    "service": "service",
        1638  +
    "sign_body": false,
        1639  +
    "timestamp": "2015-08-30T12:36:00Z"
        1640  +
}
              \
 No newline at end of file
 1703   1641   
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
 1704   1642   
similarity index 100%
 1705   1643   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 1706   1644   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 1707   1645   
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
 1708   1646   
new file mode 100644
 1709   1647   
index 0000000..f63892b
 1710         -
-- /dev/null
        1648  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 1711   1649   
@@ -0,0 +1 @@
        1650  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1712   1651   
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
 1713   1652   
new file mode 100644
 1714   1653   
index 0000000..19cd5cb
 1715         -
-- /dev/null
        1654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 1716   1655   
@@ -0,0 +1,5 @@
        1656  +
GET /example space/ HTTP/1.1
        1657  +
Host:example.amazonaws.com
        1658  +
X-Amz-Date:20150830T123600Z
        1659  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1660  +
 1717   1661   
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
 1718   1662   
similarity index 100%
 1719   1663   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 1720   1664   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 1721   1665   
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
 1722   1666   
new file mode 100644
 1723   1667   
index 0000000..fa3d3e2
 1724         -
-- /dev/null
        1668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 1725   1669   
@@ -0,0 +1,7 @@
        1670  +
GET
        1671  +
/example%20space/
        1672  +
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
        1673  +
host:example.amazonaws.com
        1674  +
        1675  +
host
        1676  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1726   1677   
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
 1727   1678   
new file mode 100644
 1728   1679   
index 0000000..5b2e204
 1729         -
-- /dev/null
        1680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 1730   1681   
@@ -0,0 +1 @@
        1682  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1731   1683   
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
 1732   1684   
new file mode 100644
 1733   1685   
index 0000000..93ca1d0
 1734         -
-- /dev/null
        1686  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 1735   1687   
@@ -0,0 +1,3 @@
        1688  +
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
        1689  +
Host:example.amazonaws.com
        1690  +
 1736   1691   
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
 1737   1692   
new file mode 100644
 1738   1693   
index 0000000..b4cb789
 1739         -
-- /dev/null
        1694  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 1740   1695   
@@ -0,0 +1,4 @@
        1696  +
AWS4-HMAC-SHA256
        1697  +
20150830T123600Z
        1698  +
20150830/us-east-1/service/aws4_request
        1699  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1741   1700   
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
 1742   1701   
new file mode 100644
 1743   1702   
index 0000000..860a277
 1744         -
-- /dev/null
        1703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 1745   1704   
@@ -0,0 +1,2 @@
        1705  +
GET /example%20space/ HTTP/1.1
        1706  +
Host:example.amazonaws.com
 1746   1707   
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
 1747   1708   
new file mode 100644
 1748   1709   
index 0000000..7bee5c7
 1749         -
-- /dev/null
        1710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 1750   1711   
@@ -0,0 +1,12 @@
        1712  +
{
        1713  +
    "credentials": {
        1714  +
        "access_key_id": "AKIDEXAMPLE",
        1715  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1716  +
    },
        1717  +
    "expiration_in_seconds": 3600,
        1718  +
    "normalize": false,
        1719  +
    "region": "us-east-1",
        1720  +
    "service": "service",
        1721  +
    "sign_body": false,
        1722  +
    "timestamp": "2015-08-30T12:36:00Z"
        1723  +
}
              \
 No newline at end of file
 1751   1724   
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
 1752   1725   
similarity index 66%
 1753   1726   
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
 1754   1727   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1755   1728   
index 71dc981..124a709 100644
 1756         -
-- 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
        1729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1757   1730   
@@ -1,9 +1,8 @@
 1758         -
POST
 1759         -
/
        1731  +
GET
        1732  +
/example%20space/
 1760   1733   
 1761         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 1762   1734   
host:example.amazonaws.com
 1763   1735   
x-amz-date:20150830T123600Z
 1764   1736   
 1765   1737   
host;x-amz-date
 1766   1738   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1767   1739   
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
 1768   1740   
new file mode 100644
 1769   1741   
index 0000000..f63892b
 1770         -
-- /dev/null
        1742  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 1771   1743   
@@ -0,0 +1 @@
        1744  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1772   1745   
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
 1773   1746   
new file mode 100644
 1774   1747   
index 0000000..19cd5cb
 1775         -
-- /dev/null
        1748  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 1776   1749   
@@ -0,0 +1,5 @@
        1750  +
GET /example space/ HTTP/1.1
        1751  +
Host:example.amazonaws.com
        1752  +
X-Amz-Date:20150830T123600Z
        1753  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1754  +
 1777   1755   
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
 1778   1756   
new file mode 100644
 1779   1757   
index 0000000..a633f0c
 1780         -
-- /dev/null
        1758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 1781   1759   
@@ -0,0 +1,4 @@
        1760  +
AWS4-HMAC-SHA256
        1761  +
20150830T123600Z
        1762  +
20150830/us-east-1/service/aws4_request
        1763  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 1782   1764   
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
 1783   1765   
new file mode 100644
 1784   1766   
index 0000000..fa3d3e2
 1785         -
-- /dev/null
        1767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 1786   1768   
@@ -0,0 +1,7 @@
        1769  +
GET
        1770  +
/example%20space/
        1771  +
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
        1772  +
host:example.amazonaws.com
        1773  +
        1774  +
host
        1775  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1787   1776   
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
 1788   1777   
new file mode 100644
 1789   1778   
index 0000000..5b2e204
 1790         -
-- /dev/null
        1779  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 1791   1780   
@@ -0,0 +1 @@
        1781  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1792   1782   
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
 1793   1783   
new file mode 100644
 1794   1784   
index 0000000..93ca1d0
 1795         -
-- /dev/null
        1785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 1796   1786   
@@ -0,0 +1,3 @@
        1787  +
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
        1788  +
Host:example.amazonaws.com
        1789  +
 1797   1790   
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
 1798   1791   
new file mode 100644
 1799   1792   
index 0000000..b4cb789
 1800         -
-- /dev/null
        1793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 1801   1794   
@@ -0,0 +1,4 @@
        1795  +
AWS4-HMAC-SHA256
        1796  +
20150830T123600Z
        1797  +
20150830/us-east-1/service/aws4_request
        1798  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1802   1799   
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
 1803   1800   
similarity index 67%
 1804   1801   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 1805   1802   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1806   1803   
index b7d5e8b..ab509ab 100644
 1807         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        1804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1808   1805   
@@ -1,3 +1,2 @@
 1809   1806   
GET /example space/ HTTP/1.1
 1810   1807   
Host:example.amazonaws.com
 1811         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1812   1808   
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
 1813   1809   
new file mode 100644
 1814   1810   
index 0000000..0468d80
 1815         -
-- /dev/null
        1811  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 1816   1812   
@@ -0,0 +1,12 @@
        1813  +
{
        1814  +
    "credentials": {
        1815  +
        "access_key_id": "AKIDEXAMPLE",
        1816  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1817  +
    },
        1818  +
    "expiration_in_seconds": 3600,
        1819  +
    "normalize": true,
        1820  +
    "region": "us-east-1",
        1821  +
    "service": "service",
        1822  +
    "sign_body": false,
        1823  +
    "timestamp": "2015-08-30T12:36:00Z"
        1824  +
}
              \
 No newline at end of file
 1817   1825   
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
 1818   1826   
similarity index 100%
 1819   1827   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 1820   1828   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 1821   1829   
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
 1822   1830   
new file mode 100644
 1823   1831   
index 0000000..e503354
 1824         -
-- /dev/null
        1832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 1825   1833   
@@ -0,0 +1 @@
        1834  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 1826   1835   
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
 1827   1836   
new file mode 100644
 1828   1837   
index 0000000..4367892
 1829         -
-- /dev/null
        1838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 1830   1839   
@@ -0,0 +1,5 @@
        1840  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        1841  +
Host:example.amazonaws.com
        1842  +
X-Amz-Date:20150830T123600Z
        1843  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        1844  +
 1831   1845   
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
 1832   1846   
similarity index 100%
 1833   1847   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 1834   1848   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 1835   1849   
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
 1836   1850   
new file mode 100644
 1837   1851   
index 0000000..d7f0696
 1838         -
-- /dev/null
        1852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 1839   1853   
@@ -0,0 +1,7 @@
        1854  +
GET
        1855  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        1856  +
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
        1857  +
host:example.amazonaws.com
        1858  +
        1859  +
host
        1860  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1840   1861   
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
 1841   1862   
new file mode 100644
 1842   1863   
index 0000000..509e972
 1843         -
-- /dev/null
        1864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 1844   1865   
@@ -0,0 +1 @@
        1866  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 1845   1867   
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
 1846   1868   
new file mode 100644
 1847   1869   
index 0000000..79aad36
 1848         -
-- /dev/null
        1870  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 1849   1871   
@@ -0,0 +1,3 @@
        1872  +
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
        1873  +
Host:example.amazonaws.com
        1874  +
 1850   1875   
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
 1851   1876   
new file mode 100644
 1852   1877   
index 0000000..e8068b3
 1853         -
-- /dev/null
        1878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 1854   1879   
@@ -0,0 +1,4 @@
        1880  +
AWS4-HMAC-SHA256
        1881  +
20150830T123600Z
        1882  +
20150830/us-east-1/service/aws4_request
        1883  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 1855   1884   
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
 1856   1885   
similarity index 100%
 1857   1886   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 1858   1887   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 1859   1888   
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
 1860   1889   
new file mode 100644
 1861   1890   
index 0000000..0468d80
 1862         -
-- /dev/null
        1891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 1863   1892   
@@ -0,0 +1,12 @@
        1893  +
{
        1894  +
    "credentials": {
        1895  +
        "access_key_id": "AKIDEXAMPLE",
        1896  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1897  +
    },
        1898  +
    "expiration_in_seconds": 3600,
        1899  +
    "normalize": true,
        1900  +
    "region": "us-east-1",
        1901  +
    "service": "service",
        1902  +
    "sign_body": false,
        1903  +
    "timestamp": "2015-08-30T12:36:00Z"
        1904  +
}
              \
 No newline at end of file
 1864   1905   
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
 1865   1906   
similarity index 100%
 1866   1907   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 1867   1908   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 1868   1909   
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
 1869   1910   
new file mode 100644
 1870   1911   
index 0000000..9a13676
 1871         -
-- /dev/null
        1912  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 1872   1913   
@@ -0,0 +1 @@
        1914  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 1873   1915   
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
 1874   1916   
new file mode 100644
 1875   1917   
index 0000000..5aaf47c
 1876         -
-- /dev/null
        1918  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 1877   1919   
@@ -0,0 +1,5 @@
        1920  +
GET /ሴ HTTP/1.1
        1921  +
Host:example.amazonaws.com
        1922  +
X-Amz-Date:20150830T123600Z
        1923  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        1924  +
 1878   1925   
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
 1879   1926   
similarity index 100%
 1880   1927   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 1881   1928   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 1882   1929   
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
 1883   1930   
new file mode 100644
 1884   1931   
index 0000000..bdb77c9
 1885         -
-- /dev/null
        1932  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 1886   1933   
@@ -0,0 +1,7 @@
        1934  +
GET
        1935  +
/%E1%88%B4
        1936  +
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
        1937  +
host:example.amazonaws.com
        1938  +
        1939  +
host
        1940  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1887   1941   
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
 1888   1942   
new file mode 100644
 1889   1943   
index 0000000..21342b3
 1890         -
-- /dev/null
        1944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 1891   1945   
@@ -0,0 +1 @@
        1946  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 1892   1947   
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
 1893   1948   
new file mode 100644
 1894   1949   
index 0000000..368c2ff
 1895         -
-- /dev/null
        1950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 1896   1951   
@@ -0,0 +1,3 @@
        1952  +
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
        1953  +
Host:example.amazonaws.com
        1954  +
 1897   1955   
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
 1898   1956   
new file mode 100644
 1899   1957   
index 0000000..56b8fbf
 1900         -
-- /dev/null
        1958  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 1901   1959   
@@ -0,0 +1,4 @@
        1960  +
AWS4-HMAC-SHA256
        1961  +
20150830T123600Z
        1962  +
20150830/us-east-1/service/aws4_request
        1963  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 1902   1964   
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
 1903   1965   
similarity index 62%
 1904   1966   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 1905   1967   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 1906   1968   
index da4808d..9e273f6 100644
 1907         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        1969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 1908   1970   
@@ -1,3 +1,2 @@
 1909   1971   
GET /ሴ HTTP/1.1
 1910   1972   
Host:example.amazonaws.com
 1911         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1912   1973   
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
 1913   1974   
new file mode 100644
 1914   1975   
index 0000000..0468d80
 1915         -
-- /dev/null
        1976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 1916   1977   
@@ -0,0 +1,12 @@
        1978  +
{
        1979  +
    "credentials": {
        1980  +
        "access_key_id": "AKIDEXAMPLE",
        1981  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1982  +
    },
        1983  +
    "expiration_in_seconds": 3600,
        1984  +
    "normalize": true,
        1985  +
    "region": "us-east-1",
        1986  +
    "service": "service",
        1987  +
    "sign_body": false,
        1988  +
    "timestamp": "2015-08-30T12:36:00Z"
        1989  +
}
              \
 No newline at end of file
 1917   1990   
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
 1918   1991   
similarity index 100%
 1919   1992   
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
 1920   1993   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 1921   1994   
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
 1922   1995   
new file mode 100644
 1923   1996   
index 0000000..d7f1c1c
 1924         -
-- /dev/null
        1997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 1925   1998   
@@ -0,0 +1 @@
        1999  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 1926   2000   
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
 1927   2001   
new file mode 100644
 1928   2002   
index 0000000..1c60790
 1929         -
-- /dev/null
        2003  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 1930   2004   
@@ -0,0 +1,5 @@
        2005  +
GET /?Param1=value1 HTTP/1.1
        2006  +
Host:example.amazonaws.com
        2007  +
X-Amz-Date:20150830T123600Z
        2008  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2009  +
 1931   2010   
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
 1932   2011   
similarity index 100%
 1933   2012   
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
 1934   2013   
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
 1935   2014   
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
 1936   2015   
new file mode 100644
 1937   2016   
index 0000000..6a823ed
 1938         -
-- /dev/null
        2017  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 1939   2018   
@@ -0,0 +1,7 @@
        2019  +
GET
        2020  +
/
        2021  +
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
        2022  +
host:example.amazonaws.com
        2023  +
        2024  +
host
        2025  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1940   2026   
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
 1941   2027   
new file mode 100644
 1942   2028   
index 0000000..8c77136
 1943         -
-- /dev/null
        2029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 1944   2030   
@@ -0,0 +1 @@
        2031  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 1945   2032   
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
 1946   2033   
new file mode 100644
 1947   2034   
index 0000000..2d337d8
 1948         -
-- /dev/null
        2035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 1949   2036   
@@ -0,0 +1,3 @@
        2037  +
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
        2038  +
Host:example.amazonaws.com
        2039  +
 1950   2040   
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
 1951   2041   
new file mode 100644
 1952   2042   
index 0000000..191a484
 1953         -
-- /dev/null
        2043  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 1954   2044   
@@ -0,0 +1,4 @@
        2045  +
AWS4-HMAC-SHA256
        2046  +
20150830T123600Z
        2047  +
20150830/us-east-1/service/aws4_request
        2048  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 1955   2049   
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
 1956   2050   
similarity index 100%
 1957   2051   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 1958   2052   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 1959   2053   
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
 1960   2054   
new file mode 100644
 1961   2055   
index 0000000..0468d80
 1962         -
-- /dev/null
        2056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 1963   2057   
@@ -0,0 +1,12 @@
        2058  +
{
        2059  +
    "credentials": {
        2060  +
        "access_key_id": "AKIDEXAMPLE",
        2061  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2062  +
    },
        2063  +
    "expiration_in_seconds": 3600,
        2064  +
    "normalize": true,
        2065  +
    "region": "us-east-1",
        2066  +
    "service": "service",
        2067  +
    "sign_body": false,
        2068  +
    "timestamp": "2015-08-30T12:36:00Z"
        2069  +
}
              \
 No newline at end of file
 1964   2070   
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
 1965   2071   
new file mode 100644
 1966   2072   
index 0000000..0c8ba21
 1967         -
-- /dev/null
        2073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 1968   2074   
@@ -0,0 +1,8 @@
        2075  +
GET
        2076  +
/
        2077  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2078  +
host:example.amazonaws.com
        2079  +
x-amz-date:20150830T123600Z
        2080  +
        2081  +
host;x-amz-date
        2082  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1969   2083   
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
 1970   2084   
new file mode 100644
 1971   2085   
index 0000000..9ab65ed
 1972         -
-- /dev/null
        2086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 1973   2087   
@@ -0,0 +1 @@
        2088  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 1974   2089   
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
 1975   2090   
new file mode 100644
 1976   2091   
index 0000000..0bcdf98
 1977         -
-- /dev/null
        2092  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 1978   2093   
@@ -0,0 +1,5 @@
        2094  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2095  +
Host:example.amazonaws.com
        2096  +
X-Amz-Date:20150830T123600Z
        2097  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2098  +
 1979   2099   
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
 1980   2100   
new file mode 100644
 1981   2101   
index 0000000..bf674ad
 1982         -
-- /dev/null
        2102  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 1983   2103   
@@ -0,0 +1,4 @@
        2104  +
AWS4-HMAC-SHA256
        2105  +
20150830T123600Z
        2106  +
20150830/us-east-1/service/aws4_request
        2107  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 1984   2108   
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
 1985   2109   
new file mode 100644
 1986   2110   
index 0000000..3f590a4
 1987         -
-- /dev/null
        2111  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 1988   2112   
@@ -0,0 +1,7 @@
        2113  +
GET
        2114  +
/
        2115  +
%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
        2116  +
host:example.amazonaws.com
        2117  +
        2118  +
host
        2119  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1989   2120   
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
 1990   2121   
new file mode 100644
 1991   2122   
index 0000000..e225eab
 1992         -
-- /dev/null
        2123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 1993   2124   
@@ -0,0 +1 @@
        2125  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 1994   2126   
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
 1995   2127   
new file mode 100644
 1996   2128   
index 0000000..6206719
 1997         -
-- /dev/null
        2129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 1998   2130   
@@ -0,0 +1,3 @@
        2131  +
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
        2132  +
Host:example.amazonaws.com
        2133  +
 1999   2134   
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
 2000   2135   
new file mode 100644
 2001   2136   
index 0000000..81a4210
 2002         -
-- /dev/null
        2137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2003   2138   
@@ -0,0 +1,4 @@
        2139  +
AWS4-HMAC-SHA256
        2140  +
20150830T123600Z
        2141  +
20150830/us-east-1/service/aws4_request
        2142  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2004   2143   
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
 2005   2144   
new file mode 100644
 2006   2145   
index 0000000..368c6e3
 2007         -
-- /dev/null
        2146  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2008   2147   
@@ -0,0 +1,2 @@
        2148  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2149  +
Host:example.amazonaws.com
 2009   2150   
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
 2010   2151   
new file mode 100644
 2011   2152   
index 0000000..0468d80
 2012         -
-- /dev/null
        2153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2013   2154   
@@ -0,0 +1,12 @@
        2155  +
{
        2156  +
    "credentials": {
        2157  +
        "access_key_id": "AKIDEXAMPLE",
        2158  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2159  +
    },
        2160  +
    "expiration_in_seconds": 3600,
        2161  +
    "normalize": true,
        2162  +
    "region": "us-east-1",
        2163  +
    "service": "service",
        2164  +
    "sign_body": false,
        2165  +
    "timestamp": "2015-08-30T12:36:00Z"
        2166  +
}
              \
 No newline at end of file
 2014   2167   
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
 2015   2168   
similarity index 100%
 2016   2169   
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
 2017   2170   
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
 2018   2171   
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
 2019   2172   
new file mode 100644
 2020   2173   
index 0000000..6a8cb9d
 2021         -
-- /dev/null
        2174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2022   2175   
@@ -0,0 +1 @@
        2176  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2023   2177   
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
 2024   2178   
new file mode 100644
 2025   2179   
index 0000000..f78a9d2
 2026         -
-- /dev/null
        2180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2027   2181   
@@ -0,0 +1,5 @@
        2182  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2183  +
Host:example.amazonaws.com
        2184  +
X-Amz-Date:20150830T123600Z
        2185  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2186  +
 2028   2187   
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
 2029   2188   
similarity index 100%
 2030   2189   
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
 2031   2190   
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
 2032   2191   
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
 2033   2192   
new file mode 100644
 2034   2193   
index 0000000..a6e1bc7
 2035         -
-- /dev/null
        2194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2036   2195   
@@ -0,0 +1,7 @@
        2196  +
GET
        2197  +
/
        2198  +
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
        2199  +
host:example.amazonaws.com
        2200  +
        2201  +
host
        2202  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2037   2203   
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
 2038   2204   
new file mode 100644
 2039   2205   
index 0000000..d6e6a88
 2040         -
-- /dev/null
        2206  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2041   2207   
@@ -0,0 +1 @@
        2208  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2042   2209   
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
 2043   2210   
new file mode 100644
 2044   2211   
index 0000000..538e2f0
 2045         -
-- /dev/null
        2212  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2046   2213   
@@ -0,0 +1,3 @@
        2214  +
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
        2215  +
Host:example.amazonaws.com
        2216  +
 2047   2217   
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
 2048   2218   
new file mode 100644
 2049   2219   
index 0000000..e696085
 2050         -
-- /dev/null
        2220  +
++ 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
 2051   2221   
@@ -0,0 +1,4 @@
        2222  +
AWS4-HMAC-SHA256
        2223  +
20150830T123600Z
        2224  +
20150830/us-east-1/service/aws4_request
        2225  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2052   2226   
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
 2053   2227   
similarity index 100%
 2054   2228   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2055   2229   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2056   2230   
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
 2057   2231   
new file mode 100644
 2058   2232   
index 0000000..0468d80
 2059         -
-- /dev/null
        2233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2060   2234   
@@ -0,0 +1,12 @@
        2235  +
{
        2236  +
    "credentials": {
        2237  +
        "access_key_id": "AKIDEXAMPLE",
        2238  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2239  +
    },
        2240  +
    "expiration_in_seconds": 3600,
        2241  +
    "normalize": true,
        2242  +
    "region": "us-east-1",
        2243  +
    "service": "service",
        2244  +
    "sign_body": false,
        2245  +
    "timestamp": "2015-08-30T12:36:00Z"
        2246  +
}
              \
 No newline at end of file
 2061   2247   
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
 2062   2248   
similarity index 100%
 2063   2249   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2064   2250   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2065   2251   
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
 2066   2252   
new file mode 100644
 2067   2253   
index 0000000..876a64b
 2068         -
-- /dev/null
        2254  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2069   2255   
@@ -0,0 +1 @@
        2256  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2070   2257   
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
 2071   2258   
similarity index 50%
 2072   2259   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2073   2260   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2074   2261   
index ba1ef40..9d0d993 100644
 2075         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2076   2263   
@@ -1,4 +1,5 @@
 2077   2264   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2078   2265   
Host:example.amazonaws.com
 2079   2266   
X-Amz-Date:20150830T123600Z
 2080         -
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
        2267  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2268  +
 2081   2269   
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
 2082   2270   
similarity index 100%
 2083   2271   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2084   2272   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2085   2273   
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
 2086   2274   
new file mode 100644
 2087   2275   
index 0000000..a1bac59
 2088         -
-- /dev/null
        2276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2089   2277   
@@ -0,0 +1,7 @@
        2278  +
GET
        2279  +
/
        2280  +
-._~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
        2281  +
host:example.amazonaws.com
        2282  +
        2283  +
host
        2284  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2090   2285   
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
 2091   2286   
new file mode 100644
 2092   2287   
index 0000000..41881e9
 2093         -
-- /dev/null
        2288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2094   2289   
@@ -0,0 +1 @@
        2290  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2095   2291   
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
 2096   2292   
new file mode 100644
 2097   2293   
index 0000000..3179076
 2098         -
-- /dev/null
        2294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2099   2295   
@@ -0,0 +1,3 @@
        2296  +
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
        2297  +
Host:example.amazonaws.com
        2298  +
 2100   2299   
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
 2101   2300   
new file mode 100644
 2102   2301   
index 0000000..6d675fc
 2103         -
-- /dev/null
        2302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2104   2303   
@@ -0,0 +1,4 @@
        2304  +
AWS4-HMAC-SHA256
        2305  +
20150830T123600Z
        2306  +
20150830/us-east-1/service/aws4_request
        2307  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2105   2308   
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
 2106   2309   
similarity index 100%
 2107   2310   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2108   2311   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2109   2312   
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
 2110   2313   
new file mode 100644
 2111   2314   
index 0000000..0468d80
 2112         -
-- /dev/null
        2315  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2113   2316   
@@ -0,0 +1,12 @@
        2317  +
{
        2318  +
    "credentials": {
        2319  +
        "access_key_id": "AKIDEXAMPLE",
        2320  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2321  +
    },
        2322  +
    "expiration_in_seconds": 3600,
        2323  +
    "normalize": true,
        2324  +
    "region": "us-east-1",
        2325  +
    "service": "service",
        2326  +
    "sign_body": false,
        2327  +
    "timestamp": "2015-08-30T12:36:00Z"
        2328  +
}
              \
 No newline at end of file
 2114   2329   
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
 2115   2330   
similarity index 100%
 2116   2331   
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
 2117   2332   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2118   2333   
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
 2119   2334   
new file mode 100644
 2120   2335   
index 0000000..87f295f
 2121         -
-- /dev/null
        2336  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2122   2337   
@@ -0,0 +1 @@
        2338  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2123   2339   
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
 2124   2340   
new file mode 100644
 2125   2341   
index 0000000..36b86e7
 2126         -
-- /dev/null
        2342  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2127   2343   
@@ -0,0 +1,5 @@
        2344  +
GET / HTTP/1.1
        2345  +
Host:example.amazonaws.com
        2346  +
X-Amz-Date:20150830T123600Z
        2347  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2348  +
 2128   2349   
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
 2129   2350   
similarity index 100%
 2130   2351   
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
 2131   2352   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2132   2353   
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
 2133   2354   
new file mode 100644
 2134   2355   
index 0000000..fb2420d
 2135         -
-- /dev/null
        2356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2136   2357   
@@ -0,0 +1,7 @@
        2358  +
GET
        2359  +
/
        2360  +
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
        2361  +
host:example.amazonaws.com
        2362  +
        2363  +
host
        2364  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2137   2365   
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
 2138   2366   
new file mode 100644
 2139   2367   
index 0000000..da5c905
 2140         -
-- /dev/null
        2368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2141   2369   
@@ -0,0 +1 @@
        2370  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2142   2371   
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
 2143   2372   
new file mode 100644
 2144   2373   
index 0000000..eeb7a8f
 2145         -
-- /dev/null
        2374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2146   2375   
@@ -0,0 +1,3 @@
        2376  +
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
        2377  +
Host:example.amazonaws.com
        2378  +
 2147   2379   
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
 2148   2380   
new file mode 100644
 2149   2381   
index 0000000..d837e67
 2150         -
-- /dev/null
        2382  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2151   2383   
@@ -0,0 +1,4 @@
        2384  +
AWS4-HMAC-SHA256
        2385  +
20150830T123600Z
        2386  +
20150830/us-east-1/service/aws4_request
        2387  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2152   2388   
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
 2153   2389   
similarity index 100%
 2154   2390   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2155   2391   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2156   2392   
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
 2157   2393   
new file mode 100644
 2158   2394   
index 0000000..0468d80
 2159         -
-- /dev/null
        2395  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2160   2396   
@@ -0,0 +1,12 @@
        2397  +
{
        2398  +
    "credentials": {
        2399  +
        "access_key_id": "AKIDEXAMPLE",
        2400  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2401  +
    },
        2402  +
    "expiration_in_seconds": 3600,
        2403  +
    "normalize": true,
        2404  +
    "region": "us-east-1",
        2405  +
    "service": "service",
        2406  +
    "sign_body": false,
        2407  +
    "timestamp": "2015-08-30T12:36:00Z"
        2408  +
}
              \
 No newline at end of file
 2161   2409   
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
 2162   2410   
similarity index 100%
 2163   2411   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2164   2412   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2165   2413   
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
 2166   2414   
new file mode 100644
 2167   2415   
index 0000000..19a2cc9
 2168         -
-- /dev/null
        2416  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2169   2417   
@@ -0,0 +1 @@
        2418  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2170   2419   
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
 2171   2420   
new file mode 100644
 2172   2421   
index 0000000..acb13ee
 2173         -
-- /dev/null
        2422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2174   2423   
@@ -0,0 +1,5 @@
        2424  +
GET /?ሴ=bar HTTP/1.1
        2425  +
Host:example.amazonaws.com
        2426  +
X-Amz-Date:20150830T123600Z
        2427  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2428  +
 2175   2429   
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
 2176   2430   
similarity index 100%
 2177   2431   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2178   2432   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2179   2433   
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
 2180   2434   
new file mode 100644
 2181   2435   
index 0000000..92cee62
 2182         -
-- /dev/null
        2436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2183   2437   
@@ -0,0 +1,7 @@
        2438  +
GET
        2439  +
/
        2440  +
%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
        2441  +
host:example.amazonaws.com
        2442  +
        2443  +
host
        2444  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2184   2445   
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
 2185   2446   
new file mode 100644
 2186   2447   
index 0000000..c9e49de
 2187         -
-- /dev/null
        2448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2188   2449   
@@ -0,0 +1 @@
        2450  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2189   2451   
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
 2190   2452   
new file mode 100644
 2191   2453   
index 0000000..8f4d8d0
 2192         -
-- /dev/null
        2454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2193   2455   
@@ -0,0 +1,3 @@
        2456  +
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
        2457  +
Host:example.amazonaws.com
        2458  +
 2194   2459   
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
 2195   2460   
new file mode 100644
 2196   2461   
index 0000000..a6181dc
 2197         -
-- /dev/null
        2462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2198   2463   
@@ -0,0 +1,4 @@
        2464  +
AWS4-HMAC-SHA256
        2465  +
20150830T123600Z
        2466  +
20150830/us-east-1/service/aws4_request
        2467  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2199   2468   
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
 2200   2469   
similarity index 64%
 2201   2470   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2202   2471   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2203   2472   
index cc2757e..aff333a 100644
 2204         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2473  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2205   2474   
@@ -1,3 +1,2 @@
 2206   2475   
GET /?ሴ=bar HTTP/1.1
 2207   2476   
Host:example.amazonaws.com
 2208         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2209   2477   
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
 2210   2478   
similarity index 99%
 2211   2479   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2212   2480   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2213   2481   
index a457c8a..a334e18 100644
 2214   2482   
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
 2215   2483   
new file mode 100644
 2216   2484   
index 0000000..ccacdeb
 2217         -
-- /dev/null
        2485  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2218   2486   
@@ -0,0 +1,9 @@
        2487  +
GET
        2488  +
/
        2489  +
        2490  +
host:example.amazonaws.com
        2491  +
x-amz-date:20150830T123600Z
        2492  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2493  +
        2494  +
host;x-amz-date;x-amz-security-token
        2495  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2219   2496   
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
 2220   2497   
new file mode 100644
 2221   2498   
index 0000000..083e30d
 2222         -
-- /dev/null
        2499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2223   2500   
@@ -0,0 +1 @@
        2501  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2224   2502   
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
 2225   2503   
new file mode 100644
 2226   2504   
index 0000000..5287932
 2227         -
-- /dev/null
        2505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2228   2506   
@@ -0,0 +1,6 @@
        2507  +
GET / HTTP/1.1
        2508  +
Host:example.amazonaws.com
        2509  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2510  +
X-Amz-Date:20150830T123600Z
        2511  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2512  +
 2229   2513   
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
 2230   2514   
new file mode 100644
 2231   2515   
index 0000000..742b880
 2232         -
-- /dev/null
        2516  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2233   2517   
@@ -0,0 +1,4 @@
        2518  +
AWS4-HMAC-SHA256
        2519  +
20150830T123600Z
        2520  +
20150830/us-east-1/service/aws4_request
        2521  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2234   2522   
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
 2235   2523   
new file mode 100644
 2236   2524   
index 0000000..5e75179
 2237         -
-- /dev/null
        2525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2238   2526   
@@ -0,0 +1,7 @@
        2527  +
GET
        2528  +
/
        2529  +
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
        2530  +
host:example.amazonaws.com
        2531  +
        2532  +
host
        2533  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2239   2534   
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
 2240   2535   
new file mode 100644
 2241   2536   
index 0000000..50b947f
 2242         -
-- /dev/null
        2537  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2243   2538   
@@ -0,0 +1 @@
        2539  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2244   2540   
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
 2245   2541   
new file mode 100644
 2246   2542   
index 0000000..aee910b
 2247         -
-- /dev/null
        2543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2248   2544   
@@ -0,0 +1,3 @@
        2545  +
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
        2546  +
Host:example.amazonaws.com
        2547  +
 2249   2548   
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
 2250   2549   
new file mode 100644
 2251   2550   
index 0000000..04a6c17
 2252         -
-- /dev/null
        2551  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2253   2552   
@@ -0,0 +1,4 @@
        2553  +
AWS4-HMAC-SHA256
        2554  +
20150830T123600Z
        2555  +
20150830/us-east-1/service/aws4_request
        2556  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2254   2557   
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
 2255   2558   
similarity index 100%
 2256   2559   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2257   2560   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2258   2561   
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
 2259   2562   
new file mode 100644
 2260   2563   
index 0000000..0468d80
 2261         -
-- /dev/null
        2564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2262   2565   
@@ -0,0 +1,12 @@
        2566  +
{
        2567  +
    "credentials": {
        2568  +
        "access_key_id": "AKIDEXAMPLE",
        2569  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2570  +
    },
        2571  +
    "expiration_in_seconds": 3600,
        2572  +
    "normalize": true,
        2573  +
    "region": "us-east-1",
        2574  +
    "service": "service",
        2575  +
    "sign_body": false,
        2576  +
    "timestamp": "2015-08-30T12:36:00Z"
        2577  +
}
              \
 No newline at end of file
 2263   2578   
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
 2264   2579   
similarity index 100%
 2265   2580   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2266   2581   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2267   2582   
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
 2268   2583   
new file mode 100644
 2269   2584   
index 0000000..87f295f
 2270         -
-- /dev/null
        2585  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2271   2586   
@@ -0,0 +1 @@
        2587  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2272   2588   
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
 2273   2589   
new file mode 100644
 2274   2590   
index 0000000..36b86e7
 2275         -
-- /dev/null
        2591  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2276   2592   
@@ -0,0 +1,5 @@
        2593  +
GET / HTTP/1.1
        2594  +
Host:example.amazonaws.com
        2595  +
X-Amz-Date:20150830T123600Z
        2596  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2597  +
 2277   2598   
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
 2278   2599   
similarity index 100%
 2279   2600   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2280   2601   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2281   2602   
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
 2282   2603   
new file mode 100644
 2283   2604   
index 0000000..fb2420d
 2284         -
-- /dev/null
        2605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2285   2606   
@@ -0,0 +1,7 @@
        2607  +
GET
        2608  +
/
        2609  +
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
        2610  +
host:example.amazonaws.com
        2611  +
        2612  +
host
        2613  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2286   2614   
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
 2287   2615   
new file mode 100644
 2288   2616   
index 0000000..da5c905
 2289         -
-- /dev/null
        2617  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2290   2618   
@@ -0,0 +1 @@
        2619  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2291   2620   
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
 2292   2621   
new file mode 100644
 2293   2622   
index 0000000..eeb7a8f
 2294         -
-- /dev/null
        2623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2295   2624   
@@ -0,0 +1,3 @@
        2625  +
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
        2626  +
Host:example.amazonaws.com
        2627  +
 2296   2628   
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
 2297   2629   
new file mode 100644
 2298   2630   
index 0000000..d837e67
 2299         -
-- /dev/null
        2631  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2300   2632   
@@ -0,0 +1,4 @@
        2633  +
AWS4-HMAC-SHA256
        2634  +
20150830T123600Z
        2635  +
20150830/us-east-1/service/aws4_request
        2636  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2301   2637   
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
 2302   2638   
similarity index 100%
 2303   2639   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2304   2640   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2305   2641   
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
 2306   2642   
new file mode 100644
 2307   2643   
index 0000000..0468d80
 2308         -
-- /dev/null
        2644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2309   2645   
@@ -0,0 +1,12 @@
        2646  +
{
        2647  +
    "credentials": {
        2648  +
        "access_key_id": "AKIDEXAMPLE",
        2649  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2650  +
    },
        2651  +
    "expiration_in_seconds": 3600,
        2652  +
    "normalize": true,
        2653  +
    "region": "us-east-1",
        2654  +
    "service": "service",
        2655  +
    "sign_body": false,
        2656  +
    "timestamp": "2015-08-30T12:36:00Z"
        2657  +
}
              \
 No newline at end of file
 2310   2658   
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
 2311   2659   
similarity index 100%
 2312   2660   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2313   2661   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2314   2662   
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
 2315   2663   
new file mode 100644
 2316   2664   
index 0000000..629487f
 2317         -
-- /dev/null
        2665  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2318   2666   
@@ -0,0 +1 @@
        2667  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2319   2668   
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
 2320   2669   
new file mode 100644
 2321   2670   
index 0000000..0d99b1c
 2322         -
-- /dev/null
        2671  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2323   2672   
@@ -0,0 +1,5 @@
        2673  +
POST / HTTP/1.1
        2674  +
Host:example.amazonaws.com
        2675  +
X-Amz-Date:20150830T123600Z
        2676  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2677  +
 2324   2678   
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
 2325   2679   
similarity index 100%
 2326   2680   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2327   2681   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2328   2682   
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
 2329   2683   
new file mode 100644
 2330   2684   
index 0000000..d3341e7
 2331         -
-- /dev/null
        2685  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2332   2686   
@@ -0,0 +1,7 @@
        2687  +
POST
        2688  +
/
        2689  +
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
        2690  +
host:example.amazonaws.com
        2691  +
        2692  +
host
        2693  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2333   2694   
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
 2334   2695   
new file mode 100644
 2335   2696   
index 0000000..79f7e0d
 2336         -
-- /dev/null
        2697  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2337   2698   
@@ -0,0 +1 @@
        2699  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2338   2700   
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
 2339   2701   
new file mode 100644
 2340   2702   
index 0000000..94f1b21
 2341         -
-- /dev/null
        2703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2342   2704   
@@ -0,0 +1,3 @@
        2705  +
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
        2706  +
Host:example.amazonaws.com
        2707  +
 2343   2708   
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
 2344   2709   
new file mode 100644
 2345   2710   
index 0000000..e8f335b
 2346         -
-- /dev/null
        2711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2347   2712   
@@ -0,0 +1,4 @@
        2713  +
AWS4-HMAC-SHA256
        2714  +
20150830T123600Z
        2715  +
20150830/us-east-1/service/aws4_request
        2716  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2348   2717   
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
 2349   2718   
similarity index 100%
 2350   2719   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2351   2720   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2352   2721   
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
 2353   2722   
new file mode 100644
 2354   2723   
index 0000000..0468d80
 2355         -
-- /dev/null
        2724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2356   2725   
@@ -0,0 +1,12 @@
        2726  +
{
        2727  +
    "credentials": {
        2728  +
        "access_key_id": "AKIDEXAMPLE",
        2729  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2730  +
    },
        2731  +
    "expiration_in_seconds": 3600,
        2732  +
    "normalize": true,
        2733  +
    "region": "us-east-1",
        2734  +
    "service": "service",
        2735  +
    "sign_body": false,
        2736  +
    "timestamp": "2015-08-30T12:36:00Z"
        2737  +
}
              \
 No newline at end of file
 2357   2738   
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
 2358   2739   
similarity index 100%
 2359   2740   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2360   2741   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2361   2742   
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
 2362   2743   
new file mode 100644
 2363   2744   
index 0000000..e4e6428
 2364         -
-- /dev/null
        2745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2365   2746   
@@ -0,0 +1 @@
        2747  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2366   2748   
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
 2367   2749   
new file mode 100644
 2368   2750   
index 0000000..e3778f5
 2369         -
-- /dev/null
        2751  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2370   2752   
@@ -0,0 +1,6 @@
        2753  +
POST / HTTP/1.1
        2754  +
Host:example.amazonaws.com
        2755  +
My-Header1:value1
        2756  +
X-Amz-Date:20150830T123600Z
        2757  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2758  +
 2371   2759   
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
 2372   2760   
similarity index 100%
 2373   2761   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2374   2762   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2375   2763   
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
 2376   2764   
new file mode 100644
 2377   2765   
index 0000000..bd7c937
 2378         -
-- /dev/null
        2766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2379   2767   
@@ -0,0 +1,8 @@
        2768  +
POST
        2769  +
/
        2770  +
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
        2771  +
host:example.amazonaws.com
        2772  +
my-header1:value1
        2773  +
        2774  +
host;my-header1
        2775  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2380   2776   
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
 2381   2777   
new file mode 100644
 2382   2778   
index 0000000..0416f13
 2383         -
-- /dev/null
        2779  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2384   2780   
@@ -0,0 +1 @@
        2781  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2385   2782   
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
 2386   2783   
new file mode 100644
 2387   2784   
index 0000000..5e6522f
 2388         -
-- /dev/null
        2785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2389   2786   
@@ -0,0 +1,4 @@
        2787  +
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
        2788  +
Host:example.amazonaws.com
        2789  +
My-Header1:value1
        2790  +
 2390   2791   
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
 2391   2792   
new file mode 100644
 2392   2793   
index 0000000..d06d1df
 2393         -
-- /dev/null
        2794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2394   2795   
@@ -0,0 +1,4 @@
        2796  +
AWS4-HMAC-SHA256
        2797  +
20150830T123600Z
        2798  +
20150830/us-east-1/service/aws4_request
        2799  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2395   2800   
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
 2396   2801   
similarity index 100%
 2397   2802   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2398   2803   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2399   2804   
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
 2400   2805   
new file mode 100644
 2401   2806   
index 0000000..0468d80
 2402         -
-- /dev/null
        2807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2403   2808   
@@ -0,0 +1,12 @@
        2809  +
{
        2810  +
    "credentials": {
        2811  +
        "access_key_id": "AKIDEXAMPLE",
        2812  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2813  +
    },
        2814  +
    "expiration_in_seconds": 3600,
        2815  +
    "normalize": true,
        2816  +
    "region": "us-east-1",
        2817  +
    "service": "service",
        2818  +
    "sign_body": false,
        2819  +
    "timestamp": "2015-08-30T12:36:00Z"
        2820  +
}
              \
 No newline at end of file
 2404   2821   
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
 2405   2822   
similarity index 100%
 2406   2823   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2407   2824   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2408   2825   
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
 2409   2826   
new file mode 100644
 2410   2827   
index 0000000..bb3809c
 2411         -
-- /dev/null
        2828  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2412   2829   
@@ -0,0 +1 @@
        2830  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2413   2831   
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
 2414   2832   
new file mode 100644
 2415   2833   
index 0000000..10f6761
 2416         -
-- /dev/null
        2834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2417   2835   
@@ -0,0 +1,6 @@
        2836  +
POST / HTTP/1.1
        2837  +
Host:example.amazonaws.com
        2838  +
My-Header1:VALUE1
        2839  +
X-Amz-Date:20150830T123600Z
        2840  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        2841  +
 2418   2842   
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
 2419   2843   
similarity index 100%
 2420   2844   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2421   2845   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2422   2846   
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
 2423   2847   
new file mode 100644
 2424   2848   
index 0000000..f84856f
 2425         -
-- /dev/null
        2849  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2426   2850   
@@ -0,0 +1,8 @@
        2851  +
POST
        2852  +
/
        2853  +
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
        2854  +
host:example.amazonaws.com
        2855  +
my-header1:VALUE1
        2856  +
        2857  +
host;my-header1
        2858  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2427   2859   
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
 2428   2860   
new file mode 100644
 2429   2861   
index 0000000..a9d3cac
 2430         -
-- /dev/null
        2862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2431   2863   
@@ -0,0 +1 @@
        2864  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2432   2865   
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
 2433   2866   
new file mode 100644
 2434   2867   
index 0000000..cf96c7c
 2435         -
-- /dev/null
        2868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2436   2869   
@@ -0,0 +1,4 @@
        2870  +
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
        2871  +
Host:example.amazonaws.com
        2872  +
My-Header1:VALUE1
        2873  +
 2437   2874   
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
 2438   2875   
new file mode 100644
 2439   2876   
index 0000000..47ef566
 2440         -
-- /dev/null
        2877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2441   2878   
@@ -0,0 +1,4 @@
        2879  +
AWS4-HMAC-SHA256
        2880  +
20150830T123600Z
        2881  +
20150830/us-east-1/service/aws4_request
        2882  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2442   2883   
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
 2443   2884   
similarity index 100%
 2444   2885   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2445   2886   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2446   2887   
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
 2447   2888   
similarity index 100%
 2448   2889   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2449   2890   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2450   2891   
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
 2451   2892   
similarity index 100%
 2452   2893   
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
 2453   2894   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2454   2895   
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
 2455   2896   
new file mode 100644
 2456   2897   
index 0000000..629487f
 2457         -
-- /dev/null
        2898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2458   2899   
@@ -0,0 +1 @@
        2900  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2459   2901   
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
 2460   2902   
similarity index 67%
 2461   2903   
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
 2462   2904   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2463   2905   
index 291ed07..f96ff9e 100644
 2464         -
-- 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
        2906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2465   2907   
@@ -1,5 +1,6 @@
 2466   2908   
POST / HTTP/1.1
 2467   2909   
Host:example.amazonaws.com
 2468         -
X-Amz-Date:20150830T123600Z
 2469   2910   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2470         -
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
        2911  +
X-Amz-Date:20150830T123600Z
        2912  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2913  +
 2471   2914   
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
 2472   2915   
similarity index 100%
 2473   2916   
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
 2474   2917   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2475   2918   
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
 2476   2919   
new file mode 100644
 2477   2920   
index 0000000..d3341e7
 2478         -
-- /dev/null
        2921  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2479   2922   
@@ -0,0 +1,7 @@
        2923  +
POST
        2924  +
/
        2925  +
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
        2926  +
host:example.amazonaws.com
        2927  +
        2928  +
host
        2929  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2480   2930   
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
 2481   2931   
new file mode 100644
 2482   2932   
index 0000000..79f7e0d
 2483         -
-- /dev/null
        2933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2484   2934   
@@ -0,0 +1 @@
        2935  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2485   2936   
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
 2486   2937   
new file mode 100644
 2487   2938   
index 0000000..4983268
 2488         -
-- /dev/null
        2939  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2489   2940   
@@ -0,0 +1,3 @@
        2941  +
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
        2942  +
Host:example.amazonaws.com
        2943  +
 2490   2944   
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
 2491   2945   
new file mode 100644
 2492   2946   
index 0000000..e8f335b
 2493         -
-- /dev/null
        2947  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2494   2948   
@@ -0,0 +1,4 @@
        2949  +
AWS4-HMAC-SHA256
        2950  +
20150830T123600Z
        2951  +
20150830/us-east-1/service/aws4_request
        2952  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2495   2953   
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
 2496   2954   
similarity index 100%
 2497   2955   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2498   2956   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2499   2957   
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
 2500   2958   
similarity index 100%
 2501   2959   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2502   2960   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2503   2961   
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
 2504   2962   
similarity index 100%
 2505   2963   
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
 2506   2964   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2507   2965   
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
 2508   2966   
new file mode 100644
 2509   2967   
index 0000000..85a7c29
 2510         -
-- /dev/null
        2968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2511   2969   
@@ -0,0 +1 @@
        2970  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2512   2971   
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
 2513   2972   
similarity index 65%
 2514   2973   
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
 2515   2974   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2516   2975   
index 37b2f04..4d0b143 100644
 2517         -
-- 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
        2976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2518   2977   
@@ -1,5 +1,6 @@
 2519   2978   
POST / HTTP/1.1
 2520   2979   
Host:example.amazonaws.com
 2521         -
X-Amz-Date:20150830T123600Z
 2522   2980   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2523         -
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
        2981  +
X-Amz-Date:20150830T123600Z
        2982  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        2983  +
 2524   2984   
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
 2525   2985   
similarity index 100%
 2526   2986   
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
 2527   2987   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2528   2988   
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
 2529   2989   
new file mode 100644
 2530   2990   
index 0000000..57a7bc3
 2531         -
-- /dev/null
        2991  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2532   2992   
@@ -0,0 +1,7 @@
        2993  +
POST
        2994  +
/
        2995  +
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
        2996  +
host:example.amazonaws.com
        2997  +
        2998  +
host
        2999  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2533   3000   
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
 2534   3001   
new file mode 100644
 2535   3002   
index 0000000..eb905d2
 2536         -
-- /dev/null
        3003  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2537   3004   
@@ -0,0 +1 @@
        3005  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2538   3006   
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
 2539   3007   
new file mode 100644
 2540   3008   
index 0000000..1d80ec0
 2541         -
-- /dev/null
        3009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2542   3010   
@@ -0,0 +1,3 @@
        3011  +
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
        3012  +
Host:example.amazonaws.com
        3013  +
 2543   3014   
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
 2544   3015   
new file mode 100644
 2545   3016   
index 0000000..bd0239a
 2546         -
-- /dev/null
        3017  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2547   3018   
@@ -0,0 +1,4 @@
        3019  +
AWS4-HMAC-SHA256
        3020  +
20150830T123600Z
        3021  +
20150830/us-east-1/service/aws4_request
        3022  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2548   3023   
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
 2549   3024   
similarity index 100%
 2550   3025   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2551   3026   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2552   3027   
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
 2553   3028   
new file mode 100644
 2554   3029   
index 0000000..0468d80
 2555         -
-- /dev/null
        3030  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2556   3031   
@@ -0,0 +1,12 @@
        3032  +
{
        3033  +
    "credentials": {
        3034  +
        "access_key_id": "AKIDEXAMPLE",
        3035  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3036  +
    },
        3037  +
    "expiration_in_seconds": 3600,
        3038  +
    "normalize": true,
        3039  +
    "region": "us-east-1",
        3040  +
    "service": "service",
        3041  +
    "sign_body": false,
        3042  +
    "timestamp": "2015-08-30T12:36:00Z"
        3043  +
}
              \
 No newline at end of file
 2557   3044   
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
 2558   3045   
similarity index 100%
 2559   3046   
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
 2560   3047   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2561   3048   
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
 2562   3049   
new file mode 100644
 2563   3050   
index 0000000..80ed433
 2564         -
-- /dev/null
        3051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2565   3052   
@@ -0,0 +1 @@
        3053  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2566   3054   
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
 2567   3055   
new file mode 100644
 2568   3056   
index 0000000..4e614f8
 2569         -
-- /dev/null
        3057  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2570   3058   
@@ -0,0 +1,5 @@
        3059  +
POST /?Param1=value1 HTTP/1.1
        3060  +
Host:example.amazonaws.com
        3061  +
X-Amz-Date:20150830T123600Z
        3062  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3063  +
 2571   3064   
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
 2572   3065   
similarity index 100%
 2573   3066   
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
 2574   3067   
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
 2575   3068   
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
 2576   3069   
new file mode 100644
 2577   3070   
index 0000000..be66403
 2578         -
-- /dev/null
        3071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2579   3072   
@@ -0,0 +1,7 @@
        3073  +
POST
        3074  +
/
        3075  +
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
        3076  +
host:example.amazonaws.com
        3077  +
        3078  +
host
        3079  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2580   3080   
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
 2581   3081   
new file mode 100644
 2582   3082   
index 0000000..20fd32b
 2583         -
-- /dev/null
        3083  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2584   3084   
@@ -0,0 +1 @@
        3085  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2585   3086   
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
 2586   3087   
new file mode 100644
 2587   3088   
index 0000000..d1148d0
 2588         -
-- /dev/null
        3089  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2589   3090   
@@ -0,0 +1,3 @@
        3091  +
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
        3092  +
Host:example.amazonaws.com
        3093  +
 2590   3094   
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
 2591   3095   
new file mode 100644
 2592   3096   
index 0000000..1a77103
 2593         -
-- /dev/null
        3097  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2594   3098   
@@ -0,0 +1,4 @@
        3099  +
AWS4-HMAC-SHA256
        3100  +
20150830T123600Z
        3101  +
20150830/us-east-1/service/aws4_request
        3102  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2595   3103   
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
 2596   3104   
similarity index 100%
 2597   3105   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2598   3106   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2599   3107   
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
 2600   3108   
new file mode 100644
 2601   3109   
index 0000000..0468d80
 2602         -
-- /dev/null
        3110  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2603   3111   
@@ -0,0 +1,12 @@
        3112  +
{
        3113  +
    "credentials": {
        3114  +
        "access_key_id": "AKIDEXAMPLE",
        3115  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3116  +
    },
        3117  +
    "expiration_in_seconds": 3600,
        3118  +
    "normalize": true,
        3119  +
    "region": "us-east-1",
        3120  +
    "service": "service",
        3121  +
    "sign_body": false,
        3122  +
    "timestamp": "2015-08-30T12:36:00Z"
        3123  +
}
              \
 No newline at end of file
 2604   3124   
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
 2605   3125   
similarity index 100%
 2606   3126   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2607   3127   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2608   3128   
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
 2609   3129   
new file mode 100644
 2610   3130   
index 0000000..80ed433
 2611         -
-- /dev/null
        3131  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2612   3132   
@@ -0,0 +1 @@
        3133  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2613   3134   
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
 2614   3135   
new file mode 100644
 2615   3136   
index 0000000..4e614f8
 2616         -
-- /dev/null
        3137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2617   3138   
@@ -0,0 +1,5 @@
        3139  +
POST /?Param1=value1 HTTP/1.1
        3140  +
Host:example.amazonaws.com
        3141  +
X-Amz-Date:20150830T123600Z
        3142  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3143  +
 2618   3144   
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
 2619   3145   
similarity index 100%
 2620   3146   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2621   3147   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2622   3148   
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
 2623   3149   
new file mode 100644
 2624   3150   
index 0000000..be66403
 2625         -
-- /dev/null
        3151  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2626   3152   
@@ -0,0 +1,7 @@
        3153  +
POST
        3154  +
/
        3155  +
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
        3156  +
host:example.amazonaws.com
        3157  +
        3158  +
host
        3159  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2627   3160   
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
 2628   3161   
new file mode 100644
 2629   3162   
index 0000000..20fd32b
 2630         -
-- /dev/null
        3163  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2631   3164   
@@ -0,0 +1 @@
        3165  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2632   3166   
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
 2633   3167   
new file mode 100644
 2634   3168   
index 0000000..d1148d0
 2635         -
-- /dev/null
        3169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2636   3170   
@@ -0,0 +1,3 @@
        3171  +
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
        3172  +
Host:example.amazonaws.com
        3173  +
 2637   3174   
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
 2638   3175   
new file mode 100644
 2639   3176   
index 0000000..1a77103
 2640         -
-- /dev/null
        3177  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2641   3178   
@@ -0,0 +1,4 @@
        3179  +
AWS4-HMAC-SHA256
        3180  +
20150830T123600Z
        3181  +
20150830/us-east-1/service/aws4_request
        3182  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2642   3183   
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
 2643   3184   
similarity index 100%
 2644   3185   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2645   3186   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2646   3187   
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
 2647   3188   
new file mode 100644
 2648   3189   
index 0000000..0468d80
 2649         -
-- /dev/null
        3190  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2650   3191   
@@ -0,0 +1,12 @@
        3192  +
{
        3193  +
    "credentials": {
        3194  +
        "access_key_id": "AKIDEXAMPLE",
        3195  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3196  +
    },
        3197  +
    "expiration_in_seconds": 3600,
        3198  +
    "normalize": true,
        3199  +
    "region": "us-east-1",
        3200  +
    "service": "service",
        3201  +
    "sign_body": false,
        3202  +
    "timestamp": "2015-08-30T12:36:00Z"
        3203  +
}
              \
 No newline at end of file
 2651   3204   
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
 2652   3205   
similarity index 100%
 2653   3206   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2654   3207   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2655   3208   
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
 2656   3209   
new file mode 100644
 2657   3210   
index 0000000..629487f
 2658         -
-- /dev/null
        3211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2659   3212   
@@ -0,0 +1 @@
        3213  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2660   3214   
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
 2661   3215   
new file mode 100644
 2662   3216   
index 0000000..0d99b1c
 2663         -
-- /dev/null
        3217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2664   3218   
@@ -0,0 +1,5 @@
        3219  +
POST / HTTP/1.1
        3220  +
Host:example.amazonaws.com
        3221  +
X-Amz-Date:20150830T123600Z
        3222  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3223  +
 2665   3224   
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
 2666   3225   
similarity index 100%
 2667   3226   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 2668   3227   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 2669   3228   
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
 2670   3229   
new file mode 100644
 2671   3230   
index 0000000..d3341e7
 2672         -
-- /dev/null
        3231  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 2673   3232   
@@ -0,0 +1,7 @@
        3233  +
POST
        3234  +
/
        3235  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        3236  +
host:example.amazonaws.com
        3237  +
        3238  +
host
        3239  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2674   3240   
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
 2675   3241   
new file mode 100644
 2676   3242   
index 0000000..79f7e0d
 2677         -
-- /dev/null
        3243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 2678   3244   
@@ -0,0 +1 @@
        3245  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2679   3246   
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
 2680   3247   
new file mode 100644
 2681   3248   
index 0000000..94f1b21
 2682         -
-- /dev/null
        3249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 2683   3250   
@@ -0,0 +1,3 @@
        3251  +
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
        3252  +
Host:example.amazonaws.com
        3253  +
 2684   3254   
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
 2685   3255   
new file mode 100644
 2686   3256   
index 0000000..e8f335b
 2687         -
-- /dev/null
        3257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 2688   3258   
@@ -0,0 +1,4 @@
        3259  +
AWS4-HMAC-SHA256
        3260  +
20150830T123600Z
        3261  +
20150830/us-east-1/service/aws4_request
        3262  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2689   3263   
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
 2690   3264   
similarity index 100%
 2691   3265   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 2692   3266   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 2693   3267   
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
 2694   3268   
similarity index 99%
 2695   3269   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 2696   3270   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2697   3271   
index fc4bce6..0db1df1 100644
 2698   3272   
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
 2699   3273   
new file mode 100644
 2700   3274   
index 0000000..c218fdf
 2701         -
-- /dev/null
        3275  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 2702   3276   
@@ -0,0 +1,11 @@
        3277  +
POST
        3278  +
/
        3279  +
        3280  +
content-length:13
        3281  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3282  +
host:example.amazonaws.com
        3283  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3284  +
x-amz-date:20150830T123600Z
        3285  +
        3286  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3287  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2703   3288   
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
 2704   3289   
new file mode 100644
 2705   3290   
index 0000000..836aa8b
 2706         -
-- /dev/null
        3291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 2707   3292   
@@ -0,0 +1 @@
        3293  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 2708   3294   
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
 2709   3295   
new file mode 100644
 2710   3296   
index 0000000..9262d53
 2711         -
-- /dev/null
        3297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 2712   3298   
@@ -0,0 +1,9 @@
        3299  +
POST / HTTP/1.1
        3300  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3301  +
Host:example.amazonaws.com
        3302  +
Content-Length:13
        3303  +
X-Amz-Date:20150830T123600Z
        3304  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3305  +
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
        3306  +
        3307  +
Param1=value1
              \
 No newline at end of file
 2713   3308   
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
 2714   3309   
new file mode 100644
 2715   3310   
index 0000000..ddbdccc
 2716         -
-- /dev/null
        3311  +
++ 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
 2717   3312   
@@ -0,0 +1,4 @@
        3313  +
AWS4-HMAC-SHA256
        3314  +
20150830T123600Z
        3315  +
20150830/us-east-1/service/aws4_request
        3316  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 2718   3317   
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
 2719   3318   
new file mode 100644
 2720   3319   
index 0000000..596a579
 2721         -
-- /dev/null
        3320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 2722   3321   
@@ -0,0 +1,9 @@
        3322  +
POST
        3323  +
/
        3324  +
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
        3325  +
content-length:13
        3326  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3327  +
host:example.amazonaws.com
        3328  +
        3329  +
content-length;content-type;host
        3330  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2723   3331   
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
 2724   3332   
new file mode 100644
 2725   3333   
index 0000000..bc85cd8
 2726         -
-- /dev/null
        3334  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 2727   3335   
@@ -0,0 +1 @@
        3336  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 2728   3337   
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
 2729   3338   
new file mode 100644
 2730   3339   
index 0000000..16b59e5
 2731         -
-- /dev/null
        3340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 2732   3341   
@@ -0,0 +1,6 @@
        3342  +
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
        3343  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3344  +
Host:example.amazonaws.com
        3345  +
Content-Length:13
        3346  +
        3347  +
Param1=value1
              \
 No newline at end of file
 2733   3348   
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
 2734   3349   
new file mode 100644
 2735   3350   
index 0000000..50074af
 2736         -
-- /dev/null
        3351  +
++ 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
 2737   3352   
@@ -0,0 +1,4 @@
        3353  +
AWS4-HMAC-SHA256
        3354  +
20150830T123600Z
        3355  +
20150830/us-east-1/service/aws4_request
        3356  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 2738   3357   
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
 2739   3358   
similarity index 89%
 2740   3359   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 2741   3360   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2742   3361   
index b711c25..8289eaa 100644
 2743   3362   
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
 2744   3363   
similarity index 99%
 2745   3364   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 2746   3365   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 2747   3366   
index fc4bce6..0db1df1 100644
 2748   3367   
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
 2749   3368   
new file mode 100644
 2750   3369   
index 0000000..4d116a5
 2751         -
-- /dev/null
        3370  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 2752   3371   
@@ -0,0 +1,11 @@
        3372  +
POST
        3373  +
/
        3374  +
        3375  +
content-length:13
        3376  +
content-type:application/x-www-form-urlencoded
        3377  +
host:example.amazonaws.com
        3378  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3379  +
x-amz-date:20150830T123600Z
        3380  +
        3381  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3382  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2753   3383   
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
 2754   3384   
new file mode 100644
 2755   3385   
index 0000000..0d2ac37
 2756         -
-- /dev/null
        3386  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 2757   3387   
@@ -0,0 +1 @@
        3388  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 2758   3389   
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
 2759   3390   
new file mode 100644
 2760   3391   
index 0000000..bd5e49c
 2761         -
-- /dev/null
        3392  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 2762   3393   
@@ -0,0 +1,9 @@
        3394  +
POST / HTTP/1.1
        3395  +
Content-Type:application/x-www-form-urlencoded
        3396  +
Host:example.amazonaws.com
        3397  +
Content-Length:13
        3398  +
X-Amz-Date:20150830T123600Z
        3399  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3400  +
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
        3401  +
        3402  +
Param1=value1
              \
 No newline at end of file
 2763   3403   
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
 2764   3404   
new file mode 100644
 2765   3405   
index 0000000..f1c599c
 2766         -
-- /dev/null
        3406  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 2767   3407   
@@ -0,0 +1,4 @@
        3408  +
AWS4-HMAC-SHA256
        3409  +
20150830T123600Z
        3410  +
20150830/us-east-1/service/aws4_request
        3411  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 2768   3412   
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
 2769   3413   
new file mode 100644
 2770   3414   
index 0000000..1fc1bb7
 2771         -
-- /dev/null
        3415  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 2772   3416   
@@ -0,0 +1,9 @@
        3417  +
POST
        3418  +
/
        3419  +
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
        3420  +
content-length:13
        3421  +
content-type:application/x-www-form-urlencoded
        3422  +
host:example.amazonaws.com
        3423  +
        3424  +
content-length;content-type;host
        3425  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2773   3426   
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
 2774   3427   
new file mode 100644
 2775   3428   
index 0000000..98c91b3
 2776         -
-- /dev/null
        3429  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 2777   3430   
@@ -0,0 +1 @@
        3431  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 2778   3432   
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
 2779   3433   
new file mode 100644
 2780   3434   
index 0000000..055cd7a
 2781         -
-- /dev/null
        3435  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 2782   3436   
@@ -0,0 +1,6 @@
        3437  +
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
        3438  +
Content-Type:application/x-www-form-urlencoded
        3439  +
Host:example.amazonaws.com
        3440  +
Content-Length:13
        3441  +
        3442  +
Param1=value1
              \
 No newline at end of file
 2783   3443   
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
 2784   3444   
new file mode 100644
 2785   3445   
index 0000000..db7fc27
 2786         -
-- /dev/null
        3446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 2787   3447   
@@ -0,0 +1,4 @@
        3448  +
AWS4-HMAC-SHA256
        3449  +
20150830T123600Z
        3450  +
20150830/us-east-1/service/aws4_request
        3451  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 2788   3452   
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
 2789   3453   
similarity index 88%
 2790   3454   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 2791   3455   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 2792   3456   
index 0091102..760b2d3 100644
 2793   3457   
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
 2794   3458   
new file mode 100644
 2795   3459   
index 0000000..0468d80
 2796         -
-- /dev/null
        3460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 2797   3461   
@@ -0,0 +1,12 @@
        3462  +
{
        3463  +
    "credentials": {
        3464  +
        "access_key_id": "AKIDEXAMPLE",
        3465  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3466  +
    },
        3467  +
    "expiration_in_seconds": 3600,
        3468  +
    "normalize": true,
        3469  +
    "region": "us-east-1",
        3470  +
    "service": "service",
        3471  +
    "sign_body": false,
        3472  +
    "timestamp": "2015-08-30T12:36:00Z"
        3473  +
}
              \
 No newline at end of file
 2798   3474   
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
 2799   3475   
similarity index 99%
 2800   3476   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 2801   3477   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 2802   3478   
index ccb5f43..1bc448e 100644
 2803   3479   
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
 2804   3480   
new file mode 100644
 2805   3481   
index 0000000..489c182
 2806         -
-- /dev/null
        3482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 2807   3483   
@@ -0,0 +1 @@
        3484  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 2808   3485   
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
 2809   3486   
new file mode 100644
 2810   3487   
index 0000000..e1b8dbf
 2811         -
-- /dev/null
        3488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 2812   3489   
@@ -0,0 +1,9 @@
        3490  +
GET / HTTP/1.1
        3491  +
Host:example.amazonaws.com
        3492  +
My-Header1:value2
        3493  +
My-Header1:value2
        3494  +
My-Header1:value1
        3495  +
X-Amz-Date:20150830T123600Z
        3496  +
X-Amz-Region-Set:us-east-1
        3497  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3498  +
 2813   3499   
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
 2814   3500   
similarity index 99%
 2815   3501   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 2816   3502   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 2817   3503   
index 8783461..bfc4619 100644
 2818   3504   
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
 2819   3505   
new file mode 100644
 2820   3506   
index 0000000..379dcb2
 2821         -
-- /dev/null
        3507  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 2822   3508   
@@ -0,0 +1,4 @@
        3509  +
{
        3510  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3511  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3512  +
}
 2823   3513   
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
 2824   3514   
similarity index 99%
 2825   3515   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 2826   3516   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 2827   3517   
index 9561297..c05c3f5 100644
 2828   3518   
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
 2829   3519   
new file mode 100644
 2830   3520   
index 0000000..de9a4c3
 2831         -
-- /dev/null
        3521  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 2832   3522   
@@ -0,0 +1 @@
        3523  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 2833   3524   
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
 2834   3525   
new file mode 100644
 2835   3526   
index 0000000..6c6b8c4
 2836         -
-- /dev/null
        3527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 2837   3528   
@@ -0,0 +1,6 @@
        3529  +
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
        3530  +
Host:example.amazonaws.com
        3531  +
My-Header1:value2
        3532  +
My-Header1:value2
        3533  +
My-Header1:value1
        3534  +
 2838   3535   
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
 2839   3536   
similarity index 99%
 2840   3537   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 2841   3538   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 2842   3539   
index 3140f6f..4eef106 100644
 2843   3540   
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
 2844   3541   
similarity index 78%
 2845   3542   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 2846   3543   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 2847   3544   
index 08a0364..40455ce 100644
 2848         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 2849   3546   
@@ -1,6 +1,5 @@
 2850   3547   
GET / HTTP/1.1
 2851   3548   
Host:example.amazonaws.com
 2852   3549   
My-Header1:value2
 2853   3550   
My-Header1:value2
 2854   3551   
My-Header1:value1
 2855         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2856   3552   
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
 2857   3553   
new file mode 100644
 2858   3554   
index 0000000..0468d80
 2859         -
-- /dev/null
        3555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 2860   3556   
@@ -0,0 +1,12 @@
        3557  +
{
        3558  +
    "credentials": {
        3559  +
        "access_key_id": "AKIDEXAMPLE",
        3560  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3561  +
    },
        3562  +
    "expiration_in_seconds": 3600,
        3563  +
    "normalize": true,
        3564  +
    "region": "us-east-1",
        3565  +
    "service": "service",
        3566  +
    "sign_body": false,
        3567  +
    "timestamp": "2015-08-30T12:36:00Z"
        3568  +
}
              \
 No newline at end of file
 2861   3569   
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
 2862   3570   
new file mode 100644
 2863   3571   
index 0000000..69526cd
 2864         -
-- /dev/null
        3572  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 2865   3573   
@@ -0,0 +1,10 @@
        3574  +
GET
        3575  +
/
        3576  +
        3577  +
host:example.amazonaws.com
        3578  +
my-header1:value1 value2 value3
        3579  +
x-amz-date:20150830T123600Z
        3580  +
x-amz-region-set:us-east-1
        3581  +
        3582  +
host;my-header1;x-amz-date;x-amz-region-set
        3583  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2866   3584   
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
 2867   3585   
new file mode 100644
 2868   3586   
index 0000000..d51b4f3
 2869         -
-- /dev/null
        3587  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 2870   3588   
@@ -0,0 +1 @@
        3589  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 2871   3590   
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
 2872   3591   
new file mode 100644
 2873   3592   
index 0000000..8131420
 2874         -
-- /dev/null
        3593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 2875   3594   
@@ -0,0 +1,9 @@
        3595  +
GET / HTTP/1.1
        3596  +
Host:example.amazonaws.com
        3597  +
My-Header1:value1
        3598  +
  value2
        3599  +
     value3
        3600  +
X-Amz-Date:20150830T123600Z
        3601  +
X-Amz-Region-Set:us-east-1
        3602  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3603  +
 2876   3604   
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
 2877   3605   
new file mode 100644
 2878   3606   
index 0000000..e4d99fa
 2879         -
-- /dev/null
        3607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 2880   3608   
@@ -0,0 +1,4 @@
        3609  +
AWS4-ECDSA-P256-SHA256
        3610  +
20150830T123600Z
        3611  +
20150830/service/aws4_request
        3612  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 2881   3613   
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
 2882   3614   
new file mode 100644
 2883   3615   
index 0000000..379dcb2
 2884         -
-- /dev/null
        3616  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 2885   3617   
@@ -0,0 +1,4 @@
        3618  +
{
        3619  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3620  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3621  +
}
 2886   3622   
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
 2887   3623   
new file mode 100644
 2888   3624   
index 0000000..3c4d52f
 2889         -
-- /dev/null
        3625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 2890   3626   
@@ -0,0 +1,8 @@
        3627  +
GET
        3628  +
/
        3629  +
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
        3630  +
host:example.amazonaws.com
        3631  +
my-header1:value1 value2 value3
        3632  +
        3633  +
host;my-header1
        3634  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2891   3635   
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
 2892   3636   
new file mode 100644
 2893   3637   
index 0000000..4e63f9a
 2894         -
-- /dev/null
        3638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 2895   3639   
@@ -0,0 +1 @@
        3640  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 2896   3641   
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
 2897   3642   
new file mode 100644
 2898   3643   
index 0000000..adf1f09
 2899         -
-- /dev/null
        3644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 2900   3645   
@@ -0,0 +1,6 @@
        3646  +
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
        3647  +
Host:example.amazonaws.com
        3648  +
My-Header1:value1
        3649  +
  value2
        3650  +
     value3
        3651  +
 2901   3652   
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
 2902   3653   
new file mode 100644
 2903   3654   
index 0000000..e085407
 2904         -
-- /dev/null
        3655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 2905   3656   
@@ -0,0 +1,4 @@
        3657  +
AWS4-ECDSA-P256-SHA256
        3658  +
20150830T123600Z
        3659  +
20150830/service/aws4_request
        3660  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 2906   3661   
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
 2907   3662   
new file mode 100644
 2908   3663   
index 0000000..b5026cd
 2909         -
-- /dev/null
        3664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 2910   3665   
@@ -0,0 +1,5 @@
        3666  +
GET / HTTP/1.1
        3667  +
Host:example.amazonaws.com
        3668  +
My-Header1:value1
        3669  +
  value2
        3670  +
     value3
 2911   3671   
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
 2912   3672   
new file mode 100644
 2913   3673   
index 0000000..0468d80
 2914         -
-- /dev/null
        3674  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 2915   3675   
@@ -0,0 +1,12 @@
        3676  +
{
        3677  +
    "credentials": {
        3678  +
        "access_key_id": "AKIDEXAMPLE",
        3679  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3680  +
    },
        3681  +
    "expiration_in_seconds": 3600,
        3682  +
    "normalize": true,
        3683  +
    "region": "us-east-1",
        3684  +
    "service": "service",
        3685  +
    "sign_body": false,
        3686  +
    "timestamp": "2015-08-30T12:36:00Z"
        3687  +
}
              \
 No newline at end of file
 2916   3688   
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
 2917   3689   
similarity index 99%
 2918   3690   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 2919   3691   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 2920   3692   
index 9375193..533afdb 100644
 2921   3693   
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
 2922   3694   
new file mode 100644
 2923   3695   
index 0000000..057b426
 2924         -
-- /dev/null
        3696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 2925   3697   
@@ -0,0 +1 @@
        3698  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 2926   3699   
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
 2927   3700   
new file mode 100644
 2928   3701   
index 0000000..4e4ccf0
 2929         -
-- /dev/null
        3702  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 2930   3703   
@@ -0,0 +1,10 @@
        3704  +
GET / HTTP/1.1
        3705  +
Host:example.amazonaws.com
        3706  +
My-Header1:value4
        3707  +
My-Header1:value1
        3708  +
My-Header1:value3
        3709  +
My-Header1:value2
        3710  +
X-Amz-Date:20150830T123600Z
        3711  +
X-Amz-Region-Set:us-east-1
        3712  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        3713  +
 2931   3714   
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
 2932   3715   
similarity index 99%
 2933   3716   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 2934   3717   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 2935   3718   
index 6400baf..e68c952 100644
 2936   3719   
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
 2937   3720   
new file mode 100644
 2938   3721   
index 0000000..379dcb2
 2939         -
-- /dev/null
        3722  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 2940   3723   
@@ -0,0 +1,4 @@
        3724  +
{
        3725  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3726  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3727  +
}
 2941   3728   
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
 2942   3729   
similarity index 99%
 2943   3730   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 2944   3731   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 2945   3732   
index ecf494a..68450fe 100644
 2946   3733   
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
 2947   3734   
new file mode 100644
 2948   3735   
index 0000000..9df2eb3
 2949         -
-- /dev/null
        3736  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 2950   3737   
@@ -0,0 +1 @@
        3738  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 2951   3739   
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
 2952   3740   
new file mode 100644
 2953   3741   
index 0000000..62f8cb7
 2954         -
-- /dev/null
        3742  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 2955   3743   
@@ -0,0 +1,7 @@
        3744  +
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
        3745  +
Host:example.amazonaws.com
        3746  +
My-Header1:value4
        3747  +
My-Header1:value1
        3748  +
My-Header1:value3
        3749  +
My-Header1:value2
        3750  +
 2956   3751   
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
 2957   3752   
similarity index 99%
 2958   3753   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 2959   3754   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 2960   3755   
index b584179..2bcf7b1 100644
 2961   3756   
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
 2962   3757   
similarity index 80%
 2963   3758   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 2964   3759   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 2965   3760   
index f7bd9e6..2c6f49d 100644
 2966         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        3761  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 2967   3762   
@@ -1,7 +1,6 @@
 2968   3763   
GET / HTTP/1.1
 2969   3764   
Host:example.amazonaws.com
 2970   3765   
My-Header1:value4
 2971   3766   
My-Header1:value1
 2972   3767   
My-Header1:value3
 2973   3768   
My-Header1:value2
 2974         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2975   3769   
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
 2976   3770   
new file mode 100644
 2977   3771   
index 0000000..0468d80
 2978         -
-- /dev/null
        3772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 2979   3773   
@@ -0,0 +1,12 @@
        3774  +
{
        3775  +
    "credentials": {
        3776  +
        "access_key_id": "AKIDEXAMPLE",
        3777  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3778  +
    },
        3779  +
    "expiration_in_seconds": 3600,
        3780  +
    "normalize": true,
        3781  +
    "region": "us-east-1",
        3782  +
    "service": "service",
        3783  +
    "sign_body": false,
        3784  +
    "timestamp": "2015-08-30T12:36:00Z"
        3785  +
}
              \
 No newline at end of file
 2980   3786   
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
 2981   3787   
similarity index 99%
 2982   3788   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 2983   3789   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 2984   3790   
index e91e952..94b6be5 100644
 2985   3791   
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
 2986   3792   
new file mode 100644
 2987   3793   
index 0000000..bf8c3cb
 2988         -
-- /dev/null
        3794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 2989   3795   
@@ -0,0 +1 @@
        3796  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 2990   3797   
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
 2991   3798   
new file mode 100644
 2992   3799   
index 0000000..f7f054d
 2993         -
-- /dev/null
        3800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 2994   3801   
@@ -0,0 +1,8 @@
        3802  +
GET / HTTP/1.1
        3803  +
Host:example.amazonaws.com
        3804  +
My-Header1: value1
        3805  +
My-Header2: "a   b   c"
        3806  +
X-Amz-Date:20150830T123600Z
        3807  +
X-Amz-Region-Set:us-east-1
        3808  +
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
        3809  +
 2995   3810   
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
 2996   3811   
similarity index 99%
 2997   3812   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 2998   3813   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 2999   3814   
index 0e407d8..a2c9c05 100644
 3000   3815   
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
 3001   3816   
new file mode 100644
 3002   3817   
index 0000000..379dcb2
 3003         -
-- /dev/null
        3818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3004   3819   
@@ -0,0 +1,4 @@
        3820  +
{
        3821  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3822  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3823  +
}
 3005   3824   
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
 3006   3825   
similarity index 99%
 3007   3826   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3008   3827   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3009   3828   
index 8a3b042..3a51150 100644
 3010   3829   
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
 3011   3830   
new file mode 100644
 3012   3831   
index 0000000..0033053
 3013         -
-- /dev/null
        3832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3014   3833   
@@ -0,0 +1 @@
        3834  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3015   3835   
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
 3016   3836   
new file mode 100644
 3017   3837   
index 0000000..1537888
 3018         -
-- /dev/null
        3838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3019   3839   
@@ -0,0 +1,5 @@
        3840  +
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
        3841  +
Host:example.amazonaws.com
        3842  +
My-Header1: value1
        3843  +
My-Header2: "a   b   c"
        3844  +
 3020   3845   
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
 3021   3846   
similarity index 99%
 3022   3847   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3023   3848   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3024   3849   
index 5eead25..633dc1f 100644
 3025   3850   
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
 3026   3851   
similarity index 75%
 3027   3852   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3028   3853   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3029   3854   
index 901f36c..ad1ea98 100644
 3030         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        3855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3031   3856   
@@ -1,5 +1,4 @@
 3032   3857   
GET / HTTP/1.1
 3033   3858   
Host:example.amazonaws.com
 3034   3859   
My-Header1: value1
 3035   3860   
My-Header2: "a   b   c"
 3036         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3037   3861   
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
 3038   3862   
new file mode 100644
 3039   3863   
index 0000000..0468d80
 3040         -
-- /dev/null
        3864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3041   3865   
@@ -0,0 +1,12 @@
        3866  +
{
        3867  +
    "credentials": {
        3868  +
        "access_key_id": "AKIDEXAMPLE",
        3869  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3870  +
    },
        3871  +
    "expiration_in_seconds": 3600,
        3872  +
    "normalize": true,
        3873  +
    "region": "us-east-1",
        3874  +
    "service": "service",
        3875  +
    "sign_body": false,
        3876  +
    "timestamp": "2015-08-30T12:36:00Z"
        3877  +
}
              \
 No newline at end of file
 3042   3878   
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
 3043   3879   
similarity index 99%
 3044   3880   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3045   3881   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3046   3882   
index 47e7128..76db73d 100644
 3047   3883   
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
 3048   3884   
new file mode 100644
 3049   3885   
index 0000000..cbd6ae2
 3050         -
-- /dev/null
        3886  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3051   3887   
@@ -0,0 +1 @@
        3888  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3052   3889   
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
 3053   3890   
new file mode 100644
 3054   3891   
index 0000000..a343fcf
 3055         -
-- /dev/null
        3892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3056   3893   
@@ -0,0 +1,6 @@
        3894  +
GET /example/.. HTTP/1.1
        3895  +
Host:example.amazonaws.com
        3896  +
X-Amz-Date:20150830T123600Z
        3897  +
X-Amz-Region-Set:us-east-1
        3898  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        3899  +
 3057   3900   
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
 3058   3901   
similarity index 99%
 3059   3902   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3060   3903   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3061   3904   
index 95d7219..600f1d8 100644
 3062   3905   
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
 3063   3906   
new file mode 100644
 3064   3907   
index 0000000..379dcb2
 3065         -
-- /dev/null
        3908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3066   3909   
@@ -0,0 +1,4 @@
        3910  +
{
        3911  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3912  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3913  +
}
 3067   3914   
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
 3068   3915   
similarity index 99%
 3069   3916   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3070   3917   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3071   3918   
index a34ea26..779c51c 100644
 3072   3919   
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
 3073   3920   
new file mode 100644
 3074   3921   
index 0000000..3cc88e6
 3075         -
-- /dev/null
        3922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3076   3923   
@@ -0,0 +1 @@
        3924  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3077   3925   
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
 3078   3926   
new file mode 100644
 3079   3927   
index 0000000..f68dde8
 3080         -
-- /dev/null
        3928  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3081   3929   
@@ -0,0 +1,3 @@
        3930  +
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
        3931  +
Host:example.amazonaws.com
        3932  +
 3082   3933   
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
 3083   3934   
similarity index 99%
 3084   3935   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3085   3936   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3086   3937   
index 48f855c..6e29a7e 100644
 3087   3938   
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
 3088   3939   
similarity index 65%
 3089   3940   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3090   3941   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3091   3942   
index 9d6d7ca..6aa9f99 100644
 3092         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        3943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3093   3944   
@@ -1,3 +1,2 @@
 3094   3945   
GET /example/.. HTTP/1.1
 3095   3946   
Host:example.amazonaws.com
 3096         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3097   3947   
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
 3098   3948   
new file mode 100644
 3099   3949   
index 0000000..0468d80
 3100         -
-- /dev/null
        3950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3101   3951   
@@ -0,0 +1,12 @@
        3952  +
{
        3953  +
    "credentials": {
        3954  +
        "access_key_id": "AKIDEXAMPLE",
        3955  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3956  +
    },
        3957  +
    "expiration_in_seconds": 3600,
        3958  +
    "normalize": true,
        3959  +
    "region": "us-east-1",
        3960  +
    "service": "service",
        3961  +
    "sign_body": false,
        3962  +
    "timestamp": "2015-08-30T12:36:00Z"
        3963  +
}
              \
 No newline at end of file
 3102   3964   
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
 3103   3965   
similarity index 99%
 3104   3966   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3105   3967   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3106   3968   
index 47e7128..76db73d 100644
 3107   3969   
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
 3108   3970   
new file mode 100644
 3109   3971   
index 0000000..f7a7ebe
 3110         -
-- /dev/null
        3972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3111   3973   
@@ -0,0 +1 @@
        3974  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3112   3975   
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
 3113   3976   
new file mode 100644
 3114   3977   
index 0000000..9d2c50d
 3115         -
-- /dev/null
        3978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3116   3979   
@@ -0,0 +1,6 @@
        3980  +
GET /example1/example2/../.. HTTP/1.1
        3981  +
Host:example.amazonaws.com
        3982  +
X-Amz-Date:20150830T123600Z
        3983  +
X-Amz-Region-Set:us-east-1
        3984  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        3985  +
 3117   3986   
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
 3118   3987   
similarity index 99%
 3119   3988   
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
 3120   3989   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3121   3990   
index 95d7219..600f1d8 100644
 3122   3991   
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
 3123   3992   
new file mode 100644
 3124   3993   
index 0000000..379dcb2
 3125         -
-- /dev/null
        3994  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3126   3995   
@@ -0,0 +1,4 @@
        3996  +
{
        3997  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3998  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3999  +
}
 3127   4000   
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
 3128   4001   
similarity index 99%
 3129   4002   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3130   4003   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3131   4004   
index a34ea26..779c51c 100644
 3132   4005   
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
 3133   4006   
new file mode 100644
 3134   4007   
index 0000000..45ef286
 3135         -
-- /dev/null
        4008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3136   4009   
@@ -0,0 +1 @@
        4010  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3137   4011   
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
 3138   4012   
new file mode 100644
 3139   4013   
index 0000000..0d16f66
 3140         -
-- /dev/null
        4014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3141   4015   
@@ -0,0 +1,3 @@
        4016  +
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
        4017  +
Host:example.amazonaws.com
        4018  +
 3142   4019   
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
 3143   4020   
similarity index 99%
 3144   4021   
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
 3145   4022   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3146   4023   
index 48f855c..6e29a7e 100644
 3147   4024   
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
 3148   4025   
similarity index 70%
 3149   4026   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3150   4027   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3151   4028   
index cfd4e8b..a856c10 100644
 3152         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3153   4030   
@@ -1,3 +1,2 @@
 3154   4031   
GET /example1/example2/../.. HTTP/1.1
 3155   4032   
Host:example.amazonaws.com
 3156         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3157   4033   
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
 3158   4034   
new file mode 100644
 3159   4035   
index 0000000..7bee5c7
 3160         -
-- /dev/null
        4036  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3161   4037   
@@ -0,0 +1,12 @@
        4038  +
{
        4039  +
    "credentials": {
        4040  +
        "access_key_id": "AKIDEXAMPLE",
        4041  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4042  +
    },
        4043  +
    "expiration_in_seconds": 3600,
        4044  +
    "normalize": false,
        4045  +
    "region": "us-east-1",
        4046  +
    "service": "service",
        4047  +
    "sign_body": false,
        4048  +
    "timestamp": "2015-08-30T12:36:00Z"
        4049  +
}
              \
 No newline at end of file
 3162   4050   
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
 3163   4051   
similarity index 99%
 3164   4052   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3165   4053   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3166   4054   
index 5e1d1cf..e4e6d57 100644
 3167   4055   
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
 3168   4056   
new file mode 100644
 3169   4057   
index 0000000..2d1b47c
 3170         -
-- /dev/null
        4058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3171   4059   
@@ -0,0 +1 @@
        4060  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3172   4061   
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
 3173   4062   
new file mode 100644
 3174   4063   
index 0000000..7158179
 3175         -
-- /dev/null
        4064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3176   4065   
@@ -0,0 +1,6 @@
        4066  +
GET /example1/example2/../.. HTTP/1.1
        4067  +
Host:example.amazonaws.com
        4068  +
X-Amz-Date:20150830T123600Z
        4069  +
X-Amz-Region-Set:us-east-1
        4070  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4071  +
 3177   4072   
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
 3178   4073   
similarity index 99%
 3179   4074   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3180   4075   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3181   4076   
index 1cca6cf..db60c8e 100644
 3182   4077   
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
 3183   4078   
new file mode 100644
 3184   4079   
index 0000000..379dcb2
 3185         -
-- /dev/null
        4080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3186   4081   
@@ -0,0 +1,4 @@
        4082  +
{
        4083  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4084  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4085  +
}
 3187   4086   
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
 3188   4087   
similarity index 99%
 3189   4088   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3190   4089   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3191   4090   
index 95dc104..0d963ba 100644
 3192   4091   
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
 3193   4092   
new file mode 100644
 3194   4093   
index 0000000..ae774e4
 3195         -
-- /dev/null
        4094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3196   4095   
@@ -0,0 +1 @@
        4096  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3197   4097   
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
 3198   4098   
new file mode 100644
 3199   4099   
index 0000000..be6b86e
 3200         -
-- /dev/null
        4100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3201   4101   
@@ -0,0 +1,3 @@
        4102  +
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
        4103  +
Host:example.amazonaws.com
        4104  +
 3202   4105   
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
 3203   4106   
similarity index 99%
 3204   4107   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3205   4108   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3206   4109   
index 50edce6..fcc70cd 100644
 3207   4110   
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
 3208   4111   
new file mode 100644
 3209   4112   
index 0000000..a856c10
 3210         -
-- /dev/null
        4113  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3211   4114   
@@ -0,0 +1,2 @@
        4115  +
GET /example1/example2/../.. HTTP/1.1
        4116  +
Host:example.amazonaws.com
 3212   4117   
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
 3213   4118   
new file mode 100644
 3214   4119   
index 0000000..7bee5c7
 3215         -
-- /dev/null
        4120  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3216   4121   
@@ -0,0 +1,12 @@
        4122  +
{
        4123  +
    "credentials": {
        4124  +
        "access_key_id": "AKIDEXAMPLE",
        4125  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4126  +
    },
        4127  +
    "expiration_in_seconds": 3600,
        4128  +
    "normalize": false,
        4129  +
    "region": "us-east-1",
        4130  +
    "service": "service",
        4131  +
    "sign_body": false,
        4132  +
    "timestamp": "2015-08-30T12:36:00Z"
        4133  +
}
              \
 No newline at end of file
 3217   4134   
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
 3218   4135   
similarity index 99%
 3219   4136   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3220   4137   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3221   4138   
index d6a0abe..22def1a 100644
 3222   4139   
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
 3223   4140   
new file mode 100644
 3224   4141   
index 0000000..9251bad
 3225         -
-- /dev/null
        4142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3226   4143   
@@ -0,0 +1 @@
        4144  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3227   4145   
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
 3228   4146   
new file mode 100644
 3229   4147   
index 0000000..f1bb60f
 3230         -
-- /dev/null
        4148  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3231   4149   
@@ -0,0 +1,6 @@
        4150  +
GET /example/.. HTTP/1.1
        4151  +
Host:example.amazonaws.com
        4152  +
X-Amz-Date:20150830T123600Z
        4153  +
X-Amz-Region-Set:us-east-1
        4154  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4155  +
 3232   4156   
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
 3233   4157   
similarity index 99%
 3234   4158   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3235   4159   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3236   4160   
index 4a34e93..5673a20 100644
 3237   4161   
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
 3238   4162   
new file mode 100644
 3239   4163   
index 0000000..379dcb2
 3240         -
-- /dev/null
        4164  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3241   4165   
@@ -0,0 +1,4 @@
        4166  +
{
        4167  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4168  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4169  +
}
 3242   4170   
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
 3243   4171   
similarity index 99%
 3244   4172   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3245   4173   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3246   4174   
index b1d123e..a1c22e0 100644
 3247   4175   
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
 3248   4176   
new file mode 100644
 3249   4177   
index 0000000..9f0f686
 3250         -
-- /dev/null
        4178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3251   4179   
@@ -0,0 +1 @@
        4180  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3252   4181   
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
 3253   4182   
new file mode 100644
 3254   4183   
index 0000000..d1d451a
 3255         -
-- /dev/null
        4184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3256   4185   
@@ -0,0 +1,3 @@
        4186  +
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
        4187  +
Host:example.amazonaws.com
        4188  +
 3257   4189   
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
 3258   4190   
similarity index 99%
 3259   4191   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3260   4192   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3261   4193   
index a17f5ab..81b41e8 100644
 3262   4194   
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
 3263   4195   
new file mode 100644
 3264   4196   
index 0000000..6aa9f99
 3265         -
-- /dev/null
        4197  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3266   4198   
@@ -0,0 +1,2 @@
        4199  +
GET /example/.. HTTP/1.1
        4200  +
Host:example.amazonaws.com
 3267   4201   
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
 3268   4202   
new file mode 100644
 3269   4203   
index 0000000..0468d80
 3270         -
-- /dev/null
        4204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3271   4205   
@@ -0,0 +1,12 @@
        4206  +
{
        4207  +
    "credentials": {
        4208  +
        "access_key_id": "AKIDEXAMPLE",
        4209  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4210  +
    },
        4211  +
    "expiration_in_seconds": 3600,
        4212  +
    "normalize": true,
        4213  +
    "region": "us-east-1",
        4214  +
    "service": "service",
        4215  +
    "sign_body": false,
        4216  +
    "timestamp": "2015-08-30T12:36:00Z"
        4217  +
}
              \
 No newline at end of file
 3272   4218   
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
 3273   4219   
similarity index 99%
 3274   4220   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3275   4221   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3276   4222   
index 47e7128..76db73d 100644
 3277   4223   
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
 3278   4224   
new file mode 100644
 3279   4225   
index 0000000..ca6e84e
 3280         -
-- /dev/null
        4226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3281   4227   
@@ -0,0 +1 @@
        4228  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3282   4229   
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
 3283   4230   
new file mode 100644
 3284   4231   
index 0000000..a7c764c
 3285         -
-- /dev/null
        4232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3286   4233   
@@ -0,0 +1,6 @@
        4234  +
GET /./ HTTP/1.1
        4235  +
Host:example.amazonaws.com
        4236  +
X-Amz-Date:20150830T123600Z
        4237  +
X-Amz-Region-Set:us-east-1
        4238  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4239  +
 3287   4240   
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
 3288   4241   
similarity index 99%
 3289   4242   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3290   4243   
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
 3291   4244   
index 95d7219..600f1d8 100644
 3292   4245   
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
 3293   4246   
new file mode 100644
 3294   4247   
index 0000000..379dcb2
 3295         -
-- /dev/null
        4248  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3296   4249   
@@ -0,0 +1,4 @@
        4250  +
{
        4251  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4252  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4253  +
}
 3297   4254   
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
 3298   4255   
similarity index 99%
 3299   4256   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3300   4257   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3301   4258   
index a34ea26..779c51c 100644
 3302   4259   
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
 3303   4260   
new file mode 100644
 3304   4261   
index 0000000..4b6ed09
 3305         -
-- /dev/null
        4262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3306   4263   
@@ -0,0 +1 @@
        4264  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3307   4265   
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
 3308   4266   
new file mode 100644
 3309   4267   
index 0000000..d6c7176
 3310         -
-- /dev/null
        4268  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3311   4269   
@@ -0,0 +1,3 @@
        4270  +
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
        4271  +
Host:example.amazonaws.com
        4272  +
 3312   4273   
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
 3313   4274   
similarity index 99%
 3314   4275   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3315   4276   
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
 3316   4277   
index 48f855c..6e29a7e 100644
 3317   4278   
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
 3318   4279   
similarity index 61%
 3319   4280   
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
 3320   4281   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3321   4282   
index f3537b7..2c5ff38 100644
 3322         -
-- 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
        4283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3323   4284   
@@ -1,3 +1,2 @@
 3324   4285   
GET /./ HTTP/1.1
 3325   4286   
Host:example.amazonaws.com
 3326         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3327   4287   
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
 3328   4288   
new file mode 100644
 3329   4289   
index 0000000..7bee5c7
 3330         -
-- /dev/null
        4290  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3331   4291   
@@ -0,0 +1,12 @@
        4292  +
{
        4293  +
    "credentials": {
        4294  +
        "access_key_id": "AKIDEXAMPLE",
        4295  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4296  +
    },
        4297  +
    "expiration_in_seconds": 3600,
        4298  +
    "normalize": false,
        4299  +
    "region": "us-east-1",
        4300  +
    "service": "service",
        4301  +
    "sign_body": false,
        4302  +
    "timestamp": "2015-08-30T12:36:00Z"
        4303  +
}
              \
 No newline at end of file
 3332   4304   
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
 3333   4305   
similarity index 99%
 3334   4306   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3335   4307   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3336   4308   
index d05303d..9257ac4 100644
 3337   4309   
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
 3338   4310   
new file mode 100644
 3339   4311   
index 0000000..2eb1aa5
 3340         -
-- /dev/null
        4312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3341   4313   
@@ -0,0 +1 @@
        4314  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3342   4315   
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
 3343   4316   
new file mode 100644
 3344   4317   
index 0000000..df3b1da
 3345         -
-- /dev/null
        4318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3346   4319   
@@ -0,0 +1,6 @@
        4320  +
GET /./ HTTP/1.1
        4321  +
Host:example.amazonaws.com
        4322  +
X-Amz-Date:20150830T123600Z
        4323  +
X-Amz-Region-Set:us-east-1
        4324  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4325  +
 3347   4326   
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
 3348   4327   
similarity index 99%
 3349   4328   
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
 3350   4329   
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
 3351   4330   
index e1bfb39..754b3ed 100644
 3352   4331   
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
 3353   4332   
new file mode 100644
 3354   4333   
index 0000000..379dcb2
 3355         -
-- /dev/null
        4334  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3356   4335   
@@ -0,0 +1,4 @@
        4336  +
{
        4337  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4338  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4339  +
}
 3357   4340   
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
 3358   4341   
similarity index 99%
 3359   4342   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3360   4343   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3361   4344   
index f048d0f..c8edce3 100644
 3362   4345   
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
 3363   4346   
new file mode 100644
 3364   4347   
index 0000000..d3af3b8
 3365         -
-- /dev/null
        4348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3366   4349   
@@ -0,0 +1 @@
        4350  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3367   4351   
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
 3368   4352   
new file mode 100644
 3369   4353   
index 0000000..eb38155
 3370         -
-- /dev/null
        4354  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3371   4355   
@@ -0,0 +1,3 @@
        4356  +
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
        4357  +
Host:example.amazonaws.com
        4358  +
 3372   4359   
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
 3373   4360   
similarity index 99%
 3374   4361   
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
 3375   4362   
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
 3376   4363   
index bfcf245..4f20b8f 100644
 3377   4364   
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
 3378   4365   
new file mode 100644
 3379   4366   
index 0000000..2c5ff38
 3380         -
-- /dev/null
        4367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3381   4368   
@@ -0,0 +1,2 @@
        4369  +
GET /./ HTTP/1.1
        4370  +
Host:example.amazonaws.com
 3382   4371   
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
 3383   4372   
new file mode 100644
 3384   4373   
index 0000000..0468d80
 3385         -
-- /dev/null
        4374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3386   4375   
@@ -0,0 +1,12 @@
        4376  +
{
        4377  +
    "credentials": {
        4378  +
        "access_key_id": "AKIDEXAMPLE",
        4379  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4380  +
    },
        4381  +
    "expiration_in_seconds": 3600,
        4382  +
    "normalize": true,
        4383  +
    "region": "us-east-1",
        4384  +
    "service": "service",
        4385  +
    "sign_body": false,
        4386  +
    "timestamp": "2015-08-30T12:36:00Z"
        4387  +
}
              \
 No newline at end of file
 3387   4388   
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
 3388   4389   
similarity index 99%
 3389   4390   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 3390   4391   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3391   4392   
index 47e7128..76db73d 100644
 3392   4393   
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
 3393   4394   
new file mode 100644
 3394   4395   
index 0000000..0c049ca
 3395         -
-- /dev/null
        4396  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 3396   4397   
@@ -0,0 +1 @@
        4398  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 3397   4399   
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
 3398   4400   
new file mode 100644
 3399   4401   
index 0000000..f4bb1e1
 3400         -
-- /dev/null
        4402  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 3401   4403   
@@ -0,0 +1,6 @@
        4404  +
GET // HTTP/1.1
        4405  +
Host:example.amazonaws.com
        4406  +
X-Amz-Date:20150830T123600Z
        4407  +
X-Amz-Region-Set:us-east-1
        4408  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4409  +
 3402   4410   
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
 3403   4411   
similarity index 99%
 3404   4412   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 3405   4413   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3406   4414   
index 95d7219..600f1d8 100644
 3407   4415   
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
 3408   4416   
new file mode 100644
 3409   4417   
index 0000000..379dcb2
 3410         -
-- /dev/null
        4418  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 3411   4419   
@@ -0,0 +1,4 @@
        4420  +
{
        4421  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4422  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4423  +
}
 3412   4424   
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
 3413   4425   
similarity index 99%
 3414   4426   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 3415   4427   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3416   4428   
index a34ea26..779c51c 100644
 3417   4429   
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
 3418   4430   
new file mode 100644
 3419   4431   
index 0000000..ca52293
 3420         -
-- /dev/null
        4432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 3421   4433   
@@ -0,0 +1 @@
        4434  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 3422   4435   
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
 3423   4436   
new file mode 100644
 3424   4437   
index 0000000..4a212a9
 3425         -
-- /dev/null
        4438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 3426   4439   
@@ -0,0 +1,3 @@
        4440  +
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
        4441  +
Host:example.amazonaws.com
        4442  +
 3427   4443   
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
 3428   4444   
similarity index 99%
 3429   4445   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 3430   4446   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3431   4447   
index 48f855c..6e29a7e 100644
 3432   4448   
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
 3433   4449   
similarity index 61%
 3434   4450   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 3435   4451   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3436   4452   
index ede8e3c..25bc21e 100644
 3437         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        4453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3438   4454   
@@ -1,3 +1,2 @@
 3439   4455   
GET // HTTP/1.1
 3440   4456   
Host:example.amazonaws.com
 3441         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3442   4457   
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
 3443   4458   
new file mode 100644
 3444   4459   
index 0000000..0468d80
 3445         -
-- /dev/null
        4460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 3446   4461   
@@ -0,0 +1,12 @@
        4462  +
{
        4463  +
    "credentials": {
        4464  +
        "access_key_id": "AKIDEXAMPLE",
        4465  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4466  +
    },
        4467  +
    "expiration_in_seconds": 3600,
        4468  +
    "normalize": true,
        4469  +
    "region": "us-east-1",
        4470  +
    "service": "service",
        4471  +
    "sign_body": false,
        4472  +
    "timestamp": "2015-08-30T12:36:00Z"
        4473  +
}
              \
 No newline at end of file
 3447   4474   
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
 3448   4475   
similarity index 99%
 3449   4476   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3450   4477   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3451   4478   
index 2e36c20..a51f1ba 100644
 3452   4479   
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
 3453   4480   
new file mode 100644
 3454   4481   
index 0000000..f5c871f
 3455         -
-- /dev/null
        4482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 3456   4483   
@@ -0,0 +1 @@
        4484  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 3457   4485   
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
 3458   4486   
new file mode 100644
 3459   4487   
index 0000000..bda4718
 3460         -
-- /dev/null
        4488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 3461   4489   
@@ -0,0 +1,6 @@
        4490  +
GET /./example HTTP/1.1
        4491  +
Host:example.amazonaws.com
        4492  +
X-Amz-Date:20150830T123600Z
        4493  +
X-Amz-Region-Set:us-east-1
        4494  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        4495  +
 3462   4496   
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
 3463   4497   
similarity index 99%
 3464   4498   
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
 3465   4499   
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
 3466   4500   
index cd30e8b..2ffe879 100644
 3467   4501   
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
 3468   4502   
new file mode 100644
 3469   4503   
index 0000000..379dcb2
 3470         -
-- /dev/null
        4504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 3471   4505   
@@ -0,0 +1,4 @@
        4506  +
{
        4507  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4508  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4509  +
}
 3472   4510   
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
 3473   4511   
similarity index 99%
 3474   4512   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3475   4513   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3476   4514   
index 77cf28d..45151ea 100644
 3477   4515   
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
 3478   4516   
new file mode 100644
 3479   4517   
index 0000000..11ad7bf
 3480         -
-- /dev/null
        4518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 3481   4519   
@@ -0,0 +1 @@
        4520  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 3482   4521   
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
 3483   4522   
new file mode 100644
 3484   4523   
index 0000000..a7537b1
 3485         -
-- /dev/null
        4524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 3486   4525   
@@ -0,0 +1,3 @@
        4526  +
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
        4527  +
Host:example.amazonaws.com
        4528  +
 3487   4529   
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
 3488   4530   
similarity index 99%
 3489   4531   
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
 3490   4532   
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
 3491   4533   
index 49d9b24..b486672 100644
 3492   4534   
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
 3493   4535   
similarity index 65%
 3494   4536   
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
 3495   4537   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3496   4538   
index 3c91071..5d919c9 100644
 3497         -
-- 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
        4539  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3498   4540   
@@ -1,3 +1,2 @@
 3499   4541   
GET /./example HTTP/1.1
 3500   4542   
Host:example.amazonaws.com
 3501         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3502   4543   
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
 3503   4544   
new file mode 100644
 3504   4545   
index 0000000..7bee5c7
 3505         -
-- /dev/null
        4546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 3506   4547   
@@ -0,0 +1,12 @@
        4548  +
{
        4549  +
    "credentials": {
        4550  +
        "access_key_id": "AKIDEXAMPLE",
        4551  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4552  +
    },
        4553  +
    "expiration_in_seconds": 3600,
        4554  +
    "normalize": false,
        4555  +
    "region": "us-east-1",
        4556  +
    "service": "service",
        4557  +
    "sign_body": false,
        4558  +
    "timestamp": "2015-08-30T12:36:00Z"
        4559  +
}
              \
 No newline at end of file
 3507   4560   
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
 3508   4561   
similarity index 99%
 3509   4562   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3510   4563   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3511   4564   
index 4444842..2355a69 100644
 3512   4565   
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
 3513   4566   
new file mode 100644
 3514   4567   
index 0000000..9c8f737
 3515         -
-- /dev/null
        4568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 3516   4569   
@@ -0,0 +1 @@
        4570  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 3517   4571   
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
 3518   4572   
new file mode 100644
 3519   4573   
index 0000000..aa5980d
 3520         -
-- /dev/null
        4574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 3521   4575   
@@ -0,0 +1,6 @@
        4576  +
GET /./example HTTP/1.1
        4577  +
Host:example.amazonaws.com
        4578  +
X-Amz-Date:20150830T123600Z
        4579  +
X-Amz-Region-Set:us-east-1
        4580  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        4581  +
 3522   4582   
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
 3523   4583   
similarity index 99%
 3524   4584   
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
 3525   4585   
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
 3526   4586   
index cc63510..d056816 100644
 3527   4587   
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
 3528   4588   
new file mode 100644
 3529   4589   
index 0000000..379dcb2
 3530         -
-- /dev/null
        4590  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 3531   4591   
@@ -0,0 +1,4 @@
        4592  +
{
        4593  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4594  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4595  +
}
 3532   4596   
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
 3533   4597   
similarity index 99%
 3534   4598   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3535   4599   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3536   4600   
index ed2cb2d..df9928e 100644
 3537   4601   
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
 3538   4602   
new file mode 100644
 3539   4603   
index 0000000..bb4d86b
 3540         -
-- /dev/null
        4604  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 3541   4605   
@@ -0,0 +1 @@
        4606  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 3542   4607   
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
 3543   4608   
new file mode 100644
 3544   4609   
index 0000000..0061136
 3545         -
-- /dev/null
        4610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 3546   4611   
@@ -0,0 +1,3 @@
        4612  +
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
        4613  +
Host:example.amazonaws.com
        4614  +
 3547   4615   
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
 3548   4616   
similarity index 99%
 3549   4617   
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
 3550   4618   
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
 3551   4619   
index c9f3b6d..418f2d6 100644
 3552   4620   
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
 3553   4621   
new file mode 100644
 3554   4622   
index 0000000..5d919c9
 3555         -
-- /dev/null
        4623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 3556   4624   
@@ -0,0 +1,2 @@
        4625  +
GET /./example HTTP/1.1
        4626  +
Host:example.amazonaws.com
 3557   4627   
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
 3558   4628   
new file mode 100644
 3559   4629   
index 0000000..7bee5c7
 3560         -
-- /dev/null
        4630  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 3561   4631   
@@ -0,0 +1,12 @@
        4632  +
{
        4633  +
    "credentials": {
        4634  +
        "access_key_id": "AKIDEXAMPLE",
        4635  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4636  +
    },
        4637  +
    "expiration_in_seconds": 3600,
        4638  +
    "normalize": false,
        4639  +
    "region": "us-east-1",
        4640  +
    "service": "service",
        4641  +
    "sign_body": false,
        4642  +
    "timestamp": "2015-08-30T12:36:00Z"
        4643  +
}
              \
 No newline at end of file
 3562   4644   
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
 3563   4645   
similarity index 99%
 3564   4646   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 3565   4647   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 3566   4648   
index 8a4d33b..5f809da 100644
 3567   4649   
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
 3568   4650   
new file mode 100644
 3569   4651   
index 0000000..60179e9
 3570         -
-- /dev/null
        4652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 3571   4653   
@@ -0,0 +1 @@
        4654  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 3572   4655   
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
 3573   4656   
new file mode 100644
 3574   4657   
index 0000000..72bf1b7
 3575         -
-- /dev/null
        4658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 3576   4659   
@@ -0,0 +1,6 @@
        4660  +
GET // HTTP/1.1
        4661  +
Host:example.amazonaws.com
        4662  +
X-Amz-Date:20150830T123600Z
        4663  +
X-Amz-Region-Set:us-east-1
        4664  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        4665  +
 3577   4666   
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
 3578   4667   
similarity index 99%
 3579   4668   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 3580   4669   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 3581   4670   
index 874c01c..2b3bf67 100644
 3582   4671   
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
 3583   4672   
new file mode 100644
 3584   4673   
index 0000000..379dcb2
 3585         -
-- /dev/null
        4674  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 3586   4675   
@@ -0,0 +1,4 @@
        4676  +
{
        4677  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4678  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4679  +
}
 3587   4680   
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
 3588   4681   
similarity index 99%
 3589   4682   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 3590   4683   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 3591   4684   
index 81d7b0b..d10ad29 100644
 3592   4685   
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
 3593   4686   
new file mode 100644
 3594   4687   
index 0000000..d9bd824
 3595         -
-- /dev/null
        4688  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 3596   4689   
@@ -0,0 +1 @@
        4690  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 3597   4691   
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
 3598   4692   
new file mode 100644
 3599   4693   
index 0000000..19d1d46
 3600         -
-- /dev/null
        4694  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 3601   4695   
@@ -0,0 +1,3 @@
        4696  +
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
        4697  +
Host:example.amazonaws.com
        4698  +
 3602   4699   
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
 3603   4700   
similarity index 99%
 3604   4701   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 3605   4702   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 3606   4703   
index 17e5279..24c8a5e 100644
 3607   4704   
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
 3608   4705   
new file mode 100644
 3609   4706   
index 0000000..25bc21e
 3610         -
-- /dev/null
        4707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 3611   4708   
@@ -0,0 +1,2 @@
        4709  +
GET // HTTP/1.1
        4710  +
Host:example.amazonaws.com
 3612   4711   
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
 3613   4712   
new file mode 100644
 3614   4713   
index 0000000..0468d80
 3615         -
-- /dev/null
        4714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 3616   4715   
@@ -0,0 +1,12 @@
        4716  +
{
        4717  +
    "credentials": {
        4718  +
        "access_key_id": "AKIDEXAMPLE",
        4719  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4720  +
    },
        4721  +
    "expiration_in_seconds": 3600,
        4722  +
    "normalize": true,
        4723  +
    "region": "us-east-1",
        4724  +
    "service": "service",
        4725  +
    "sign_body": false,
        4726  +
    "timestamp": "2015-08-30T12:36:00Z"
        4727  +
}
              \
 No newline at end of file
 3617   4728   
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
 3618   4729   
similarity index 99%
 3619   4730   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 3620   4731   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 3621   4732   
index fdf9c48..a8e9e02 100644
 3622   4733   
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
 3623   4734   
new file mode 100644
 3624   4735   
index 0000000..ffe1b60
 3625         -
-- /dev/null
        4736  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 3626   4737   
@@ -0,0 +1 @@
        4738  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 3627   4739   
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
 3628   4740   
new file mode 100644
 3629   4741   
index 0000000..3189f55
 3630         -
-- /dev/null
        4742  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 3631   4743   
@@ -0,0 +1,6 @@
        4744  +
GET //example// HTTP/1.1
        4745  +
Host:example.amazonaws.com
        4746  +
X-Amz-Date:20150830T123600Z
        4747  +
X-Amz-Region-Set:us-east-1
        4748  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        4749  +
 3632   4750   
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
 3633   4751   
similarity index 99%
 3634   4752   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 3635   4753   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 3636   4754   
index 8f9c95e..430020e 100644
 3637   4755   
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
 3638   4756   
new file mode 100644
 3639   4757   
index 0000000..379dcb2
 3640         -
-- /dev/null
        4758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 3641   4759   
@@ -0,0 +1,4 @@
        4760  +
{
        4761  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4762  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4763  +
}
 3642   4764   
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
 3643   4765   
similarity index 99%
 3644   4766   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 3645   4767   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 3646   4768   
index 1046735..8d41e37 100644
 3647   4769   
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
 3648   4770   
new file mode 100644
 3649   4771   
index 0000000..93a0fa4
 3650         -
-- /dev/null
        4772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 3651   4773   
@@ -0,0 +1 @@
        4774  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 3652   4775   
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
 3653   4776   
new file mode 100644
 3654   4777   
index 0000000..65c8cb6
 3655         -
-- /dev/null
        4778  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 3656   4779   
@@ -0,0 +1,3 @@
        4780  +
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
        4781  +
Host:example.amazonaws.com
        4782  +
 3657   4783   
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
 3658   4784   
similarity index 99%
 3659   4785   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 3660   4786   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 3661   4787   
index b293cc2..0f4c4c5 100644
 3662   4788   
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
 3663   4789   
similarity index 65%
 3664   4790   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 3665   4791   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3666   4792   
index a4307ce..12e0931 100644
 3667         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        4793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3668   4794   
@@ -1,3 +1,2 @@
 3669   4795   
GET //example// HTTP/1.1
 3670   4796   
Host:example.amazonaws.com
 3671         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3672   4797   
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
 3673   4798   
new file mode 100644
 3674   4799   
index 0000000..7bee5c7
 3675         -
-- /dev/null
        4800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 3676   4801   
@@ -0,0 +1,12 @@
        4802  +
{
        4803  +
    "credentials": {
        4804  +
        "access_key_id": "AKIDEXAMPLE",
        4805  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4806  +
    },
        4807  +
    "expiration_in_seconds": 3600,
        4808  +
    "normalize": false,
        4809  +
    "region": "us-east-1",
        4810  +
    "service": "service",
        4811  +
    "sign_body": false,
        4812  +
    "timestamp": "2015-08-30T12:36:00Z"
        4813  +
}
              \
 No newline at end of file
 3677   4814   
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
 3678   4815   
similarity index 99%
 3679   4816   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 3680   4817   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 3681   4818   
index a9c55f6..76f55ed 100644
 3682   4819   
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
 3683   4820   
new file mode 100644
 3684   4821   
index 0000000..de333b2
 3685         -
-- /dev/null
        4822  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 3686   4823   
@@ -0,0 +1 @@
        4824  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 3687   4825   
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
 3688   4826   
new file mode 100644
 3689   4827   
index 0000000..773ce63
 3690         -
-- /dev/null
        4828  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 3691   4829   
@@ -0,0 +1,6 @@
        4830  +
GET //example// HTTP/1.1
        4831  +
Host:example.amazonaws.com
        4832  +
X-Amz-Date:20150830T123600Z
        4833  +
X-Amz-Region-Set:us-east-1
        4834  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        4835  +
 3692   4836   
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
 3693   4837   
similarity index 99%
 3694   4838   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 3695   4839   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 3696   4840   
index 5c4c2cd..46c3265 100644
 3697   4841   
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
 3698   4842   
new file mode 100644
 3699   4843   
index 0000000..379dcb2
 3700         -
-- /dev/null
        4844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 3701   4845   
@@ -0,0 +1,4 @@
        4846  +
{
        4847  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4848  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4849  +
}
 3702   4850   
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
 3703   4851   
similarity index 99%
 3704   4852   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 3705   4853   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 3706   4854   
index c878ab4..6047ccf 100644
 3707   4855   
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
 3708   4856   
new file mode 100644
 3709   4857   
index 0000000..d61fcd0
 3710         -
-- /dev/null
        4858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 3711   4859   
@@ -0,0 +1 @@
        4860  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 3712   4861   
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
 3713   4862   
new file mode 100644
 3714   4863   
index 0000000..3e37b5b
 3715         -
-- /dev/null
        4864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 3716   4865   
@@ -0,0 +1,3 @@
        4866  +
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
        4867  +
Host:example.amazonaws.com
        4868  +
 3717   4869   
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
 3718   4870   
similarity index 99%
 3719   4871   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 3720   4872   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 3721   4873   
index 5f59645..2537d28 100644
 3722   4874   
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
 3723   4875   
new file mode 100644
 3724   4876   
index 0000000..12e0931
 3725         -
-- /dev/null
        4877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 3726   4878   
@@ -0,0 +1,2 @@
        4879  +
GET //example// HTTP/1.1
        4880  +
Host:example.amazonaws.com
 3727   4881   
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
 3728   4882   
new file mode 100644
 3729   4883   
index 0000000..0468d80
 3730         -
-- /dev/null
        4884  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 3731   4885   
@@ -0,0 +1,12 @@
        4886  +
{
        4887  +
    "credentials": {
        4888  +
        "access_key_id": "AKIDEXAMPLE",
        4889  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4890  +
    },
        4891  +
    "expiration_in_seconds": 3600,
        4892  +
    "normalize": true,
        4893  +
    "region": "us-east-1",
        4894  +
    "service": "service",
        4895  +
    "sign_body": false,
        4896  +
    "timestamp": "2015-08-30T12:36:00Z"
        4897  +
}
              \
 No newline at end of file
 3732   4898   
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
 3733   4899   
new file mode 100644
 3734   4900   
index 0000000..0b2b616
 3735         -
-- /dev/null
        4901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 3736   4902   
@@ -0,0 +1,9 @@
        4903  +
GET
        4904  +
/example%20space/
        4905  +
        4906  +
host:example.amazonaws.com
        4907  +
x-amz-date:20150830T123600Z
        4908  +
x-amz-region-set:us-east-1
        4909  +
        4910  +
host;x-amz-date;x-amz-region-set
        4911  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3737   4912   
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
 3738   4913   
new file mode 100644
 3739   4914   
index 0000000..6e7841d
 3740         -
-- /dev/null
        4915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 3741   4916   
@@ -0,0 +1 @@
        4917  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 3742   4918   
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
 3743   4919   
new file mode 100644
 3744   4920   
index 0000000..0969cd3
 3745         -
-- /dev/null
        4921  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 3746   4922   
@@ -0,0 +1,6 @@
        4923  +
GET /example space/ HTTP/1.1
        4924  +
Host:example.amazonaws.com
        4925  +
X-Amz-Date:20150830T123600Z
        4926  +
X-Amz-Region-Set:us-east-1
        4927  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        4928  +
 3747   4929   
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
 3748   4930   
new file mode 100644
 3749   4931   
index 0000000..ddae6e2
 3750         -
-- /dev/null
        4932  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 3751   4933   
@@ -0,0 +1,4 @@
        4934  +
AWS4-ECDSA-P256-SHA256
        4935  +
20150830T123600Z
        4936  +
20150830/service/aws4_request
        4937  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 3752   4938   
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
 3753   4939   
new file mode 100644
 3754   4940   
index 0000000..379dcb2
 3755         -
-- /dev/null
        4941  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 3756   4942   
@@ -0,0 +1,4 @@
        4943  +
{
        4944  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4945  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4946  +
}
 3757   4947   
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
 3758   4948   
new file mode 100644
 3759   4949   
index 0000000..a66b3cb
 3760         -
-- /dev/null
        4950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 3761   4951   
@@ -0,0 +1,7 @@
        4952  +
GET
        4953  +
/example%20space/
        4954  +
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
        4955  +
host:example.amazonaws.com
        4956  +
        4957  +
host
        4958  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3762   4959   
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
 3763   4960   
new file mode 100644
 3764   4961   
index 0000000..b3253ae
 3765         -
-- /dev/null
        4962  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 3766   4963   
@@ -0,0 +1 @@
        4964  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 3767   4965   
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
 3768   4966   
new file mode 100644
 3769   4967   
index 0000000..9e335b2
 3770         -
-- /dev/null
        4968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 3771   4969   
@@ -0,0 +1,3 @@
        4970  +
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
        4971  +
Host:example.amazonaws.com
        4972  +
 3772   4973   
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
 3773   4974   
new file mode 100644
 3774   4975   
index 0000000..b6ff6fb
 3775         -
-- /dev/null
        4976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 3776   4977   
@@ -0,0 +1,4 @@
        4978  +
AWS4-ECDSA-P256-SHA256
        4979  +
20150830T123600Z
        4980  +
20150830/service/aws4_request
        4981  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 3777   4982   
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
 3778   4983   
new file mode 100644
 3779   4984   
index 0000000..ab509ab
 3780         -
-- /dev/null
        4985  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 3781   4986   
@@ -0,0 +1,2 @@
        4987  +
GET /example space/ HTTP/1.1
        4988  +
Host:example.amazonaws.com
 3782   4989   
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
 3783   4990   
new file mode 100644
 3784   4991   
index 0000000..7bee5c7
 3785         -
-- /dev/null
        4992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 3786   4993   
@@ -0,0 +1,12 @@
        4994  +
{
        4995  +
    "credentials": {
        4996  +
        "access_key_id": "AKIDEXAMPLE",
        4997  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4998  +
    },
        4999  +
    "expiration_in_seconds": 3600,
        5000  +
    "normalize": false,
        5001  +
    "region": "us-east-1",
        5002  +
    "service": "service",
        5003  +
    "sign_body": false,
        5004  +
    "timestamp": "2015-08-30T12:36:00Z"
        5005  +
}
              \
 No newline at end of file
 3787   5006   
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
 3788   5007   
new file mode 100644
 3789   5008   
index 0000000..0b2b616
 3790         -
-- /dev/null
        5009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 3791   5010   
@@ -0,0 +1,9 @@
        5011  +
GET
        5012  +
/example%20space/
        5013  +
        5014  +
host:example.amazonaws.com
        5015  +
x-amz-date:20150830T123600Z
        5016  +
x-amz-region-set:us-east-1
        5017  +
        5018  +
host;x-amz-date;x-amz-region-set
        5019  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3792   5020   
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
 3793   5021   
new file mode 100644
 3794   5022   
index 0000000..e75ae08
 3795         -
-- /dev/null
        5023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 3796   5024   
@@ -0,0 +1 @@
        5025  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 3797   5026   
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
 3798   5027   
new file mode 100644
 3799   5028   
index 0000000..cb089db
 3800         -
-- /dev/null
        5029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 3801   5030   
@@ -0,0 +1,6 @@
        5031  +
GET /example space/ HTTP/1.1
        5032  +
Host:example.amazonaws.com
        5033  +
X-Amz-Date:20150830T123600Z
        5034  +
X-Amz-Region-Set:us-east-1
        5035  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5036  +
 3802   5037   
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
 3803   5038   
new file mode 100644
 3804   5039   
index 0000000..ddae6e2
 3805         -
-- /dev/null
        5040  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 3806   5041   
@@ -0,0 +1,4 @@
        5042  +
AWS4-ECDSA-P256-SHA256
        5043  +
20150830T123600Z
        5044  +
20150830/service/aws4_request
        5045  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 3807   5046   
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
 3808   5047   
new file mode 100644
 3809   5048   
index 0000000..379dcb2
 3810         -
-- /dev/null
        5049  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 3811   5050   
@@ -0,0 +1,4 @@
        5051  +
{
        5052  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5053  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5054  +
}
 3812   5055   
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
 3813   5056   
new file mode 100644
 3814   5057   
index 0000000..a66b3cb
 3815         -
-- /dev/null
        5058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 3816   5059   
@@ -0,0 +1,7 @@
        5060  +
GET
        5061  +
/example%20space/
        5062  +
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
        5063  +
host:example.amazonaws.com
        5064  +
        5065  +
host
        5066  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3817   5067   
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
 3818   5068   
new file mode 100644
 3819   5069   
index 0000000..66a80c3
 3820         -
-- /dev/null
        5070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 3821   5071   
@@ -0,0 +1 @@
        5072  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 3822   5073   
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
 3823   5074   
new file mode 100644
 3824   5075   
index 0000000..7d1b9d9
 3825         -
-- /dev/null
        5076  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 3826   5077   
@@ -0,0 +1,3 @@
        5078  +
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
        5079  +
Host:example.amazonaws.com
        5080  +
 3827   5081   
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
 3828   5082   
new file mode 100644
 3829   5083   
index 0000000..b6ff6fb
 3830         -
-- /dev/null
        5084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 3831   5085   
@@ -0,0 +1,4 @@
        5086  +
AWS4-ECDSA-P256-SHA256
        5087  +
20150830T123600Z
        5088  +
20150830/service/aws4_request
        5089  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 3832   5090   
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
 3833   5091   
new file mode 100644
 3834   5092   
index 0000000..ab509ab
 3835         -
-- /dev/null
        5093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 3836   5094   
@@ -0,0 +1,2 @@
        5095  +
GET /example space/ HTTP/1.1
        5096  +
Host:example.amazonaws.com
 3837   5097   
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
 3838   5098   
new file mode 100644
 3839   5099   
index 0000000..0468d80
 3840         -
-- /dev/null
        5100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 3841   5101   
@@ -0,0 +1,12 @@
        5102  +
{
        5103  +
    "credentials": {
        5104  +
        "access_key_id": "AKIDEXAMPLE",
        5105  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5106  +
    },
        5107  +
    "expiration_in_seconds": 3600,
        5108  +
    "normalize": true,
        5109  +
    "region": "us-east-1",
        5110  +
    "service": "service",
        5111  +
    "sign_body": false,
        5112  +
    "timestamp": "2015-08-30T12:36:00Z"
        5113  +
}
              \
 No newline at end of file
 3842   5114   
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
 3843   5115   
similarity index 99%
 3844   5116   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 3845   5117   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 3846   5118   
index b0db648..46d76bb 100644
 3847   5119   
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
 3848   5120   
new file mode 100644
 3849   5121   
index 0000000..53c0cb6
 3850         -
-- /dev/null
        5122  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 3851   5123   
@@ -0,0 +1 @@
        5124  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 3852   5125   
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
 3853   5126   
new file mode 100644
 3854   5127   
index 0000000..3bdb653
 3855         -
-- /dev/null
        5128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 3856   5129   
@@ -0,0 +1,6 @@
        5130  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5131  +
Host:example.amazonaws.com
        5132  +
X-Amz-Date:20150830T123600Z
        5133  +
X-Amz-Region-Set:us-east-1
        5134  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5135  +
 3857   5136   
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
 3858   5137   
similarity index 99%
 3859   5138   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 3860   5139   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 3861   5140   
index 20c7cd6..3b30173 100644
 3862   5141   
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
 3863   5142   
new file mode 100644
 3864   5143   
index 0000000..379dcb2
 3865         -
-- /dev/null
        5144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 3866   5145   
@@ -0,0 +1,4 @@
        5146  +
{
        5147  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5148  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5149  +
}
 3867   5150   
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
 3868   5151   
similarity index 99%
 3869   5152   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 3870   5153   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 3871   5154   
index f9fb726..7e93f58 100644
 3872   5155   
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
 3873   5156   
new file mode 100644
 3874   5157   
index 0000000..48311a8
 3875         -
-- /dev/null
        5158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 3876   5159   
@@ -0,0 +1 @@
        5160  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 3877   5161   
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
 3878   5162   
new file mode 100644
 3879   5163   
index 0000000..82da9be
 3880         -
-- /dev/null
        5164  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 3881   5165   
@@ -0,0 +1,3 @@
        5166  +
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
        5167  +
Host:example.amazonaws.com
        5168  +
 3882   5169   
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
 3883   5170   
similarity index 99%
 3884   5171   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 3885   5172   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 3886   5173   
index ef06e89..4aab9a2 100644
 3887   5174   
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
 3888   5175   
similarity index 80%
 3889   5176   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 3890   5177   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 3891   5178   
index da760cd..a149694 100644
 3892         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 3893   5180   
@@ -1,3 +1,2 @@
 3894   5181   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 3895   5182   
Host:example.amazonaws.com
 3896         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3897   5183   
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
 3898   5184   
new file mode 100644
 3899   5185   
index 0000000..0468d80
 3900         -
-- /dev/null
        5186  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 3901   5187   
@@ -0,0 +1,12 @@
        5188  +
{
        5189  +
    "credentials": {
        5190  +
        "access_key_id": "AKIDEXAMPLE",
        5191  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5192  +
    },
        5193  +
    "expiration_in_seconds": 3600,
        5194  +
    "normalize": true,
        5195  +
    "region": "us-east-1",
        5196  +
    "service": "service",
        5197  +
    "sign_body": false,
        5198  +
    "timestamp": "2015-08-30T12:36:00Z"
        5199  +
}
              \
 No newline at end of file
 3902   5200   
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
 3903   5201   
new file mode 100644
 3904   5202   
index 0000000..0f1afe7
 3905         -
-- /dev/null
        5203  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 3906   5204   
@@ -0,0 +1,9 @@
        5205  +
GET
        5206  +
/%E1%88%B4
        5207  +
        5208  +
host:example.amazonaws.com
        5209  +
x-amz-date:20150830T123600Z
        5210  +
x-amz-region-set:us-east-1
        5211  +
        5212  +
host;x-amz-date;x-amz-region-set
        5213  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3907   5214   
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
 3908   5215   
new file mode 100644
 3909   5216   
index 0000000..4b9af6c
 3910         -
-- /dev/null
        5217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 3911   5218   
@@ -0,0 +1 @@
        5219  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 3912   5220   
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
 3913   5221   
new file mode 100644
 3914   5222   
index 0000000..d42d7b3
 3915         -
-- /dev/null
        5223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 3916   5224   
@@ -0,0 +1,6 @@
        5225  +
GET /ሴ HTTP/1.1
        5226  +
Host:example.amazonaws.com
        5227  +
X-Amz-Date:20150830T123600Z
        5228  +
X-Amz-Region-Set:us-east-1
        5229  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        5230  +
 3917   5231   
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
 3918   5232   
new file mode 100644
 3919   5233   
index 0000000..0827f62
 3920         -
-- /dev/null
        5234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 3921   5235   
@@ -0,0 +1,4 @@
        5236  +
AWS4-ECDSA-P256-SHA256
        5237  +
20150830T123600Z
        5238  +
20150830/service/aws4_request
        5239  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 3922   5240   
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
 3923   5241   
new file mode 100644
 3924   5242   
index 0000000..379dcb2
 3925         -
-- /dev/null
        5243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 3926   5244   
@@ -0,0 +1,4 @@
        5245  +
{
        5246  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5247  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5248  +
}
 3927   5249   
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
 3928   5250   
new file mode 100644
 3929   5251   
index 0000000..a41a2f8
 3930         -
-- /dev/null
        5252  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 3931   5253   
@@ -0,0 +1,7 @@
        5254  +
GET
        5255  +
/%E1%88%B4
        5256  +
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
        5257  +
host:example.amazonaws.com
        5258  +
        5259  +
host
        5260  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3932   5261   
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
 3933   5262   
new file mode 100644
 3934   5263   
index 0000000..a5c7f4f
 3935         -
-- /dev/null
        5264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 3936   5265   
@@ -0,0 +1 @@
        5266  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 3937   5267   
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
 3938   5268   
new file mode 100644
 3939   5269   
index 0000000..492ed33
 3940         -
-- /dev/null
        5270  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 3941   5271   
@@ -0,0 +1,3 @@
        5272  +
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
        5273  +
Host:example.amazonaws.com
        5274  +
 3942   5275   
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
 3943   5276   
new file mode 100644
 3944   5277   
index 0000000..a93108f
 3945         -
-- /dev/null
        5278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 3946   5279   
@@ -0,0 +1,4 @@
        5280  +
AWS4-ECDSA-P256-SHA256
        5281  +
20150830T123600Z
        5282  +
20150830/service/aws4_request
        5283  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 3947   5284   
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
 3948   5285   
new file mode 100644
 3949   5286   
index 0000000..9e273f6
 3950         -
-- /dev/null
        5287  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 3951   5288   
@@ -0,0 +1,2 @@
        5289  +
GET /ሴ HTTP/1.1
        5290  +
Host:example.amazonaws.com
 3952   5291   
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
 3953   5292   
new file mode 100644
 3954   5293   
index 0000000..0468d80
 3955         -
-- /dev/null
        5294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 3956   5295   
@@ -0,0 +1,12 @@
        5296  +
{
        5297  +
    "credentials": {
        5298  +
        "access_key_id": "AKIDEXAMPLE",
        5299  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5300  +
    },
        5301  +
    "expiration_in_seconds": 3600,
        5302  +
    "normalize": true,
        5303  +
    "region": "us-east-1",
        5304  +
    "service": "service",
        5305  +
    "sign_body": false,
        5306  +
    "timestamp": "2015-08-30T12:36:00Z"
        5307  +
}
              \
 No newline at end of file
 3957   5308   
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
 3958   5309   
similarity index 99%
 3959   5310   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 3960   5311   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 3961   5312   
index bb9d4bf..edc0bb4 100644
 3962   5313   
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
 3963   5314   
new file mode 100644
 3964   5315   
index 0000000..ee9a272
 3965         -
-- /dev/null
        5316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 3966   5317   
@@ -0,0 +1 @@
        5318  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 3967   5319   
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
 3968   5320   
new file mode 100644
 3969   5321   
index 0000000..2090343
 3970         -
-- /dev/null
        5322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 3971   5323   
@@ -0,0 +1,6 @@
        5324  +
GET /?Param1=value1 HTTP/1.1
        5325  +
Host:example.amazonaws.com
        5326  +
X-Amz-Date:20150830T123600Z
        5327  +
X-Amz-Region-Set:us-east-1
        5328  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        5329  +
 3972   5330   
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
 3973   5331   
similarity index 99%
 3974   5332   
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
 3975   5333   
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
 3976   5334   
index a176f1d..06ed74f 100644
 3977   5335   
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
 3978   5336   
new file mode 100644
 3979   5337   
index 0000000..379dcb2
 3980         -
-- /dev/null
        5338  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 3981   5339   
@@ -0,0 +1,4 @@
        5340  +
{
        5341  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5342  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5343  +
}
 3982   5344   
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
 3983   5345   
similarity index 99%
 3984   5346   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 3985   5347   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 3986   5348   
index 344384b..a875d70 100644
 3987   5349   
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
 3988   5350   
new file mode 100644
 3989   5351   
index 0000000..ef93624
 3990         -
-- /dev/null
        5352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 3991   5353   
@@ -0,0 +1 @@
        5354  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 3992   5355   
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
 3993   5356   
new file mode 100644
 3994   5357   
index 0000000..92829f7
 3995         -
-- /dev/null
        5358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 3996   5359   
@@ -0,0 +1,3 @@
        5360  +
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
        5361  +
Host:example.amazonaws.com
        5362  +
 3997   5363   
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
 3998   5364   
similarity index 99%
 3999   5365   
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
 4000   5366   
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
 4001   5367   
index b625052..4ff9191 100644
 4002   5368   
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
 4003   5369   
similarity index 67%
 4004   5370   
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
 4005   5371   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4006   5372   
index 970d0a0..f4a03bb 100644
 4007         -
-- 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
        5373  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4008   5374   
@@ -1,3 +1,2 @@
 4009   5375   
GET /?Param1=value1 HTTP/1.1
 4010   5376   
Host:example.amazonaws.com
 4011         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4012   5377   
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
 4013   5378   
new file mode 100644
 4014   5379   
index 0000000..0468d80
 4015         -
-- /dev/null
        5380  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4016   5381   
@@ -0,0 +1,12 @@
        5382  +
{
        5383  +
    "credentials": {
        5384  +
        "access_key_id": "AKIDEXAMPLE",
        5385  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5386  +
    },
        5387  +
    "expiration_in_seconds": 3600,
        5388  +
    "normalize": true,
        5389  +
    "region": "us-east-1",
        5390  +
    "service": "service",
        5391  +
    "sign_body": false,
        5392  +
    "timestamp": "2015-08-30T12:36:00Z"
        5393  +
}
              \
 No newline at end of file
 4017   5394   
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
 4018   5395   
new file mode 100644
 4019   5396   
index 0000000..da07537
 4020         -
-- /dev/null
        5397  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4021   5398   
@@ -0,0 +1,9 @@
        5399  +
GET
        5400  +
/
        5401  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        5402  +
host:example.amazonaws.com
        5403  +
x-amz-date:20150830T123600Z
        5404  +
x-amz-region-set:us-east-1
        5405  +
        5406  +
host;x-amz-date;x-amz-region-set
        5407  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4022   5408   
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
 4023   5409   
new file mode 100644
 4024   5410   
index 0000000..edb21e5
 4025         -
-- /dev/null
        5411  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4026   5412   
@@ -0,0 +1 @@
        5413  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4027   5414   
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
 4028   5415   
new file mode 100644
 4029   5416   
index 0000000..e60394c
 4030         -
-- /dev/null
        5417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4031   5418   
@@ -0,0 +1,6 @@
        5419  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5420  +
Host:example.amazonaws.com
        5421  +
X-Amz-Date:20150830T123600Z
        5422  +
X-Amz-Region-Set:us-east-1
        5423  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        5424  +
 4032   5425   
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
 4033   5426   
new file mode 100644
 4034   5427   
index 0000000..1dfc886
 4035         -
-- /dev/null
        5428  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4036   5429   
@@ -0,0 +1,4 @@
        5430  +
AWS4-ECDSA-P256-SHA256
        5431  +
20150830T123600Z
        5432  +
20150830/service/aws4_request
        5433  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4037   5434   
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
 4038   5435   
new file mode 100644
 4039   5436   
index 0000000..379dcb2
 4040         -
-- /dev/null
        5437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4041   5438   
@@ -0,0 +1,4 @@
        5439  +
{
        5440  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5441  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5442  +
}
 4042   5443   
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
 4043   5444   
new file mode 100644
 4044   5445   
index 0000000..e94dc0c
 4045         -
-- /dev/null
        5446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4046   5447   
@@ -0,0 +1,7 @@
        5448  +
GET
        5449  +
/
        5450  +
%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
        5451  +
host:example.amazonaws.com
        5452  +
        5453  +
host
        5454  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4047   5455   
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
 4048   5456   
new file mode 100644
 4049   5457   
index 0000000..7489437
 4050         -
-- /dev/null
        5458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4051   5459   
@@ -0,0 +1 @@
        5460  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4052   5461   
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
 4053   5462   
new file mode 100644
 4054   5463   
index 0000000..90c0e73
 4055         -
-- /dev/null
        5464  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4056   5465   
@@ -0,0 +1,3 @@
        5466  +
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
        5467  +
Host:example.amazonaws.com
        5468  +
 4057   5469   
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
 4058   5470   
new file mode 100644
 4059   5471   
index 0000000..ab8a711
 4060         -
-- /dev/null
        5472  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4061   5473   
@@ -0,0 +1,4 @@
        5474  +
AWS4-ECDSA-P256-SHA256
        5475  +
20150830T123600Z
        5476  +
20150830/service/aws4_request
        5477  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4062   5478   
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
 4063   5479   
new file mode 100644
 4064   5480   
index 0000000..368c6e3
 4065         -
-- /dev/null
        5481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4066   5482   
@@ -0,0 +1,2 @@
        5483  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5484  +
Host:example.amazonaws.com
 4067   5485   
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
 4068   5486   
new file mode 100644
 4069   5487   
index 0000000..0468d80
 4070         -
-- /dev/null
        5488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4071   5489   
@@ -0,0 +1,12 @@
        5490  +
{
        5491  +
    "credentials": {
        5492  +
        "access_key_id": "AKIDEXAMPLE",
        5493  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5494  +
    },
        5495  +
    "expiration_in_seconds": 3600,
        5496  +
    "normalize": true,
        5497  +
    "region": "us-east-1",
        5498  +
    "service": "service",
        5499  +
    "sign_body": false,
        5500  +
    "timestamp": "2015-08-30T12:36:00Z"
        5501  +
}
              \
 No newline at end of file
 4072   5502   
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
 4073   5503   
similarity index 99%
 4074   5504   
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
 4075   5505   
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
 4076   5506   
index 74f625a..3db56f7 100644
 4077   5507   
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
 4078   5508   
new file mode 100644
 4079   5509   
index 0000000..e6042bc
 4080         -
-- /dev/null
        5510  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4081   5511   
@@ -0,0 +1 @@
        5512  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4082   5513   
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
 4083   5514   
new file mode 100644
 4084   5515   
index 0000000..5505969
 4085         -
-- /dev/null
        5516  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4086   5517   
@@ -0,0 +1,6 @@
        5518  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        5519  +
Host:example.amazonaws.com
        5520  +
X-Amz-Date:20150830T123600Z
        5521  +
X-Amz-Region-Set:us-east-1
        5522  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        5523  +
 4087   5524   
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
 4088   5525   
similarity index 99%
 4089   5526   
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
 4090   5527   
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
 4091   5528   
index 44873b7..e8f5e31 100644
 4092   5529   
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
 4093   5530   
new file mode 100644
 4094   5531   
index 0000000..379dcb2
 4095         -
-- /dev/null
        5532  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4096   5533   
@@ -0,0 +1,4 @@
        5534  +
{
        5535  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5536  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5537  +
}
 4097   5538   
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
 4098   5539   
similarity index 99%
 4099   5540   
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
 4100   5541   
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
 4101   5542   
index 6d30727..3fe6a9f 100644
 4102   5543   
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
 4103   5544   
new file mode 100644
 4104   5545   
index 0000000..3f35de8
 4105         -
-- /dev/null
        5546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4106   5547   
@@ -0,0 +1 @@
        5548  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 4107   5549   
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
 4108   5550   
new file mode 100644
 4109   5551   
index 0000000..30b336b
 4110         -
-- /dev/null
        5552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 4111   5553   
@@ -0,0 +1,3 @@
        5554  +
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
        5555  +
Host:example.amazonaws.com
        5556  +
 4112   5557   
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
 4113   5558   
similarity index 99%
 4114   5559   
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
 4115   5560   
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
 4116   5561   
index 99d0510..7f0565f 100644
 4117   5562   
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
 4118   5563   
similarity index 100%
 4119   5564   
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
 4120   5565   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 4121   5566   
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
 4122   5567   
new file mode 100644
 4123   5568   
index 0000000..0468d80
 4124         -
-- /dev/null
        5569  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 4125   5570   
@@ -0,0 +1,12 @@
        5571  +
{
        5572  +
    "credentials": {
        5573  +
        "access_key_id": "AKIDEXAMPLE",
        5574  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5575  +
    },
        5576  +
    "expiration_in_seconds": 3600,
        5577  +
    "normalize": true,
        5578  +
    "region": "us-east-1",
        5579  +
    "service": "service",
        5580  +
    "sign_body": false,
        5581  +
    "timestamp": "2015-08-30T12:36:00Z"
        5582  +
}
              \
 No newline at end of file
 4126   5583   
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
 4127   5584   
similarity index 99%
 4128   5585   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 4129   5586   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4130   5587   
index 816c862..cc4537a 100644
 4131   5588   
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
 4132   5589   
new file mode 100644
 4133   5590   
index 0000000..70d38c1
 4134         -
-- /dev/null
        5591  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 4135   5592   
@@ -0,0 +1 @@
        5593  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 4136   5594   
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
 4137   5595   
new file mode 100644
 4138   5596   
index 0000000..0647eea
 4139         -
-- /dev/null
        5597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 4140   5598   
@@ -0,0 +1,6 @@
        5599  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5600  +
Host:example.amazonaws.com
        5601  +
X-Amz-Date:20150830T123600Z
        5602  +
X-Amz-Region-Set:us-east-1
        5603  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        5604  +
 4141   5605   
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
 4142   5606   
similarity index 99%
 4143   5607   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 4144   5608   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4145   5609   
index 6129fc5..cc19d14 100644
 4146   5610   
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
 4147   5611   
new file mode 100644
 4148   5612   
index 0000000..379dcb2
 4149         -
-- /dev/null
        5613  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 4150   5614   
@@ -0,0 +1,4 @@
        5615  +
{
        5616  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5617  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5618  +
}
 4151   5619   
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
 4152   5620   
similarity index 99%
 4153   5621   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 4154   5622   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4155   5623   
index b77ee9f..ed6a10e 100644
 4156   5624   
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
 4157   5625   
new file mode 100644
 4158   5626   
index 0000000..2ceba7b
 4159         -
-- /dev/null
        5627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 4160   5628   
@@ -0,0 +1 @@
        5629  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 4161   5630   
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
 4162   5631   
new file mode 100644
 4163   5632   
index 0000000..0cd6d0a
 4164         -
-- /dev/null
        5633  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 4165   5634   
@@ -0,0 +1,3 @@
        5635  +
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
        5636  +
Host:example.amazonaws.com
        5637  +
 4166   5638   
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
 4167   5639   
similarity index 99%
 4168   5640   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 4169   5641   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4170   5642   
index 1cfed7a..aad1421 100644
 4171   5643   
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
 4172   5644   
similarity index 86%
 4173   5645   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 4174   5646   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4175   5647   
index d2833b3..36b2fe3 100644
 4176         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        5648  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4177   5649   
@@ -1,3 +1,2 @@
 4178   5650   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4179   5651   
Host:example.amazonaws.com
 4180         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4181   5652   
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
 4182   5653   
new file mode 100644
 4183   5654   
index 0000000..0468d80
 4184         -
-- /dev/null
        5655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 4185   5656   
@@ -0,0 +1,12 @@
        5657  +
{
        5658  +
    "credentials": {
        5659  +
        "access_key_id": "AKIDEXAMPLE",
        5660  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5661  +
    },
        5662  +
    "expiration_in_seconds": 3600,
        5663  +
    "normalize": true,
        5664  +
    "region": "us-east-1",
        5665  +
    "service": "service",
        5666  +
    "sign_body": false,
        5667  +
    "timestamp": "2015-08-30T12:36:00Z"
        5668  +
}
              \
 No newline at end of file
 4186   5669   
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
 4187   5670   
new file mode 100644
 4188   5671   
index 0000000..76db73d
 4189         -
-- /dev/null
        5672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 4190   5673   
@@ -0,0 +1,9 @@
        5674  +
GET
        5675  +
/
        5676  +
        5677  +
host:example.amazonaws.com
        5678  +
x-amz-date:20150830T123600Z
        5679  +
x-amz-region-set:us-east-1
        5680  +
        5681  +
host;x-amz-date;x-amz-region-set
        5682  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4191   5683   
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
 4192   5684   
new file mode 100644
 4193   5685   
index 0000000..281cc62
 4194         -
-- /dev/null
        5686  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 4195   5687   
@@ -0,0 +1 @@
        5688  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 4196   5689   
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
 4197   5690   
new file mode 100644
 4198   5691   
index 0000000..cce9925
 4199         -
-- /dev/null
        5692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 4200   5693   
@@ -0,0 +1,6 @@
        5694  +
GET / HTTP/1.1
        5695  +
Host:example.amazonaws.com
        5696  +
X-Amz-Date:20150830T123600Z
        5697  +
X-Amz-Region-Set:us-east-1
        5698  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        5699  +
 4201   5700   
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
 4202   5701   
new file mode 100644
 4203   5702   
index 0000000..600f1d8
 4204         -
-- /dev/null
        5703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 4205   5704   
@@ -0,0 +1,4 @@
        5705  +
AWS4-ECDSA-P256-SHA256
        5706  +
20150830T123600Z
        5707  +
20150830/service/aws4_request
        5708  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4206   5709   
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
 4207   5710   
new file mode 100644
 4208   5711   
index 0000000..379dcb2
 4209         -
-- /dev/null
        5712  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 4210   5713   
@@ -0,0 +1,4 @@
        5714  +
{
        5715  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5716  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5717  +
}
 4211   5718   
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
 4212   5719   
new file mode 100644
 4213   5720   
index 0000000..779c51c
 4214         -
-- /dev/null
        5721  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 4215   5722   
@@ -0,0 +1,7 @@
        5723  +
GET
        5724  +
/
        5725  +
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
        5726  +
host:example.amazonaws.com
        5727  +
        5728  +
host
        5729  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4216   5730   
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
 4217   5731   
new file mode 100644
 4218   5732   
index 0000000..2979e5e
 4219         -
-- /dev/null
        5733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 4220   5734   
@@ -0,0 +1 @@
        5735  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 4221   5736   
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
 4222   5737   
new file mode 100644
 4223   5738   
index 0000000..1b3179c
 4224         -
-- /dev/null
        5739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 4225   5740   
@@ -0,0 +1,3 @@
        5741  +
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
        5742  +
Host:example.amazonaws.com
        5743  +
 4226   5744   
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
 4227   5745   
new file mode 100644
 4228   5746   
index 0000000..6e29a7e
 4229         -
-- /dev/null
        5747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 4230   5748   
@@ -0,0 +1,4 @@
        5749  +
AWS4-ECDSA-P256-SHA256
        5750  +
20150830T123600Z
        5751  +
20150830/service/aws4_request
        5752  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4231   5753   
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
 4232   5754   
similarity index 60%
 4233   5755   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 4234   5756   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4235   5757   
index 0f7a9bf..e659c3b 100644
 4236         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        5758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4237   5759   
@@ -1,3 +1,2 @@
 4238   5760   
GET / HTTP/1.1
 4239   5761   
Host:example.amazonaws.com
 4240         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4241   5762   
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
 4242   5763   
new file mode 100644
 4243   5764   
index 0000000..0468d80
 4244         -
-- /dev/null
        5765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 4245   5766   
@@ -0,0 +1,12 @@
        5767  +
{
        5768  +
    "credentials": {
        5769  +
        "access_key_id": "AKIDEXAMPLE",
        5770  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5771  +
    },
        5772  +
    "expiration_in_seconds": 3600,
        5773  +
    "normalize": true,
        5774  +
    "region": "us-east-1",
        5775  +
    "service": "service",
        5776  +
    "sign_body": false,
        5777  +
    "timestamp": "2015-08-30T12:36:00Z"
        5778  +
}
              \
 No newline at end of file
 4246   5779   
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
 4247   5780   
new file mode 100644
 4248   5781   
index 0000000..8841ddf
 4249         -
-- /dev/null
        5782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 4250   5783   
@@ -0,0 +1,9 @@
        5784  +
GET
        5785  +
/
        5786  +
%E1%88%B4=bar
        5787  +
host:example.amazonaws.com
        5788  +
x-amz-date:20150830T123600Z
        5789  +
x-amz-region-set:us-east-1
        5790  +
        5791  +
host;x-amz-date;x-amz-region-set
        5792  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4251   5793   
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
 4252   5794   
new file mode 100644
 4253   5795   
index 0000000..1497add
 4254         -
-- /dev/null
        5796  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 4255   5797   
@@ -0,0 +1 @@
        5798  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 4256   5799   
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
 4257   5800   
new file mode 100644
 4258   5801   
index 0000000..961bc10
 4259         -
-- /dev/null
        5802  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 4260   5803   
@@ -0,0 +1,6 @@
        5804  +
GET /?ሴ=bar HTTP/1.1
        5805  +
Host:example.amazonaws.com
        5806  +
X-Amz-Date:20150830T123600Z
        5807  +
X-Amz-Region-Set:us-east-1
        5808  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        5809  +
 4261   5810   
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
 4262   5811   
new file mode 100644
 4263   5812   
index 0000000..e78ed70
 4264         -
-- /dev/null
        5813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 4265   5814   
@@ -0,0 +1,4 @@
        5815  +
AWS4-ECDSA-P256-SHA256
        5816  +
20150830T123600Z
        5817  +
20150830/service/aws4_request
        5818  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 4266   5819   
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
 4267   5820   
new file mode 100644
 4268   5821   
index 0000000..379dcb2
 4269         -
-- /dev/null
        5822  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 4270   5823   
@@ -0,0 +1,4 @@
        5824  +
{
        5825  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5826  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5827  +
}
 4271   5828   
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
 4272   5829   
new file mode 100644
 4273   5830   
index 0000000..6d5ae93
 4274         -
-- /dev/null
        5831  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 4275   5832   
@@ -0,0 +1,7 @@
        5833  +
GET
        5834  +
/
        5835  +
%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
        5836  +
host:example.amazonaws.com
        5837  +
        5838  +
host
        5839  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4276   5840   
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
 4277   5841   
new file mode 100644
 4278   5842   
index 0000000..92107f2
 4279         -
-- /dev/null
        5843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 4280   5844   
@@ -0,0 +1 @@
        5845  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 4281   5846   
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
 4282   5847   
new file mode 100644
 4283   5848   
index 0000000..bb8a75b
 4284         -
-- /dev/null
        5849  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 4285   5850   
@@ -0,0 +1,3 @@
        5851  +
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
        5852  +
Host:example.amazonaws.com
        5853  +
 4286   5854   
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
 4287   5855   
new file mode 100644
 4288   5856   
index 0000000..9fa94c7
 4289         -
-- /dev/null
        5857  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 4290   5858   
@@ -0,0 +1,4 @@
        5859  +
AWS4-ECDSA-P256-SHA256
        5860  +
20150830T123600Z
        5861  +
20150830/service/aws4_request
        5862  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 4291   5863   
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
 4292   5864   
new file mode 100644
 4293   5865   
index 0000000..aff333a
 4294         -
-- /dev/null
        5866  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 4295   5867   
@@ -0,0 +1,2 @@
        5868  +
GET /?ሴ=bar HTTP/1.1
        5869  +
Host:example.amazonaws.com
 4296   5870   
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
 4297   5871   
new file mode 100644
 4298   5872   
index 0000000..a334e18
 4299         -
-- /dev/null
        5873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 4300   5874   
@@ -0,0 +1,13 @@
        5875  +
{
        5876  +
    "credentials": {
        5877  +
        "access_key_id": "AKIDEXAMPLE",
        5878  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        5879  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        5880  +
    },
        5881  +
    "expiration_in_seconds": 3600,
        5882  +
    "normalize": true,
        5883  +
    "region": "us-east-1",
        5884  +
    "service": "service",
        5885  +
    "sign_body": false,
        5886  +
    "timestamp": "2015-08-30T12:36:00Z"
        5887  +
}
              \
 No newline at end of file
 4301   5888   
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
 4302   5889   
similarity index 99%
 4303   5890   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 4304   5891   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 4305   5892   
index f14defd..0e9ad42 100644
 4306   5893   
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
 4307   5894   
new file mode 100644
 4308   5895   
index 0000000..a7673b5
 4309         -
-- /dev/null
        5896  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 4310   5897   
@@ -0,0 +1 @@
        5898  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 4311   5899   
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
 4312   5900   
new file mode 100644
 4313   5901   
index 0000000..ed16e76
 4314         -
-- /dev/null
        5902  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 4315   5903   
@@ -0,0 +1,7 @@
        5904  +
GET / HTTP/1.1
        5905  +
Host:example.amazonaws.com
        5906  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        5907  +
X-Amz-Date:20150830T123600Z
        5908  +
X-Amz-Region-Set:us-east-1
        5909  +
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
        5910  +
 4316   5911   
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
 4317   5912   
similarity index 99%
 4318   5913   
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
 4319   5914   
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
 4320   5915   
index 4edece5..6c1ec65 100644
 4321   5916   
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
 4322   5917   
new file mode 100644
 4323   5918   
index 0000000..379dcb2
 4324         -
-- /dev/null
        5919  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 4325   5920   
@@ -0,0 +1,4 @@
        5921  +
{
        5922  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5923  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5924  +
}
 4326   5925   
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
 4327   5926   
similarity index 99%
 4328   5927   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 4329   5928   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 4330   5929   
index 7c042af..1876b42 100644
 4331   5930   
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
 4332   5931   
new file mode 100644
 4333   5932   
index 0000000..903dfb4
 4334         -
-- /dev/null
        5933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 4335   5934   
@@ -0,0 +1 @@
        5935  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 4336   5936   
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
 4337   5937   
new file mode 100644
 4338   5938   
index 0000000..bf1d246
 4339         -
-- /dev/null
        5939  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 4340   5940   
@@ -0,0 +1,3 @@
        5941  +
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
        5942  +
Host:example.amazonaws.com
        5943  +
 4341   5944   
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
 4342   5945   
similarity index 99%
 4343   5946   
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
 4344   5947   
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
 4345   5948   
index 0fd066a..f1b1790 100644
 4346   5949   
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
 4347   5950   
similarity index 60%
 4348   5951   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 4349   5952   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4350   5953   
index 0f7a9bf..e659c3b 100644
 4351         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        5954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4352   5955   
@@ -1,3 +1,2 @@
 4353   5956   
GET / HTTP/1.1
 4354   5957   
Host:example.amazonaws.com
 4355         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4356   5958   
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
 4357   5959   
new file mode 100644
 4358   5960   
index 0000000..76db73d
 4359         -
-- /dev/null
        5961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 4360   5962   
@@ -0,0 +1,9 @@
        5963  +
GET
        5964  +
/
        5965  +
        5966  +
host:example.amazonaws.com
        5967  +
x-amz-date:20150830T123600Z
        5968  +
x-amz-region-set:us-east-1
        5969  +
        5970  +
host;x-amz-date;x-amz-region-set
        5971  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4361   5972   
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
 4362   5973   
new file mode 100644
 4363   5974   
index 0000000..0468d80
 4364         -
-- /dev/null
        5975  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 4365   5976   
@@ -0,0 +1,12 @@
        5977  +
{
        5978  +
    "credentials": {
        5979  +
        "access_key_id": "AKIDEXAMPLE",
        5980  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5981  +
    },
        5982  +
    "expiration_in_seconds": 3600,
        5983  +
    "normalize": true,
        5984  +
    "region": "us-east-1",
        5985  +
    "service": "service",
        5986  +
    "sign_body": false,
        5987  +
    "timestamp": "2015-08-30T12:36:00Z"
        5988  +
}
              \
 No newline at end of file
 4366   5989   
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
 4367   5990   
new file mode 100644
 4368   5991   
index 0000000..76db73d
 4369         -
-- /dev/null
        5992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 4370   5993   
@@ -0,0 +1,9 @@
        5994  +
GET
        5995  +
/
        5996  +
        5997  +
host:example.amazonaws.com
        5998  +
x-amz-date:20150830T123600Z
        5999  +
x-amz-region-set:us-east-1
        6000  +
        6001  +
host;x-amz-date;x-amz-region-set
        6002  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4371   6003   
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
 4372   6004   
new file mode 100644
 4373   6005   
index 0000000..a96ff24
 4374         -
-- /dev/null
        6006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 4375   6007   
@@ -0,0 +1 @@
        6008  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 4376   6009   
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
 4377   6010   
new file mode 100644
 4378   6011   
index 0000000..689078b
 4379         -
-- /dev/null
        6012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 4380   6013   
@@ -0,0 +1,6 @@
        6014  +
GET / HTTP/1.1
        6015  +
Host:example.amazonaws.com
        6016  +
X-Amz-Date:20150830T123600Z
        6017  +
X-Amz-Region-Set:us-east-1
        6018  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6019  +
 4381   6020   
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
 4382   6021   
new file mode 100644
 4383   6022   
index 0000000..600f1d8
 4384         -
-- /dev/null
        6023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 4385   6024   
@@ -0,0 +1,4 @@
        6025  +
AWS4-ECDSA-P256-SHA256
        6026  +
20150830T123600Z
        6027  +
20150830/service/aws4_request
        6028  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4386   6029   
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
 4387   6030   
new file mode 100644
 4388   6031   
index 0000000..379dcb2
 4389         -
-- /dev/null
        6032  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 4390   6033   
@@ -0,0 +1,4 @@
        6034  +
{
        6035  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6036  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6037  +
}
 4391   6038   
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
 4392   6039   
new file mode 100644
 4393   6040   
index 0000000..779c51c
 4394         -
-- /dev/null
        6041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 4395   6042   
@@ -0,0 +1,7 @@
        6043  +
GET
        6044  +
/
        6045  +
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
        6046  +
host:example.amazonaws.com
        6047  +
        6048  +
host
        6049  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4396   6050   
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
 4397   6051   
new file mode 100644
 4398   6052   
index 0000000..cc42158
 4399         -
-- /dev/null
        6053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 4400   6054   
@@ -0,0 +1 @@
        6055  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 4401   6056   
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
 4402   6057   
new file mode 100644
 4403   6058   
index 0000000..dc6d01d
 4404         -
-- /dev/null
        6059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 4405   6060   
@@ -0,0 +1,3 @@
        6061  +
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
        6062  +
Host:example.amazonaws.com
        6063  +
 4406   6064   
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
 4407   6065   
new file mode 100644
 4408   6066   
index 0000000..6e29a7e
 4409         -
-- /dev/null
        6067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 4410   6068   
@@ -0,0 +1,4 @@
        6069  +
AWS4-ECDSA-P256-SHA256
        6070  +
20150830T123600Z
        6071  +
20150830/service/aws4_request
        6072  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4411   6073   
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
 4412   6074   
new file mode 100644
 4413   6075   
index 0000000..e659c3b
 4414         -
-- /dev/null
        6076  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 4415   6077   
@@ -0,0 +1,2 @@
        6078  +
GET / HTTP/1.1
        6079  +
Host:example.amazonaws.com
 4416   6080   
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
 4417   6081   
new file mode 100644
 4418   6082   
index 0000000..600f1d8
 4419         -
-- /dev/null
        6083  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 4420   6084   
@@ -0,0 +1,4 @@
        6085  +
AWS4-ECDSA-P256-SHA256
        6086  +
20150830T123600Z
        6087  +
20150830/service/aws4_request
        6088  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4421   6089   
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
 4422   6090   
new file mode 100644
 4423   6091   
index 0000000..0468d80
 4424         -
-- /dev/null
        6092  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 4425   6093   
@@ -0,0 +1,12 @@
        6094  +
{
        6095  +
    "credentials": {
        6096  +
        "access_key_id": "AKIDEXAMPLE",
        6097  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6098  +
    },
        6099  +
    "expiration_in_seconds": 3600,
        6100  +
    "normalize": true,
        6101  +
    "region": "us-east-1",
        6102  +
    "service": "service",
        6103  +
    "sign_body": false,
        6104  +
    "timestamp": "2015-08-30T12:36:00Z"
        6105  +
}
              \
 No newline at end of file
 4426   6106   
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
 4427   6107   
similarity index 99%
 4428   6108   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 4429   6109   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 4430   6110   
index a6942c1..e881ac7 100644
 4431   6111   
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
 4432   6112   
new file mode 100644
 4433   6113   
index 0000000..4210210
 4434         -
-- /dev/null
        6114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 4435   6115   
@@ -0,0 +1 @@
        6116  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 4436   6117   
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
 4437   6118   
new file mode 100644
 4438   6119   
index 0000000..257b110
 4439         -
-- /dev/null
        6120  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 4440   6121   
@@ -0,0 +1,6 @@
        6122  +
POST / HTTP/1.1
        6123  +
Host:example.amazonaws.com
        6124  +
X-Amz-Date:20150830T123600Z
        6125  +
X-Amz-Region-Set:us-east-1
        6126  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        6127  +
 4441   6128   
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
 4442   6129   
similarity index 99%
 4443   6130   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 4444   6131   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 4445   6132   
index d5650cb..f8adf13 100644
 4446   6133   
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
 4447   6134   
new file mode 100644
 4448   6135   
index 0000000..379dcb2
 4449         -
-- /dev/null
        6136  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 4450   6137   
@@ -0,0 +1,4 @@
        6138  +
{
        6139  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6140  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6141  +
}
 4451   6142   
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
 4452   6143   
similarity index 99%
 4453   6144   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 4454   6145   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 4455   6146   
index e48ce07..5ea8e3c 100644
 4456   6147   
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
 4457   6148   
new file mode 100644
 4458   6149   
index 0000000..9e2069e
 4459         -
-- /dev/null
        6150  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 4460   6151   
@@ -0,0 +1 @@
        6152  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 4461   6153   
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
 4462   6154   
new file mode 100644
 4463   6155   
index 0000000..67f5d29
 4464         -
-- /dev/null
        6156  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 4465   6157   
@@ -0,0 +1,3 @@
        6158  +
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
        6159  +
Host:example.amazonaws.com
        6160  +
 4466   6161   
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
 4467   6162   
similarity index 99%
 4468   6163   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 4469   6164   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 4470   6165   
index 34e3382..711c162 100644
 4471   6166   
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
 4472   6167   
similarity index 61%
 4473   6168   
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
 4474   6169   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4475   6170   
index 3dc4179..3f0a82a 100644
 4476         -
-- 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
        6171  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4477   6172   
@@ -1,3 +1,2 @@
 4478   6173   
POST / HTTP/1.1
 4479   6174   
Host:example.amazonaws.com
 4480         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4481   6175   
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
 4482   6176   
new file mode 100644
 4483   6177   
index 0000000..0468d80
 4484         -
-- /dev/null
        6178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 4485   6179   
@@ -0,0 +1,12 @@
        6180  +
{
        6181  +
    "credentials": {
        6182  +
        "access_key_id": "AKIDEXAMPLE",
        6183  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6184  +
    },
        6185  +
    "expiration_in_seconds": 3600,
        6186  +
    "normalize": true,
        6187  +
    "region": "us-east-1",
        6188  +
    "service": "service",
        6189  +
    "sign_body": false,
        6190  +
    "timestamp": "2015-08-30T12:36:00Z"
        6191  +
}
              \
 No newline at end of file
 4486   6192   
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
 4487   6193   
similarity index 99%
 4488   6194   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 4489   6195   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 4490   6196   
index a8e1727..2883822 100644
 4491   6197   
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
 4492   6198   
new file mode 100644
 4493   6199   
index 0000000..e3c2e6e
 4494         -
-- /dev/null
        6200  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 4495   6201   
@@ -0,0 +1 @@
        6202  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 4496   6203   
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
 4497   6204   
new file mode 100644
 4498   6205   
index 0000000..1d6e288
 4499         -
-- /dev/null
        6206  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 4500   6207   
@@ -0,0 +1,7 @@
        6208  +
POST / HTTP/1.1
        6209  +
Host:example.amazonaws.com
        6210  +
My-Header1:value1
        6211  +
X-Amz-Date:20150830T123600Z
        6212  +
X-Amz-Region-Set:us-east-1
        6213  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        6214  +
 4501   6215   
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
 4502   6216   
similarity index 99%
 4503   6217   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 4504   6218   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 4505   6219   
index f6e3e9b..7c5236a 100644
 4506   6220   
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
 4507   6221   
new file mode 100644
 4508   6222   
index 0000000..379dcb2
 4509         -
-- /dev/null
        6223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 4510   6224   
@@ -0,0 +1,4 @@
        6225  +
{
        6226  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6227  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6228  +
}
 4511   6229   
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
 4512   6230   
similarity index 99%
 4513   6231   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 4514   6232   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 4515   6233   
index 0ae73e1..2cf3f29 100644
 4516   6234   
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
 4517   6235   
new file mode 100644
 4518   6236   
index 0000000..2a08401
 4519         -
-- /dev/null
        6237  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 4520   6238   
@@ -0,0 +1 @@
        6239  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 4521   6240   
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
 4522   6241   
new file mode 100644
 4523   6242   
index 0000000..8d2343f
 4524         -
-- /dev/null
        6243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 4525   6244   
@@ -0,0 +1,4 @@
        6245  +
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
        6246  +
Host:example.amazonaws.com
        6247  +
My-Header1:value1
        6248  +
 4526   6249   
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
 4527   6250   
similarity index 99%
 4528   6251   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 4529   6252   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 4530   6253   
index 8cb96bf..2c4db7a 100644
 4531   6254   
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
 4532   6255   
similarity index 69%
 4533   6256   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 4534   6257   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4535   6258   
index 0253f19..917720e 100644
 4536         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        6259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4537   6260   
@@ -1,4 +1,3 @@
 4538   6261   
POST / HTTP/1.1
 4539   6262   
Host:example.amazonaws.com
 4540   6263   
My-Header1:value1
 4541         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4542   6264   
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
 4543   6265   
new file mode 100644
 4544   6266   
index 0000000..0468d80
 4545         -
-- /dev/null
        6267  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 4546   6268   
@@ -0,0 +1,12 @@
        6269  +
{
        6270  +
    "credentials": {
        6271  +
        "access_key_id": "AKIDEXAMPLE",
        6272  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6273  +
    },
        6274  +
    "expiration_in_seconds": 3600,
        6275  +
    "normalize": true,
        6276  +
    "region": "us-east-1",
        6277  +
    "service": "service",
        6278  +
    "sign_body": false,
        6279  +
    "timestamp": "2015-08-30T12:36:00Z"
        6280  +
}
              \
 No newline at end of file
 4547   6281   
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
 4548   6282   
similarity index 99%
 4549   6283   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 4550   6284   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 4551   6285   
index 1dc3ef8..164e65c 100644
 4552   6286   
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
 4553   6287   
new file mode 100644
 4554   6288   
index 0000000..7072b0e
 4555         -
-- /dev/null
        6289  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 4556   6290   
@@ -0,0 +1 @@
        6291  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 4557   6292   
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
 4558   6293   
new file mode 100644
 4559   6294   
index 0000000..17f5e3e
 4560         -
-- /dev/null
        6295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 4561   6296   
@@ -0,0 +1,7 @@
        6297  +
POST / HTTP/1.1
        6298  +
Host:example.amazonaws.com
        6299  +
My-Header1:VALUE1
        6300  +
X-Amz-Date:20150830T123600Z
        6301  +
X-Amz-Region-Set:us-east-1
        6302  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        6303  +
 4562   6304   
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
 4563   6305   
similarity index 99%
 4564   6306   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 4565   6307   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 4566   6308   
index 59c7e45..620f54e 100644
 4567   6309   
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
 4568   6310   
new file mode 100644
 4569   6311   
index 0000000..379dcb2
 4570         -
-- /dev/null
        6312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 4571   6313   
@@ -0,0 +1,4 @@
        6314  +
{
        6315  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6316  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6317  +
}
 4572   6318   
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
 4573   6319   
similarity index 99%
 4574   6320   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 4575   6321   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 4576   6322   
index 377e6f3..23e0da3 100644
 4577   6323   
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
 4578   6324   
new file mode 100644
 4579   6325   
index 0000000..a18acb8
 4580         -
-- /dev/null
        6326  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 4581   6327   
@@ -0,0 +1 @@
        6328  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 4582   6329   
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
 4583   6330   
new file mode 100644
 4584   6331   
index 0000000..7cbdcfa
 4585         -
-- /dev/null
        6332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 4586   6333   
@@ -0,0 +1,4 @@
        6334  +
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
        6335  +
Host:example.amazonaws.com
        6336  +
My-Header1:VALUE1
        6337  +
 4587   6338   
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
 4588   6339   
similarity index 99%
 4589   6340   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 4590   6341   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 4591   6342   
index 84a7afd..0c90627 100644
 4592   6343   
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
 4593   6344   
similarity index 69%
 4594   6345   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 4595   6346   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4596   6347   
index 3f9987a..5f14c91 100644
 4597         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        6348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4598   6349   
@@ -1,4 +1,3 @@
 4599   6350   
POST / HTTP/1.1
 4600   6351   
Host:example.amazonaws.com
 4601   6352   
My-Header1:VALUE1
 4602         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4603   6353   
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
 4604   6354   
new file mode 100644
 4605   6355   
index 0000000..8f1d5ce
 4606         -
-- /dev/null
        6356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 4607   6357   
@@ -0,0 +1,14 @@
        6358  +
{
        6359  +
    "credentials": {
        6360  +
        "access_key_id": "AKIDEXAMPLE",
        6361  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6362  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6363  +
    },
        6364  +
    "expiration_in_seconds": 3600,
        6365  +
    "normalize": true,
        6366  +
    "region": "us-east-1",
        6367  +
    "service": "service",
        6368  +
    "sign_body": false,
        6369  +
    "timestamp": "2015-08-30T12:36:00Z",
        6370  +
    "omit_session_token": true
        6371  +
}
 4608   6372   
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
 4609   6373   
similarity index 99%
 4610   6374   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 4611   6375   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 4612   6376   
index a6942c1..e881ac7 100644
 4613   6377   
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
 4614   6378   
new file mode 100644
 4615   6379   
index 0000000..9c5ecb9
 4616         -
-- /dev/null
        6380  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 4617   6381   
@@ -0,0 +1 @@
        6382  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 4618   6383   
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
 4619   6384   
similarity index 52%
 4620   6385   
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
 4621   6386   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4622   6387   
index 9d91775..61b6527 100644
 4623         -
-- 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
        6388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4624   6389   
@@ -1,4 +1,7 @@
 4625   6390   
POST / HTTP/1.1
 4626   6391   
Host:example.amazonaws.com
 4627         -
X-Amz-Date:20150830T123600Z
 4628   6392   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6393  +
X-Amz-Date:20150830T123600Z
        6394  +
X-Amz-Region-Set:us-east-1
        6395  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        6396  +
 4629   6397   
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
 4630   6398   
similarity index 99%
 4631   6399   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 4632   6400   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 4633   6401   
index d5650cb..f8adf13 100644
 4634   6402   
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
 4635   6403   
new file mode 100644
 4636   6404   
index 0000000..379dcb2
 4637         -
-- /dev/null
        6405  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 4638   6406   
@@ -0,0 +1,4 @@
        6407  +
{
        6408  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6409  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6410  +
}
 4639   6411   
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
 4640   6412   
similarity index 99%
 4641   6413   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 4642   6414   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 4643   6415   
index e48ce07..5ea8e3c 100644
 4644   6416   
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
 4645   6417   
new file mode 100644
 4646   6418   
index 0000000..ff8823a
 4647         -
-- /dev/null
        6419  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 4648   6420   
@@ -0,0 +1 @@
        6421  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 4649   6422   
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
 4650   6423   
new file mode 100644
 4651   6424   
index 0000000..cfac41b
 4652         -
-- /dev/null
        6425  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 4653   6426   
@@ -0,0 +1,3 @@
        6427  +
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
        6428  +
Host:example.amazonaws.com
        6429  +
 4654   6430   
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
 4655   6431   
similarity index 99%
 4656   6432   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 4657   6433   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 4658   6434   
index 34e3382..711c162 100644
 4659   6435   
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
 4660   6436   
similarity index 61%
 4661   6437   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 4662   6438   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4663   6439   
index 3dc4179..3f0a82a 100644
 4664         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        6440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4665   6441   
@@ -1,3 +1,2 @@
 4666   6442   
POST / HTTP/1.1
 4667   6443   
Host:example.amazonaws.com
 4668         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4669   6444   
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
 4670   6445   
new file mode 100644
 4671   6446   
index 0000000..5187392
 4672         -
-- /dev/null
        6447  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 4673   6448   
@@ -0,0 +1,14 @@
        6449  +
{
        6450  +
    "credentials": {
        6451  +
        "access_key_id": "AKIDEXAMPLE",
        6452  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6453  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6454  +
    },
        6455  +
    "expiration_in_seconds": 3600,
        6456  +
    "normalize": true,
        6457  +
    "region": "us-east-1",
        6458  +
    "service": "service",
        6459  +
    "sign_body": false,
        6460  +
    "timestamp": "2015-08-30T12:36:00Z",
        6461  +
    "omit_session_token": false
        6462  +
}
 4674   6463   
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
 4675   6464   
similarity index 99%
 4676   6465   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 4677   6466   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 4678   6467   
index dd408c8..e95924e 100644
 4679   6468   
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
 4680   6469   
new file mode 100644
 4681   6470   
index 0000000..1573f07
 4682         -
-- /dev/null
        6471  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 4683   6472   
@@ -0,0 +1 @@
        6473  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 4684   6474   
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
 4685   6475   
new file mode 100644
 4686   6476   
index 0000000..6ef9a08
 4687         -
-- /dev/null
        6477  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 4688   6478   
@@ -0,0 +1,7 @@
        6479  +
POST / HTTP/1.1
        6480  +
Host:example.amazonaws.com
        6481  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6482  +
X-Amz-Date:20150830T123600Z
        6483  +
X-Amz-Region-Set:us-east-1
        6484  +
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
        6485  +
 4689   6486   
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
 4690   6487   
similarity index 99%
 4691   6488   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 4692   6489   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 4693   6490   
index f352b54..3c3235f 100644
 4694   6491   
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
 4695   6492   
new file mode 100644
 4696   6493   
index 0000000..379dcb2
 4697         -
-- /dev/null
        6494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 4698   6495   
@@ -0,0 +1,4 @@
        6496  +
{
        6497  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6498  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6499  +
}
 4699   6500   
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
 4700   6501   
similarity index 99%
 4701   6502   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 4702   6503   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 4703   6504   
index 832cdc0..63b7de5 100644
 4704   6505   
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
 4705   6506   
new file mode 100644
 4706   6507   
index 0000000..713f57c
 4707         -
-- /dev/null
        6508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 4708   6509   
@@ -0,0 +1 @@
        6510  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 4709   6511   
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
 4710   6512   
new file mode 100644
 4711   6513   
index 0000000..32c3bb3
 4712         -
-- /dev/null
        6514  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 4713   6515   
@@ -0,0 +1,3 @@
        6516  +
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
        6517  +
Host:example.amazonaws.com
        6518  +
 4714   6519   
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
 4715   6520   
similarity index 99%
 4716   6521   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 4717   6522   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 4718   6523   
index d7f3668..b46cd8c 100644
 4719   6524   
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
 4720   6525   
similarity index 60%
 4721   6526   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 4722   6527   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4723   6528   
index 8b5efc8..3f0a82a 100644
 4724         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        6529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4725   6530   
@@ -1,3 +1,2 @@
 4726   6531   
POST / HTTP/1.1
 4727   6532   
Host:example.amazonaws.com
 4728         -
X-Amz-Date:20150830T123600Z
 4729   6533   
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
 4730   6534   
new file mode 100644
 4731   6535   
index 0000000..0468d80
 4732         -
-- /dev/null
        6536  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 4733   6537   
@@ -0,0 +1,12 @@
        6538  +
{
        6539  +
    "credentials": {
        6540  +
        "access_key_id": "AKIDEXAMPLE",
        6541  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6542  +
    },
        6543  +
    "expiration_in_seconds": 3600,
        6544  +
    "normalize": true,
        6545  +
    "region": "us-east-1",
        6546  +
    "service": "service",
        6547  +
    "sign_body": false,
        6548  +
    "timestamp": "2015-08-30T12:36:00Z"
        6549  +
}
              \
 No newline at end of file
 4734   6550   
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
 4735   6551   
similarity index 99%
 4736   6552   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 4737   6553   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 4738   6554   
index 02af60f..34b8c11 100644
 4739   6555   
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
 4740   6556   
new file mode 100644
 4741   6557   
index 0000000..aac6427
 4742         -
-- /dev/null
        6558  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 4743   6559   
@@ -0,0 +1 @@
        6560  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 4744   6561   
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
 4745   6562   
new file mode 100644
 4746   6563   
index 0000000..a611436
 4747         -
-- /dev/null
        6564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 4748   6565   
@@ -0,0 +1,6 @@
        6566  +
POST /?Param1=value1 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=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        6571  +
 4749   6572   
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
 4750   6573   
similarity index 99%
 4751   6574   
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
 4752   6575   
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
 4753   6576   
index 4256b4f..ad88dff 100644
 4754   6577   
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
 4755   6578   
new file mode 100644
 4756   6579   
index 0000000..379dcb2
 4757         -
-- /dev/null
        6580  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 4758   6581   
@@ -0,0 +1,4 @@
        6582  +
{
        6583  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6584  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6585  +
}
 4759   6586   
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
 4760   6587   
similarity index 99%
 4761   6588   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 4762   6589   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 4763   6590   
index fa84bbd..76d5ad6 100644
 4764   6591   
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
 4765   6592   
new file mode 100644
 4766   6593   
index 0000000..4cb1c94
 4767         -
-- /dev/null
        6594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 4768   6595   
@@ -0,0 +1 @@
        6596  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 4769   6597   
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
 4770   6598   
new file mode 100644
 4771   6599   
index 0000000..bd22b97
 4772         -
-- /dev/null
        6600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 4773   6601   
@@ -0,0 +1,3 @@
        6602  +
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
        6603  +
Host:example.amazonaws.com
        6604  +
 4774   6605   
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
 4775   6606   
similarity index 99%
 4776   6607   
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
 4777   6608   
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
 4778   6609   
index de270ef..8c9d319 100644
 4779   6610   
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
 4780   6611   
similarity index 67%
 4781   6612   
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
 4782   6613   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 4783   6614   
index 9157bc7..c9d6e5d 100644
 4784         -
-- 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
        6615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 4785   6616   
@@ -1,3 +1,2 @@
 4786   6617   
POST /?Param1=value1 HTTP/1.1
 4787   6618   
Host:example.amazonaws.com
 4788         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4789   6619   
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
 4790   6620   
new file mode 100644
 4791   6621   
index 0000000..0468d80
 4792         -
-- /dev/null
        6622  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 4793   6623   
@@ -0,0 +1,12 @@
        6624  +
{
        6625  +
    "credentials": {
        6626  +
        "access_key_id": "AKIDEXAMPLE",
        6627  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6628  +
    },
        6629  +
    "expiration_in_seconds": 3600,
        6630  +
    "normalize": true,
        6631  +
    "region": "us-east-1",
        6632  +
    "service": "service",
        6633  +
    "sign_body": false,
        6634  +
    "timestamp": "2015-08-30T12:36:00Z"
        6635  +
}
              \
 No newline at end of file
 4794   6636   
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
 4795   6637   
similarity index 99%
 4796   6638   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 4797   6639   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 4798   6640   
index 02af60f..34b8c11 100644
 4799   6641   
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
 4800   6642   
new file mode 100644
 4801   6643   
index 0000000..34f75c8
 4802         -
-- /dev/null
        6644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 4803   6645   
@@ -0,0 +1 @@
        6646  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 4804   6647   
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
 4805   6648   
new file mode 100644
 4806   6649   
index 0000000..c731408
 4807         -
-- /dev/null
        6650  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 4808   6651   
@@ -0,0 +1,6 @@
        6652  +
POST /?Param1=value1 HTTP/1.1
        6653  +
Host:example.amazonaws.com
        6654  +
X-Amz-Date:20150830T123600Z
        6655  +
X-Amz-Region-Set:us-east-1
        6656  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        6657  +
 4809   6658   
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
 4810   6659   
similarity index 99%
 4811   6660   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 4812   6661   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 4813   6662   
index 4256b4f..ad88dff 100644
 4814   6663   
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
 4815   6664   
new file mode 100644
 4816   6665   
index 0000000..379dcb2
 4817         -
-- /dev/null
        6666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 4818   6667   
@@ -0,0 +1,4 @@
        6668  +
{
        6669  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6670  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6671  +
}
 4819   6672   
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
 4820   6673   
similarity index 99%
 4821   6674   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 4822   6675   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 4823   6676   
index fa84bbd..76d5ad6 100644
 4824   6677   
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
 4825   6678   
new file mode 100644
 4826   6679   
index 0000000..ae000d6
 4827         -
-- /dev/null
        6680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 4828   6681   
@@ -0,0 +1 @@
        6682  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 4829   6683   
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
 4830   6684   
new file mode 100644
 4831   6685   
index 0000000..a868f7d
 4832         -
-- /dev/null
        6686  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 4833   6687   
@@ -0,0 +1,3 @@
        6688  +
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
        6689  +
Host:example.amazonaws.com
        6690  +
 4834   6691   
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
 4835   6692   
similarity index 99%
 4836   6693   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 4837   6694   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 4838   6695   
index de270ef..8c9d319 100644
 4839   6696   
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
 4840   6697   
similarity index 67%
 4841   6698   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 4842   6699   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 4843   6700   
index 9157bc7..c9d6e5d 100644
 4844         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        6701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 4845   6702   
@@ -1,3 +1,2 @@
 4846   6703   
POST /?Param1=value1 HTTP/1.1
 4847   6704   
Host:example.amazonaws.com
 4848         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4849   6705   
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
 4850   6706   
new file mode 100644
 4851   6707   
index 0000000..0468d80
 4852         -
-- /dev/null
        6708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 4853   6709   
@@ -0,0 +1,12 @@
        6710  +
{
        6711  +
    "credentials": {
        6712  +
        "access_key_id": "AKIDEXAMPLE",
        6713  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6714  +
    },
        6715  +
    "expiration_in_seconds": 3600,
        6716  +
    "normalize": true,
        6717  +
    "region": "us-east-1",
        6718  +
    "service": "service",
        6719  +
    "sign_body": false,
        6720  +
    "timestamp": "2015-08-30T12:36:00Z"
        6721  +
}
              \
 No newline at end of file
 4854   6722   
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
 4855   6723   
similarity index 99%
 4856   6724   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 4857   6725   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 4858   6726   
index a6942c1..e881ac7 100644
 4859   6727   
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
 4860   6728   
new file mode 100644
 4861   6729   
index 0000000..7c5e47b
 4862         -
-- /dev/null
        6730  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 4863   6731   
@@ -0,0 +1 @@
        6732  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 4864   6733   
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
 4865   6734   
new file mode 100644
 4866   6735   
index 0000000..c0e50a0
 4867         -
-- /dev/null
        6736  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 4868   6737   
@@ -0,0 +1,6 @@
        6738  +
POST / HTTP/1.1
        6739  +
Host:example.amazonaws.com
        6740  +
X-Amz-Date:20150830T123600Z
        6741  +
X-Amz-Region-Set:us-east-1
        6742  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        6743  +
 4869   6744   
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
 4870   6745   
similarity index 99%
 4871   6746   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 4872   6747   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 4873   6748   
index d5650cb..f8adf13 100644
 4874   6749   
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
 4875   6750   
new file mode 100644
 4876   6751   
index 0000000..379dcb2
 4877         -
-- /dev/null
        6752  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 4878   6753   
@@ -0,0 +1,4 @@
        6754  +
{
        6755  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6756  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6757  +
}
 4879   6758   
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
 4880   6759   
similarity index 99%
 4881   6760   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 4882   6761   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 4883   6762   
index e48ce07..5ea8e3c 100644
 4884   6763   
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
 4885   6764   
new file mode 100644
 4886   6765   
index 0000000..ea8e3b4
 4887         -
-- /dev/null
        6766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 4888   6767   
@@ -0,0 +1 @@
        6768  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 4889   6769   
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
 4890   6770   
new file mode 100644
 4891   6771   
index 0000000..616973f
 4892         -
-- /dev/null
        6772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 4893   6773   
@@ -0,0 +1,3 @@
        6774  +
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
        6775  +
Host:example.amazonaws.com
        6776  +
 4894   6777   
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
 4895   6778   
similarity index 99%
 4896   6779   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 4897   6780   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 4898   6781   
index 34e3382..711c162 100644
 4899   6782   
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
 4900   6783   
new file mode 100644
 4901   6784   
index 0000000..3f0a82a
 4902         -
-- /dev/null
        6785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 4903   6786   
@@ -0,0 +1,2 @@
        6787  +
POST / HTTP/1.1
        6788  +
Host:example.amazonaws.com
 4904   6789   
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
 4905   6790   
new file mode 100644
 4906   6791   
index 0000000..0db1df1
 4907         -
-- /dev/null
        6792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 4908   6793   
@@ -0,0 +1,12 @@
        6794  +
{
        6795  +
    "credentials": {
        6796  +
        "access_key_id": "AKIDEXAMPLE",
        6797  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6798  +
    },
        6799  +
    "expiration_in_seconds": 3600,
        6800  +
    "normalize": true,
        6801  +
    "region": "us-east-1",
        6802  +
    "service": "service",
        6803  +
    "sign_body": true,
        6804  +
    "timestamp": "2015-08-30T12:36:00Z"
        6805  +
}
              \
 No newline at end of file
 4909   6806   
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
 4910   6807   
similarity index 62%
 4911   6808   
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
 4912   6809   
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
 4913   6810   
index 05ab787..62639b2 100644
 4914         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        6811  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 4915   6812   
@@ -1,12 +1,12 @@
 4916   6813   
POST
 4917   6814   
/
 4918   6815   
 4919   6816   
content-length:13
 4920   6817   
content-type:application/x-www-form-urlencoded; charset=utf-8
 4921   6818   
host:example.amazonaws.com
 4922         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6819  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 4923   6820   
x-amz-date:20150830T123600Z
 4924   6821   
x-amz-region-set:us-east-1
 4925   6822   
 4926   6823   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 4927         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6824  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 4928   6825   
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
 4929   6826   
new file mode 100644
 4930   6827   
index 0000000..006ec2e
 4931         -
-- /dev/null
        6828  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 4932   6829   
@@ -0,0 +1 @@
        6830  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 4933   6831   
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
 4934   6832   
new file mode 100644
 4935   6833   
index 0000000..87a11f2
 4936         -
-- /dev/null
        6834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 4937   6835   
@@ -0,0 +1,10 @@
        6836  +
POST / HTTP/1.1
        6837  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        6838  +
Host:example.amazonaws.com
        6839  +
Content-Length:13
        6840  +
X-Amz-Date:20150830T123600Z
        6841  +
X-Amz-Region-Set:us-east-1
        6842  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        6843  +
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
        6844  +
        6845  +
Param1=value1
              \
 No newline at end of file
 4938   6846   
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
 4939   6847   
new file mode 100644
 4940   6848   
index 0000000..c047afb
 4941         -
-- /dev/null
        6849  +
++ 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
 4942   6850   
@@ -0,0 +1,4 @@
        6851  +
AWS4-ECDSA-P256-SHA256
        6852  +
20150830T123600Z
        6853  +
20150830/service/aws4_request
        6854  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 4943   6855   
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
 4944   6856   
new file mode 100644
 4945   6857   
index 0000000..379dcb2
 4946         -
-- /dev/null
        6858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 4947   6859   
@@ -0,0 +1,4 @@
        6860  +
{
        6861  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6862  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6863  +
}
 4948   6864   
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
 4949   6865   
similarity index 85%
 4950   6866   
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
 4951   6867   
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
 4952   6868   
index fcc454f..6933a8c 100644
 4953         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        6869  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 4954   6870   
@@ -1,9 +1,9 @@
 4955   6871   
POST
 4956   6872   
/
 4957   6873   
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
 4958   6874   
content-length:13
 4959   6875   
content-type:application/x-www-form-urlencoded; charset=utf-8
 4960   6876   
host:example.amazonaws.com
 4961   6877   
 4962   6878   
content-length;content-type;host
 4963         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6879  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 4964   6880   
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
 4965   6881   
new file mode 100644
 4966   6882   
index 0000000..34a2e12
 4967         -
-- /dev/null
        6883  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 4968   6884   
@@ -0,0 +1 @@
        6885  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 4969   6886   
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
 4970   6887   
new file mode 100644
 4971   6888   
index 0000000..197b99e
 4972         -
-- /dev/null
        6889  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 4973   6890   
@@ -0,0 +1,6 @@
        6891  +
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
        6892  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        6893  +
Host:example.amazonaws.com
        6894  +
Content-Length:13
        6895  +
        6896  +
Param1=value1
              \
 No newline at end of file
 4974   6897   
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
 4975   6898   
new file mode 100644
 4976   6899   
index 0000000..9d2bc74
 4977         -
-- /dev/null
        6900  +
++ 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
 4978   6901   
@@ -0,0 +1,4 @@
        6902  +
AWS4-ECDSA-P256-SHA256
        6903  +
20150830T123600Z
        6904  +
20150830/service/aws4_request
        6905  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 4979   6906   
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
 4980   6907   
similarity index 80%
 4981   6908   
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
 4982   6909   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 4983   6910   
index 36015f1..8289eaa 100644
 4984         -
-- 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
        6911  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 4985   6912   
@@ -1,6 +1,6 @@
 4986   6913   
POST / HTTP/1.1
 4987   6914   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 4988   6915   
Host:example.amazonaws.com
 4989         -
X-Amz-Date:20150830T123600Z
        6916  +
Content-Length:13
 4990   6917   
 4991   6918   
Param1=value1
              \
 No newline at end of file
 4992   6919   
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
 4993   6920   
new file mode 100644
 4994   6921   
index 0000000..0db1df1
 4995         -
-- /dev/null
        6922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 4996   6923   
@@ -0,0 +1,12 @@
        6924  +
{
        6925  +
    "credentials": {
        6926  +
        "access_key_id": "AKIDEXAMPLE",
        6927  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6928  +
    },
        6929  +
    "expiration_in_seconds": 3600,
        6930  +
    "normalize": true,
        6931  +
    "region": "us-east-1",
        6932  +
    "service": "service",
        6933  +
    "sign_body": true,
        6934  +
    "timestamp": "2015-08-30T12:36:00Z"
        6935  +
}
              \
 No newline at end of file
 4997   6936   
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
 4998   6937   
similarity index 61%
 4999   6938   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 5000   6939   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5001   6940   
index 69009dc..797632b 100644
 5002         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        6941  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5003   6942   
@@ -1,12 +1,12 @@
 5004   6943   
POST
 5005   6944   
/
 5006   6945   
 5007   6946   
content-length:13
 5008   6947   
content-type:application/x-www-form-urlencoded
 5009   6948   
host:example.amazonaws.com
 5010         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6949  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5011   6950   
x-amz-date:20150830T123600Z
 5012   6951   
x-amz-region-set:us-east-1
 5013   6952   
 5014   6953   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5015         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6954  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5016   6955   
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
 5017   6956   
new file mode 100644
 5018   6957   
index 0000000..f5a641c
 5019         -
-- /dev/null
        6958  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 5020   6959   
@@ -0,0 +1 @@
        6960  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 5021   6961   
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
 5022   6962   
new file mode 100644
 5023   6963   
index 0000000..7bd94a7
 5024         -
-- /dev/null
        6964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 5025   6965   
@@ -0,0 +1,10 @@
        6966  +
POST / HTTP/1.1
        6967  +
Content-Type:application/x-www-form-urlencoded
        6968  +
Host:example.amazonaws.com
        6969  +
Content-Length:13
        6970  +
X-Amz-Date:20150830T123600Z
        6971  +
X-Amz-Region-Set:us-east-1
        6972  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        6973  +
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
        6974  +
        6975  +
Param1=value1
              \
 No newline at end of file
 5026   6976   
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
 5027   6977   
new file mode 100644
 5028   6978   
index 0000000..8d25ba9
 5029         -
-- /dev/null
        6979  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 5030   6980   
@@ -0,0 +1,4 @@
        6981  +
AWS4-ECDSA-P256-SHA256
        6982  +
20150830T123600Z
        6983  +
20150830/service/aws4_request
        6984  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 5031   6985   
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
 5032   6986   
new file mode 100644
 5033   6987   
index 0000000..379dcb2
 5034         -
-- /dev/null
        6988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 5035   6989   
@@ -0,0 +1,4 @@
        6990  +
{
        6991  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6992  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6993  +
}
 5036   6994   
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
 5037   6995   
similarity index 99%
 5038   6996   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 5039   6997   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 5040   6998   
index 9ed065b..563ff58 100644
 5041   6999   
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
 5042   7000   
new file mode 100644
 5043   7001   
index 0000000..0c77daf
 5044         -
-- /dev/null
        7002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 5045   7003   
@@ -0,0 +1 @@
        7004  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 5046   7005   
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
 5047   7006   
new file mode 100644
 5048   7007   
index 0000000..71d6de9
 5049         -
-- /dev/null
        7008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 5050   7009   
@@ -0,0 +1,6 @@
        7010  +
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
        7011  +
Content-Type:application/x-www-form-urlencoded
        7012  +
Host:example.amazonaws.com
        7013  +
Content-Length:13
        7014  +
        7015  +
Param1=value1
              \
 No newline at end of file
 5051   7016   
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
 5052   7017   
similarity index 99%
 5053   7018   
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
 5054   7019   
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
 5055   7020   
index bef3143..cc7a224 100644
 5056   7021   
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
 5057   7022   
new file mode 100644
 5058   7023   
index 0000000..760b2d3
 5059         -
-- /dev/null
        7024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 5060   7025   
@@ -0,0 +1,6 @@
        7026  +
POST / HTTP/1.1
        7027  +
Content-Type:application/x-www-form-urlencoded
        7028  +
Host:example.amazonaws.com
        7029  +
Content-Length:13
        7030  +
        7031  +
Param1=value1
              \
 No newline at end of file
 5061   7032   
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
 5062   7033   
index 9bd636f..b53f33f 100644
 5063         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        7034  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 5064   7035   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 5065   7036   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 5066   7037   
        }
 5067   7038   
 5068   7039   
        if let SignatureValues::QueryParams(values) = values {
 5069   7040   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 5070   7041   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 5071   7042   
 5072   7043   
            #[cfg(feature = "sigv4a")]
 5073   7044   
            if let Some(regions) = values.region_set {
 5074   7045   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 5075   7046   
            }
 5076   7047   
 5077   7048   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 5078   7049   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 5079   7050   
            add_param(
 5080   7051   
                &mut params,
 5081   7052   
                param::X_AMZ_SIGNED_HEADERS,
 5082   7053   
                values.signed_headers.as_str(),
 5083   7054   
            );
 5084   7055   
 5085   7056   
            if let Some(security_token) = values.security_token {
 5086   7057   
                add_param(
 5087   7058   
                    &mut params,
 5088   7059   
                    settings
 5089   7060   
                        .session_token_name_override
 5090   7061   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 5091   7062   
                    security_token,
 5092   7063   
                );
 5093   7064   
            }
 5094   7065   
        }
 5095         -
        // Sort by param name, and then by param value
        7066  +
        7067  +
        // Sort on the _encoded_ key/value pairs
        7068  +
        let mut params: Vec<(String, String)> = params
        7069  +
            .into_iter()
        7070  +
            .map(|x| {
        7071  +
                use aws_smithy_http::query::fmt_string;
        7072  +
                let enc_k = fmt_string(&x.0);
        7073  +
                let enc_v = fmt_string(&x.1);
        7074  +
                (enc_k, enc_v)
        7075  +
            })
        7076  +
            .collect();
        7077  +
 5096   7078   
        params.sort();
 5097   7079   
 5098   7080   
        let mut query = QueryWriter::new(uri);
 5099   7081   
        query.clear_params();
 5100   7082   
        for (key, value) in params {
 5101         -
            query.insert(&key, &value);
        7083  +
            query.insert_encoded(&key, &value);
 5102   7084   
        }
 5103   7085   
 5104   7086   
        let query = query.build_query();
 5105   7087   
        if query.is_empty() {
 5106   7088   
            None
 5107   7089   
        } else {
 5108   7090   
            Some(query)
 5109   7091   
        }
 5110   7092   
    }
 5111   7093   
 5112   7094   
    fn insert_host_header(
 5113   7095   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 5114   7096   
        uri: &Uri,
 5115   7097   
    ) -> HeaderValue {
 5116   7098   
        match canonical_headers.get(&HOST) {
 5117   7099   
            Some(header) => header.clone(),
 5118   7100   
            None => {
 5119   7101   
                let port = uri.port();
 5120   7102   
                let scheme = uri.scheme();
 5121   7103   
                let authority = uri
 5122   7104   
                    .authority()
 5123   7105   
                    .expect("request uri authority must be set for signing")
 5124   7106   
                    .as_str();
 5125   7107   
                let host = uri
 5126   7108   
                    .host()
 5127   7109   
                    .expect("request uri host must be set for signing");
 5128   7110   
 5129   7111   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 5130   7112   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 5131   7113   
                // sent in the Host header (and Hyper strips default ports if they are present)
 5132   7114   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 5133   7115   
            service,
 5134   7116   
            hashed_creq,
 5135   7117   
            signature_version: SignatureVersion::V4a,
 5136   7118   
        }
 5137   7119   
    }
 5138   7120   
}
 5139   7121   
 5140   7122   
impl fmt::Display for StringToSign<'_> {
 5141   7123   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 5142   7124   
        write!(
 5143   7125   
            f,
 5144   7126   
            "{}\n{}\n{}\n{}",
 5145   7127   
            self.algorithm,
 5146   7128   
            format_date_time(self.time),
 5147   7129   
            match self.signature_version {
 5148   7130   
                SignatureVersion::V4 => self.scope.to_string(),
 5149   7131   
                SignatureVersion::V4a => self.scope.v4a_display(),
 5150   7132   
            },
 5151   7133   
            self.hashed_creq
 5152   7134   
        )
 5153   7135   
    }
 5154   7136   
}
 5155   7137   
 5156   7138   
#[cfg(test)]
 5157   7139   
mod tests {
 5158   7140   
    use crate::date_time::test_parsers::parse_date_time;
 5159   7141   
    use crate::http_request::canonical_request::{
 5160   7142   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 5161   7143   
    };
 5162   7144   
    use crate::http_request::test;
        7145  +
    use crate::http_request::test::SigningSuiteTest;
 5163   7146   
    use crate::http_request::{
 5164   7147   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 5165   7148   
        SigningParams, SigningSettings,
 5166   7149   
    };
 5167   7150   
    use crate::sign::v4;
 5168   7151   
    use crate::sign::v4::sha256_hex_string;
 5169   7152   
    use aws_credential_types::Credentials;
 5170   7153   
    use aws_smithy_http::query_writer::QueryWriter;
 5171   7154   
    use aws_smithy_runtime_api::client::identity::Identity;
 5172   7155   
    use http0::{HeaderValue, Uri};
 5173   7156   
    use pretty_assertions::assert_eq;
 5174   7157   
    use proptest::{prelude::*, proptest};
 5175   7158   
    use std::borrow::Cow;
 5176   7159   
    use std::time::Duration;
 5177   7160   
 5178   7161   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 5179   7162   
        v4::signing_params::Builder::default()
 5180   7163   
            .identity(identity)
 5181   7164   
            .region("test-region")
 5182   7165   
            .name("testservicename")
 5183   7166   
            .time(parse_date_time("20210511T154045Z").unwrap())
 5184   7167   
            .settings(settings)
 5185   7168   
            .build()
 5186   7169   
            .unwrap()
 5187   7170   
            .into()
 5188   7171   
    }
 5189   7172   
 5190   7173   
    #[test]
 5191   7174   
    fn test_repeated_header() {
 5192         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7175  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7176  +
        let mut req = test.request();
 5193   7177   
        req.headers.push((
 5194   7178   
            "x-amz-object-attributes".to_string(),
 5195   7179   
            "Checksum".to_string(),
 5196   7180   
        ));
 5197   7181   
        req.headers.push((
 5198   7182   
            "x-amz-object-attributes".to_string(),
 5199   7183   
            "ObjectSize".to_string(),
 5200   7184   
        ));
 5201   7185   
        let req = SignableRequest::from(&req);
 5202   7186   
        let settings = SigningSettings {
 5203   7187   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5204   7188   
            session_token_mode: SessionTokenMode::Exclude,
 5205   7189   
            ..Default::default()
 5206   7190   
        };
 5207   7191   
        let identity = Credentials::for_tests().into();
 5208   7192   
        let signing_params = signing_params(&identity, settings);
 5209   7193   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5210   7194   
 5211   7195   
        assert_eq!(
 5212   7196   
            creq.values.signed_headers().to_string(),
 5213   7197   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 5214   7198   
        );
 5215   7199   
        assert_eq!(
 5216   7200   
            creq.header_values_for("x-amz-object-attributes"),
 5217   7201   
            "Checksum,ObjectSize",
 5218   7202   
        );
 5219   7203   
    }
 5220   7204   
 5221   7205   
    #[test]
 5222   7206   
    fn test_host_header_properly_handles_ports() {
 5223   7207   
        fn host_header_test_setup(endpoint: String) -> String {
 5224         -
            let mut req = test::v4::test_request("get-vanilla");
        7208  +
            let test = SigningSuiteTest::v4("get-vanilla");
        7209  +
            let mut req = test.request();
 5225   7210   
            req.uri = endpoint;
 5226   7211   
            let req = SignableRequest::from(&req);
 5227   7212   
            let settings = SigningSettings {
 5228   7213   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5229   7214   
                session_token_mode: SessionTokenMode::Exclude,
 5230   7215   
                ..Default::default()
 5231   7216   
            };
 5232   7217   
            let identity = Credentials::for_tests().into();
 5233   7218   
            let signing_params = signing_params(&identity, settings);
 5234   7219   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5235   7220   
            creq.header_values_for("host")
 5236   7221   
        }
 5237   7222   
 5238   7223   
        // HTTP request with 80 port should not be signed with that port
 5239   7224   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 5240   7225   
        assert_eq!(http_80_host_header, "localhost",);
 5241   7226   
 5242   7227   
        // HTTP request with non-80 port should be signed with that port
 5243   7228   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 5244   7229   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 5245   7230   
 5246   7231   
        // HTTPS request with 443 port should not be signed with that port
 5247   7232   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 5248   7233   
        assert_eq!(https_443_host_header, "localhost",);
 5249   7234   
 5250   7235   
        // HTTPS request with non-443 port should be signed with that port
 5251   7236   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 5252   7237   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 5253   7238   
    }
 5254   7239   
 5255   7240   
    #[test]
 5256   7241   
    fn test_set_xamz_sha_256() {
 5257         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7242  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7243  +
        let req = test.request();
 5258   7244   
        let req = SignableRequest::from(&req);
 5259   7245   
        let settings = SigningSettings {
 5260   7246   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5261   7247   
            session_token_mode: SessionTokenMode::Exclude,
 5262   7248   
            ..Default::default()
 5263   7249   
        };
 5264   7250   
        let identity = Credentials::for_tests().into();
 5265   7251   
        let mut signing_params = signing_params(&identity, settings);
 5266   7252   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5267   7253   
        assert_eq!(
 5268   7254   
            creq.values.content_sha256(),
 5269   7255   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 5270   7256   
        );
 5271   7257   
        // assert that the sha256 header was added
 5272   7258   
        assert_eq!(
 5273   7259   
            creq.values.signed_headers().as_str(),
 5274   7260   
            "host;x-amz-content-sha256;x-amz-date"
 5275   7261   
        );
 5276   7262   
 5277   7263   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 5278   7264   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5279   7265   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5280   7266   
    }
 5281   7267   
 5282   7268   
    #[test]
 5283   7269   
    fn test_unsigned_payload() {
 5284         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7270  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7271  +
        let mut req = test.request();
 5285   7272   
        req.set_body(SignableBody::UnsignedPayload);
 5286   7273   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 5287   7274   
 5288   7275   
        let settings = SigningSettings {
 5289   7276   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5290   7277   
            ..Default::default()
 5291   7278   
        };
 5292   7279   
        let identity = Credentials::for_tests().into();
 5293   7280   
        let signing_params = signing_params(&identity, settings);
 5294   7281   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5295   7282   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 5296   7283   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 5297   7284   
    }
 5298   7285   
 5299   7286   
    #[test]
 5300   7287   
    fn test_precomputed_payload() {
 5301   7288   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 5302         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7289  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7290  +
        let mut req = test.request();
 5303   7291   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 5304   7292   
        let req = SignableRequest::from(&req);
 5305   7293   
        let settings = SigningSettings {
 5306   7294   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5307   7295   
            ..Default::default()
 5308   7296   
        };
 5309   7297   
        let identity = Credentials::for_tests().into();
 5310   7298   
        let signing_params = signing_params(&identity, settings);
 5311   7299   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5312   7300   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 5313   7301   
        assert!(creq.to_string().ends_with(payload_hash));
 5314   7302   
    }
 5315   7303   
 5316   7304   
    #[test]
 5317   7305   
    fn test_generate_scope() {
 5318   7306   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 5319   7307   
        let scope = SigningScope {
 5320   7308   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5321   7309   
            region: "us-east-1",
 5322   7310   
            service: "iam",
 5323   7311   
        };
 5324   7312   
        assert_eq!(format!("{}\n", scope), expected);
 5325   7313   
    }
 5326   7314   
 5327   7315   
    #[test]
 5328   7316   
    fn test_string_to_sign() {
 5329   7317   
        let time = parse_date_time("20150830T123600Z").unwrap();
 5330         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 5331         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        7318  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7319  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        7320  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 5332   7321   
        let encoded = sha256_hex_string(creq.as_bytes());
 5333   7322   
 5334   7323   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 5335   7324   
        assert_eq!(expected_sts, actual.to_string());
 5336   7325   
    }
 5337   7326   
 5338   7327   
    #[test]
 5339   7328   
    fn test_digest_of_canonical_request() {
 5340         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        7329  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7330  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 5341   7331   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 5342   7332   
        let actual = sha256_hex_string(creq.as_bytes());
 5343   7333   
        assert_eq!(expected, actual);
 5344   7334   
    }
 5345   7335   
 5346   7336   
    #[test]
 5347   7337   
    fn test_double_url_encode_path() {
 5348         -
        let req = test::v4::test_request("double-encode-path");
        7338  +
        let test = SigningSuiteTest::v4("double-encode-path");
        7339  +
        let req = test.request();
 5349   7340   
        let req = SignableRequest::from(&req);
 5350   7341   
        let identity = Credentials::for_tests().into();
 5351   7342   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5352   7343   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5353   7344   
 5354         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        7345  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5355   7346   
        let actual = format!("{}", creq);
 5356   7347   
        assert_eq!(actual, expected);
 5357   7348   
    }
 5358   7349   
 5359   7350   
    #[test]
 5360   7351   
    fn test_double_url_encode() {
 5361         -
        let req = test::v4::test_request("double-url-encode");
        7352  +
        let test = SigningSuiteTest::v4("double-url-encode");
        7353  +
        let req = test.request();
 5362   7354   
        let req = SignableRequest::from(&req);
 5363   7355   
        let identity = Credentials::for_tests().into();
 5364   7356   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5365   7357   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5366         -
 5367         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        7358  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5368   7359   
        let actual = format!("{}", creq);
 5369   7360   
        assert_eq!(actual, expected);
 5370   7361   
    }
 5371   7362   
 5372   7363   
    #[test]
 5373   7364   
    fn test_tilde_in_uri() {
 5374   7365   
        let req = http0::Request::builder()
 5375   7366   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 5376   7367   
        let req = SignableRequest::from(&req);
 5377   7368   
        let identity = Credentials::for_tests().into();
 5378   7369   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5379   7370   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5380   7371   
        assert_eq!(
 5381   7372   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 5382   7373   
            creq.params.as_deref(),
 5383   7374   
        );
 5384   7375   
    }
 5385   7376   
 5386   7377   
    #[test]
 5387   7378   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 5388   7379   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 5389   7380   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 5390   7381   
 5391   7382   
        let mut query_writer = QueryWriter::new(&uri);
 5392   7383   
        query_writer.insert("list-type", "2");
 5393   7384   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 5394   7385   
 5395   7386   
        let req = http0::Request::builder()
 5396   7387   
            .uri(query_writer.build_uri())
 5397   7388   
            .body("")
 5398   7389   
            .unwrap()
 5399   7390   
            .into();
 5400   7391   
        let req = SignableRequest::from(&req);
 5401   7392   
        let identity = Credentials::for_tests().into();
 5402   7393   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5403   7394   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5404   7395   
 5405   7396   
        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~";
 5406   7397   
        let actual = creq.params.unwrap();
 5407   7398   
        assert_eq!(expected, actual);
 5408   7399   
    }
 5409   7400   
 5410   7401   
    #[test]
 5411   7402   
    fn test_omit_session_token() {
 5412         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7403  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7404  +
        let req = test.request();
 5413   7405   
        let req = SignableRequest::from(&req);
 5414   7406   
        let settings = SigningSettings {
 5415   7407   
            session_token_mode: SessionTokenMode::Include,
 5416   7408   
            ..Default::default()
 5417   7409   
        };
 5418   7410   
        let identity = Credentials::for_tests_with_session_token().into();
 5419   7411   
        let mut signing_params = signing_params(&identity, settings);
 5420   7412   
 5421   7413   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5422   7414   
        assert_eq!(
 5423   7415   
            creq.values.signed_headers().as_str(),
 5424   7416   
            "host;x-amz-date;x-amz-security-token"
 5425   7417   
        );
 5426   7418   
        assert_eq!(
 5427   7419   
            creq.headers.get("x-amz-security-token").unwrap(),
 5428   7420   
            "notarealsessiontoken"
 5429   7421   
        );
 5430   7422   
 5431   7423   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 5432   7424   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5433   7425   
        assert_eq!(
 5434   7426   
            creq.headers.get("x-amz-security-token").unwrap(),
 5435   7427   
            "notarealsessiontoken"
 5436   7428   
        );
 5437   7429   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5438   7430   
    }
 5439   7431   
 5440   7432   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 5441   7433   
    #[test]
 5442   7434   
    fn non_presigning_header_exclusion() {
 5443   7435   
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
 5444   7436   
index c4bbbee..30b4743 100644
 5445         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        7437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 5446   7438   
@@ -478,436 +478,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 5447   7439   
        sensitive,
 5448   7440   
    });
 5449   7441   
}
 5450   7442   
 5451   7443   
// add signature to authorization header
 5452   7444   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 5453   7445   
fn build_authorization_header(
 5454   7446   
    access_key: &str,
 5455   7447   
    creq: &CanonicalRequest<'_>,
 5456   7448   
    sts: StringToSign<'_>,
 5457   7449   
    signature: &str,
 5458   7450   
    signature_version: SignatureVersion,
 5459   7451   
) -> String {
 5460   7452   
    let scope = match signature_version {
 5461   7453   
        SignatureVersion::V4 => sts.scope.to_string(),
 5462   7454   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 5463   7455   
    };
 5464   7456   
    format!(
 5465   7457   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 5466   7458   
        sts.algorithm,
 5467   7459   
        access_key,
 5468   7460   
        scope,
 5469   7461   
        creq.values.signed_headers().as_str(),
 5470   7462   
        signature
 5471   7463   
    )
 5472   7464   
}
 5473   7465   
#[cfg(test)]
 5474   7466   
mod tests {
 5475   7467   
    use crate::date_time::test_parsers::parse_date_time;
 5476   7468   
    use crate::http_request::sign::{add_header, SignableRequest};
        7469  +
    use crate::http_request::test::SigningSuiteTest;
 5477   7470   
    use crate::http_request::{
 5478         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        7471  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 5479   7472   
        SigningSettings,
 5480   7473   
    };
 5481   7474   
    use crate::sign::v4;
 5482   7475   
    use aws_credential_types::Credentials;
 5483   7476   
    use http0::{HeaderValue, Request};
 5484   7477   
    use pretty_assertions::assert_eq;
 5485   7478   
    use proptest::proptest;
 5486   7479   
    use std::borrow::Cow;
 5487   7480   
    use std::iter;
 5488         -
    use std::time::Duration;
 5489   7481   
 5490   7482   
    macro_rules! assert_req_eq {
 5491   7483   
        (http: $expected:expr, $actual:expr) => {
 5492   7484   
            let mut expected = ($expected).map(|_b|"body");
 5493   7485   
            let mut actual = ($actual).map(|_b|"body");
 5494   7486   
            make_headers_comparable(&mut expected);
 5495   7487   
            make_headers_comparable(&mut actual);
 5496   7488   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 5497   7489   
        };
 5498   7490   
        ($expected:tt, $actual:tt) => {
 5499   7491   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 5500   7492   
        };
 5501   7493   
    }
 5502   7494   
 5503   7495   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 5504   7496   
        for (_name, value) in request.headers_mut() {
 5505   7497   
            value.set_sensitive(false);
 5506   7498   
        }
 5507   7499   
    }
 5508   7500   
 5509         -
    #[test]
 5510         -
    fn test_sign_vanilla_with_headers() {
 5511         -
        let settings = SigningSettings::default();
 5512         -
        let identity = &Credentials::for_tests().into();
 5513         -
        let params = v4::SigningParams {
 5514         -
            identity,
 5515         -
            region: "us-east-1",
 5516         -
            name: "service",
 5517         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5518         -
            settings,
 5519         -
        }
 5520         -
        .into();
 5521         -
 5522         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5523         -
        let signable = SignableRequest::from(&original);
 5524         -
        let out = sign(signable, &params).unwrap();
 5525         -
        assert_eq!(
 5526         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 5527         -
            out.signature
 5528         -
        );
 5529         -
 5530         -
        let mut signed = original.as_http_request();
 5531         -
        out.output.apply_to_request_http0x(&mut signed);
 5532         -
 5533         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 5534         -
        assert_req_eq!(expected, signed);
 5535         -
    }
 5536         -
        7501  +
    // Sigv4A suite tests
 5537   7502   
    #[cfg(feature = "sigv4a")]
 5538         -
    mod sigv4a_tests {
 5539         -
        use super::*;
 5540         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5541         -
        use crate::http_request::{sign, test, SigningParams};
 5542         -
        use crate::sign::v4a;
 5543         -
        use p256::ecdsa::signature::{Signature, Verifier};
 5544         -
        use p256::ecdsa::{DerSignature, SigningKey};
 5545         -
        use pretty_assertions::assert_eq;
 5546         -
 5547         -
        fn new_v4a_signing_params_from_context(
 5548         -
            test_context: &'_ test::v4a::TestContext,
 5549         -
            signature_location: SignatureLocation,
 5550         -
        ) -> SigningParams<'_> {
 5551         -
            let mut params = v4a::SigningParams::from(test_context);
 5552         -
            params.settings.signature_location = signature_location;
 5553         -
 5554         -
            params.into()
 5555         -
        }
 5556         -
 5557         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 5558         -
            let tc = test::v4a::test_context(test_name);
 5559         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 5560         -
 5561         -
            let req = test::v4a::test_request(test_name);
 5562         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 5563         -
            let signable_req = SignableRequest::from(&req);
 5564         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 5565         -
 5566         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
        7503  +
    mod v4a_suite {
        7504  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 5567   7505   
 5568         -
            let expected_string_to_sign =
 5569         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 5570         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 5571         -
            let actual_string_to_sign = StringToSign::new_v4a(
 5572         -
                *params.time(),
 5573         -
                params.region_set().unwrap(),
 5574         -
                params.name(),
 5575         -
                hashed_creq,
 5576         -
            )
 5577         -
            .to_string();
 5578         -
 5579         -
            assert_eq!(
 5580         -
                expected_string_to_sign, actual_string_to_sign,
 5581         -
                "'string to sign' didn't match"
 5582         -
            );
 5583         -
 5584         -
            let out = sign(signable_req, &params).unwrap();
 5585         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 5586         -
            out.output
 5587         -
                .apply_to_request_http0x(&mut req.as_http_request());
 5588         -
 5589         -
            let creds = params.credentials().unwrap();
 5590         -
            let signing_key =
 5591         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 5592         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 5593         -
            let sig = sig
 5594         -
                .try_into()
 5595         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 5596         -
 5597         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 5598         -
            let peer_public_key = signing_key.verifying_key();
 5599         -
            let sts = actual_string_to_sign.as_bytes();
 5600         -
            peer_public_key.verify(sts, &sig).unwrap();
        7506  +
        #[test]
        7507  +
        fn test_get_header_key_duplicate() {
        7508  +
            run_test_suite_v4a("get-header-key-duplicate")
 5601   7509   
        }
 5602   7510   
 5603   7511   
        #[test]
 5604         -
        fn test_get_header_key_duplicate() {
 5605         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        7512  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7513  +
        fn test_get_header_value_multiline() {
        7514  +
            run_test_suite_v4a("get-header-value-multiline")
 5606   7515   
        }
 5607   7516   
 5608   7517   
        #[test]
 5609   7518   
        fn test_get_header_value_order() {
 5610         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        7519  +
            run_test_suite_v4a("get-header-value-order")
 5611   7520   
        }
 5612   7521   
 5613   7522   
        #[test]
 5614   7523   
        fn test_get_header_value_trim() {
 5615         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        7524  +
            run_test_suite_v4a("get-header-value-trim");
 5616   7525   
        }
 5617   7526   
 5618   7527   
        #[test]
 5619   7528   
        fn test_get_relative_normalized() {
 5620         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        7529  +
            run_test_suite_v4a("get-relative-normalized");
 5621   7530   
        }
 5622   7531   
 5623   7532   
        #[test]
 5624   7533   
        fn test_get_relative_relative_normalized() {
 5625         -
            run_v4a_test_suite(
 5626         -
                "get-relative-relative-normalized",
 5627         -
                SignatureLocation::Headers,
 5628         -
            );
        7534  +
            run_test_suite_v4a("get-relative-relative-normalized");
 5629   7535   
        }
 5630   7536   
 5631   7537   
        #[test]
 5632   7538   
        fn test_get_relative_relative_unnormalized() {
 5633         -
            run_v4a_test_suite(
 5634         -
                "get-relative-relative-unnormalized",
 5635         -
                SignatureLocation::Headers,
 5636         -
            );
        7539  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 5637   7540   
        }
 5638   7541   
 5639   7542   
        #[test]
 5640   7543   
        fn test_get_relative_unnormalized() {
 5641         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        7544  +
            run_test_suite_v4a("get-relative-unnormalized");
 5642   7545   
        }
 5643   7546   
 5644   7547   
        #[test]
 5645   7548   
        fn test_get_slash_dot_slash_normalized() {
 5646         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        7549  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 5647   7550   
        }
 5648   7551   
 5649   7552   
        #[test]
 5650   7553   
        fn test_get_slash_dot_slash_unnormalized() {
 5651         -
            run_v4a_test_suite(
 5652         -
                "get-slash-dot-slash-unnormalized",
 5653         -
                SignatureLocation::Headers,
 5654         -
            );
        7554  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 5655   7555   
        }
 5656   7556   
 5657   7557   
        #[test]
 5658   7558   
        fn test_get_slash_normalized() {
 5659         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        7559  +
            run_test_suite_v4a("get-slash-normalized");
 5660   7560   
        }
 5661   7561   
 5662   7562   
        #[test]
 5663   7563   
        fn test_get_slash_pointless_dot_normalized() {
 5664         -
            run_v4a_test_suite(
 5665         -
                "get-slash-pointless-dot-normalized",
 5666         -
                SignatureLocation::Headers,
 5667         -
            );
        7564  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 5668   7565   
        }
 5669   7566   
 5670   7567   
        #[test]
 5671   7568   
        fn test_get_slash_pointless_dot_unnormalized() {
 5672         -
            run_v4a_test_suite(
 5673         -
                "get-slash-pointless-dot-unnormalized",
 5674         -
                SignatureLocation::Headers,
 5675         -
            );
        7569  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 5676   7570   
        }
 5677   7571   
 5678   7572   
        #[test]
 5679   7573   
        fn test_get_slash_unnormalized() {
 5680         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        7574  +
            run_test_suite_v4a("get-slash-unnormalized");
 5681   7575   
        }
 5682   7576   
 5683   7577   
        #[test]
 5684   7578   
        fn test_get_slashes_normalized() {
 5685         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        7579  +
            run_test_suite_v4a("get-slashes-normalized");
 5686   7580   
        }
 5687   7581   
 5688   7582   
        #[test]
 5689   7583   
        fn test_get_slashes_unnormalized() {
 5690         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        7584  +
            run_test_suite_v4a("get-slashes-unnormalized");
        7585  +
        }
        7586  +
        7587  +
        #[test]
        7588  +
        #[ignore = "relies on single encode of path segments"]
        7589  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7590  +
        // skipped until we add control over double_uri_encode in context.json
        7591  +
        fn test_get_space_normalized() {
        7592  +
            run_test_suite_v4a("get-space-normalized");
        7593  +
        }
        7594  +
        7595  +
        #[test]
        7596  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7597  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7598  +
        fn test_get_space_unnormalized() {
        7599  +
            run_test_suite_v4a("get-space-unnormalized");
 5691   7600   
        }
 5692   7601   
 5693   7602   
        #[test]
 5694   7603   
        fn test_get_unreserved() {
 5695         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        7604  +
            run_test_suite_v4a("get-unreserved");
        7605  +
        }
        7606  +
        7607  +
        #[test]
        7608  +
        #[ignore = "httparse fails on invalid uri character"]
        7609  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7610  +
        fn test_get_utf8() {
        7611  +
            run_test_suite_v4a("get-utf8");
 5696   7612   
        }
 5697   7613   
 5698   7614   
        #[test]
 5699   7615   
        fn test_get_vanilla() {
 5700         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        7616  +
            run_test_suite_v4a("get-vanilla");
 5701   7617   
        }
 5702   7618   
 5703   7619   
        #[test]
 5704   7620   
        fn test_get_vanilla_empty_query_key() {
 5705         -
            run_v4a_test_suite(
 5706         -
                "get-vanilla-empty-query-key",
 5707         -
                SignatureLocation::QueryParams,
 5708         -
            );
        7621  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 5709   7622   
        }
 5710   7623   
 5711   7624   
        #[test]
 5712   7625   
        fn test_get_vanilla_query() {
 5713         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        7626  +
            run_test_suite_v4a("get-vanilla-query");
        7627  +
        }
        7628  +
        7629  +
        #[test]
        7630  +
        fn test_get_vanilla_query_order_encoded() {
        7631  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 5714   7632   
        }
 5715   7633   
 5716   7634   
        #[test]
 5717   7635   
        fn test_get_vanilla_query_order_key_case() {
 5718         -
            run_v4a_test_suite(
 5719         -
                "get-vanilla-query-order-key-case",
 5720         -
                SignatureLocation::QueryParams,
 5721         -
            );
        7636  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 5722   7637   
        }
 5723   7638   
 5724   7639   
        #[test]
 5725   7640   
        fn test_get_vanilla_query_unreserved() {
 5726         -
            run_v4a_test_suite(
 5727         -
                "get-vanilla-query-unreserved",
 5728         -
                SignatureLocation::QueryParams,
 5729         -
            );
        7641  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        7642  +
        }
        7643  +
        7644  +
        #[test]
        7645  +
        #[ignore = "httparse fails on invalid uri character"]
        7646  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7647  +
        fn test_get_vanilla_utf8_query() {
        7648  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 5730   7649   
        }
 5731   7650   
 5732   7651   
        #[test]
 5733   7652   
        fn test_get_vanilla_with_session_token() {
 5734         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        7653  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 5735   7654   
        }
 5736   7655   
 5737   7656   
        #[test]
 5738   7657   
        fn test_post_header_key_case() {
 5739         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        7658  +
            run_test_suite_v4a("post-header-key-case");
 5740   7659   
        }
 5741   7660   
 5742   7661   
        #[test]
 5743   7662   
        fn test_post_header_key_sort() {
 5744         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        7663  +
            run_test_suite_v4a("post-header-key-sort");
 5745   7664   
        }
 5746   7665   
 5747   7666   
        #[test]
 5748   7667   
        fn test_post_header_value_case() {
 5749         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        7668  +
            run_test_suite_v4a("post-header-value-case");
 5750   7669   
        }
 5751   7670   
 5752   7671   
        #[test]
 5753   7672   
        fn test_post_sts_header_after() {
 5754         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        7673  +
            run_test_suite_v4a("post-sts-header-after");
 5755   7674   
        }
 5756   7675   
 5757   7676   
        #[test]
 5758   7677   
        fn test_post_sts_header_before() {
 5759         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        7678  +
            run_test_suite_v4a("post-sts-header-before");
 5760   7679   
        }
 5761   7680   
 5762   7681   
        #[test]
 5763   7682   
        fn test_post_vanilla() {
 5764         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        7683  +
            run_test_suite_v4a("post-vanilla");
 5765   7684   
        }
 5766   7685   
 5767   7686   
        #[test]
 5768   7687   
        fn test_post_vanilla_empty_query_value() {
 5769         -
            run_v4a_test_suite(
 5770         -
                "post-vanilla-empty-query-value",
 5771         -
                SignatureLocation::QueryParams,
 5772         -
            );
        7688  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 5773   7689   
        }
 5774   7690   
 5775   7691   
        #[test]
 5776   7692   
        fn test_post_vanilla_query() {
 5777         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        7693  +
            run_test_suite_v4a("post-vanilla-query");
 5778   7694   
        }
 5779   7695   
 5780   7696   
        #[test]
 5781   7697   
        fn test_post_x_www_form_urlencoded() {
 5782         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        7698  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 5783   7699   
        }
 5784   7700   
 5785   7701   
        #[test]
 5786   7702   
        fn test_post_x_www_form_urlencoded_parameters() {
 5787         -
            run_v4a_test_suite(
 5788         -
                "post-x-www-form-urlencoded-parameters",
 5789         -
                SignatureLocation::QueryParams,
 5790         -
            );
        7703  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 5791   7704   
        }
 5792   7705   
    }
 5793   7706   
 5794   7707   
    #[test]
 5795   7708   
    fn test_sign_url_escape() {
 5796         -
        let test = "double-encode-path";
        7709  +
        let test = SigningSuiteTest::v4("double-encode-path");
 5797   7710   
        let settings = SigningSettings::default();
 5798   7711   
        let identity = &Credentials::for_tests().into();
 5799   7712   
        let params = v4::SigningParams {
 5800   7713   
            identity,
 5801   7714   
            region: "us-east-1",
 5802   7715   
            name: "service",
 5803   7716   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5804   7717   
            settings,
 5805   7718   
        }
 5806   7719   
        .into();
 5807   7720   
 5808         -
        let original = test::v4::test_request(test);
        7721  +
        let original = test.request();
 5809   7722   
        let signable = SignableRequest::from(&original);
 5810   7723   
        let out = sign(signable, &params).unwrap();
 5811   7724   
        assert_eq!(
 5812   7725   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 5813   7726   
            out.signature
 5814   7727   
        );
 5815   7728   
 5816   7729   
        let mut signed = original.as_http_request();
 5817   7730   
        out.output.apply_to_request_http0x(&mut signed);
 5818   7731   
 5819         -
        let expected = test::v4::test_signed_request(test);
 5820         -
        assert_req_eq!(expected, signed);
 5821         -
    }
 5822         -
 5823         -
    #[test]
 5824         -
    fn test_sign_vanilla_with_query_params() {
 5825         -
        let settings = SigningSettings {
 5826         -
            signature_location: SignatureLocation::QueryParams,
 5827         -
            expires_in: Some(Duration::from_secs(35)),
 5828         -
            ..Default::default()
 5829         -
        };
 5830         -
        let identity = &Credentials::for_tests().into();
 5831         -
        let params = v4::SigningParams {
 5832         -
            identity,
 5833         -
            region: "us-east-1",
 5834         -
            name: "service",
 5835         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5836         -
            settings,
 5837         -
        }
 5838         -
        .into();
 5839         -
 5840         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5841         -
        let signable = SignableRequest::from(&original);
 5842         -
        let out = sign(signable, &params).unwrap();
 5843         -
        assert_eq!(
 5844         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 5845         -
            out.signature
 5846         -
        );
 5847         -
 5848         -
        let mut signed = original.as_http_request();
 5849         -
        out.output.apply_to_request_http0x(&mut signed);
 5850         -
 5851         -
        let expected =
 5852         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        7732  +
        let expected = test.signed_request(SignatureLocation::Headers);
 5853   7733   
        assert_req_eq!(expected, signed);
 5854   7734   
    }
 5855   7735   
 5856   7736   
    #[test]
 5857   7737   
    fn test_sign_headers_utf8() {
 5858   7738   
        let settings = SigningSettings::default();
 5859   7739   
        let identity = &Credentials::for_tests().into();
 5860   7740   
        let params = v4::SigningParams {
 5861   7741   
            identity,
 5862   7742   
            region: "us-east-1",
 5863   7743   
            name: "service",
 5864   7744   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5865   7745   
            settings,
 5866   7746   
        }
 5867   7747   
        .into();
 5868   7748   
 5869   7749   
        let original = http0::Request::builder()
 5870   7750   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 5871   7751   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 5872   7752   
            .body("")
 5873   7753   
            .unwrap()
 5874   7754   
            .into();
 5875   7755   
        let signable = SignableRequest::from(&original);
 5876   7756   
        let out = sign(signable, &params).unwrap();
 5877   7757   
        assert_eq!(
 5878   7758   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 5879   7759   
            out.signature
 5880   7760   
        );
 5881   7761   
 5882   7762   
        let mut signed = original.as_http_request();
 5883   7763   
@@ -1138,31 +1026,236 @@ mod tests {
 5884   7764   
        let mut request = http::Request::builder()
 5885   7765   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 5886   7766   
            .body("")
 5887   7767   
            .unwrap();
 5888   7768   
 5889   7769   
        instructions.apply_to_request_http1x(&mut request);
 5890   7770   
 5891   7771   
        assert_eq!(
 5892   7772   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 5893   7773   
            request.uri().path_and_query().unwrap().to_string()
 5894   7774   
        );
 5895   7775   
    }
 5896   7776   
 5897   7777   
    #[test]
 5898   7778   
    fn test_debug_signable_body() {
 5899   7779   
        let sut = SignableBody::Bytes(b"hello signable body");
 5900   7780   
        assert_eq!(
 5901   7781   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 5902   7782   
            format!("{sut:?}")
 5903   7783   
        );
 5904   7784   
 5905   7785   
        let sut = SignableBody::UnsignedPayload;
 5906   7786   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 5907   7787   
 5908   7788   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 5909   7789   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 5910   7790   
 5911   7791   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 5912   7792   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 5913   7793   
    }
        7794  +
        7795  +
    // v4 test suite
        7796  +
    mod v4_suite {
        7797  +
        use crate::http_request::test::run_test_suite_v4;
        7798  +
        7799  +
        #[test]
        7800  +
        fn test_get_header_key_duplicate() {
        7801  +
            run_test_suite_v4("get-header-key-duplicate");
        7802  +
        }
        7803  +
        7804  +
        #[test]
        7805  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7806  +
        fn test_get_header_value_multiline() {
        7807  +
            run_test_suite_v4("get-header-value-multiline");
        7808  +
        }
        7809  +
        7810  +
        #[test]
        7811  +
        fn test_get_header_value_order() {
        7812  +
            run_test_suite_v4("get-header-value-order");
        7813  +
        }
        7814  +
        7815  +
        #[test]
        7816  +
        fn test_get_header_value_trim() {
        7817  +
            run_test_suite_v4("get-header-value-trim");
        7818  +
        }
        7819  +
        7820  +
        #[test]
        7821  +
        fn test_get_relative_normalized() {
        7822  +
            run_test_suite_v4("get-relative-normalized");
        7823  +
        }
        7824  +
        7825  +
        #[test]
        7826  +
        fn test_get_relative_relative_normalized() {
        7827  +
            run_test_suite_v4("get-relative-relative-normalized");
        7828  +
        }
        7829  +
        7830  +
        #[test]
        7831  +
        fn test_get_relative_relative_unnormalized() {
        7832  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        7833  +
        }
        7834  +
        7835  +
        #[test]
        7836  +
        fn test_get_relative_unnormalized() {
        7837  +
            run_test_suite_v4("get-relative-unnormalized");
        7838  +
        }
        7839  +
        7840  +
        #[test]
        7841  +
        fn test_get_slash_dot_slash_normalized() {
        7842  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        7843  +
        }
        7844  +
        7845  +
        #[test]
        7846  +
        fn test_get_slash_dot_slash_unnormalized() {
        7847  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        7848  +
        }
        7849  +
        7850  +
        #[test]
        7851  +
        fn test_get_slash_normalized() {
        7852  +
            run_test_suite_v4("get-slash-normalized");
        7853  +
        }
        7854  +
        7855  +
        #[test]
        7856  +
        fn test_get_slash_pointless_dot_normalized() {
        7857  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        7858  +
        }
        7859  +
        7860  +
        #[test]
        7861  +
        fn test_get_slash_pointless_dot_unnormalized() {
        7862  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        7863  +
        }
        7864  +
        7865  +
        #[test]
        7866  +
        fn test_get_slash_unnormalized() {
        7867  +
            run_test_suite_v4("get-slash-unnormalized");
        7868  +
        }
        7869  +
        7870  +
        #[test]
        7871  +
        fn test_get_slashes_normalized() {
        7872  +
            run_test_suite_v4("get-slashes-normalized");
        7873  +
        }
        7874  +
        7875  +
        #[test]
        7876  +
        fn test_get_slashes_unnormalized() {
        7877  +
            run_test_suite_v4("get-slashes-unnormalized");
        7878  +
        }
        7879  +
        7880  +
        #[test]
        7881  +
        #[ignore = "relies on single encode of path segments"]
        7882  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7883  +
        // skipped until we add control over double_uri_encode in context.json
        7884  +
        fn test_get_space_normalized() {
        7885  +
            run_test_suite_v4("get-space-normalized");
        7886  +
        }
        7887  +
        7888  +
        #[test]
        7889  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7890  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7891  +
        fn test_get_space_unnormalized() {
        7892  +
            run_test_suite_v4("get-space-unnormalized");
        7893  +
        }
        7894  +
        7895  +
        #[test]
        7896  +
        fn test_get_unreserved() {
        7897  +
            run_test_suite_v4("get-unreserved");
        7898  +
        }
        7899  +
        7900  +
        #[test]
        7901  +
        #[ignore = "httparse fails on invalid uri character"]
        7902  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7903  +
        fn test_get_utf8() {
        7904  +
            run_test_suite_v4("get-utf8");
        7905  +
        }
        7906  +
        7907  +
        #[test]
        7908  +
        fn test_get_vanilla() {
        7909  +
            run_test_suite_v4("get-vanilla");
        7910  +
        }
        7911  +
        7912  +
        #[test]
        7913  +
        fn test_get_vanilla_empty_query_key() {
        7914  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        7915  +
        }
        7916  +
        7917  +
        #[test]
        7918  +
        fn test_get_vanilla_query() {
        7919  +
            run_test_suite_v4("get-vanilla-query");
        7920  +
        }
        7921  +
        7922  +
        #[test]
        7923  +
        fn test_get_vanilla_query_order_encoded() {
        7924  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        7925  +
        }
        7926  +
        7927  +
        #[test]
        7928  +
        fn test_get_vanilla_query_order_key_case() {
        7929  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        7930  +
        }
        7931  +
        7932  +
        #[test]
        7933  +
        fn test_get_vanilla_query_unreserved() {
        7934  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        7935  +
        }
        7936  +
        7937  +
        #[test]
        7938  +
        #[ignore = "httparse fails on invalid uri character"]
        7939  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7940  +
        fn test_get_vanilla_utf8_query() {
        7941  +
            run_test_suite_v4("get-vanilla-utf8-query");
        7942  +
        }
        7943  +
        7944  +
        #[test]
        7945  +
        fn test_get_vanilla_with_session_token() {
        7946  +
            run_test_suite_v4("get-vanilla-with-session-token");
        7947  +
        }
        7948  +
        7949  +
        #[test]
        7950  +
        fn test_post_header_key_case() {
        7951  +
            run_test_suite_v4("post-header-key-case");
        7952  +
        }
        7953  +
        7954  +
        #[test]
        7955  +
        fn test_post_header_key_sort() {
        7956  +
            run_test_suite_v4("post-header-key-sort");
        7957  +
        }
        7958  +
        7959  +
        #[test]
        7960  +
        fn test_post_header_value_case() {
        7961  +
            run_test_suite_v4("post-header-value-case");
        7962  +
        }
        7963  +
        7964  +
        #[test]
        7965  +
        fn test_post_sts_header_after() {
        7966  +
            run_test_suite_v4("post-sts-header-after");
        7967  +
        }
        7968  +
        7969  +
        #[test]
        7970  +
        fn test_post_sts_header_before() {
        7971  +
            run_test_suite_v4("post-sts-header-before");
        7972  +
        }
        7973  +
        7974  +
        #[test]
        7975  +
        fn test_post_vanilla() {
        7976  +
            run_test_suite_v4("post-vanilla");
        7977  +
        }
        7978  +
        7979  +
        #[test]
        7980  +
        fn test_post_vanilla_empty_query_value() {
        7981  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        7982  +
        }
        7983  +
        7984  +
        #[test]
        7985  +
        fn test_post_vanilla_query() {
        7986  +
            run_test_suite_v4("post-vanilla-query");
        7987  +
        }
        7988  +
        7989  +
        #[test]
        7990  +
        fn test_post_x_www_form_urlencoded() {
        7991  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        7992  +
        }
        7993  +
        7994  +
        #[test]
        7995  +
        fn test_post_x_www_form_urlencoded_parameters() {
        7996  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        7997  +
        }
        7998  +
    }
 5914   7999   
}
 5915   8000   
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
 5916   8001   
index be6c496..86eec20 100644
 5917         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        8002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 5918   8003   
@@ -1,242 +1,453 @@
 5919   8004   
/*
 5920   8005   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 5921   8006   
 * SPDX-License-Identifier: Apache-2.0
 5922   8007   
 */
 5923   8008   
 5924   8009   
//! Functions shared between the tests of several modules.
 5925   8010   
 5926         -
use crate::http_request::{SignableBody, SignableRequest};
        8011  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        8012  +
use crate::http_request::{
        8013  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        8014  +
    SigningSettings,
        8015  +
};
        8016  +
use aws_credential_types::Credentials;
        8017  +
use aws_smithy_runtime_api::client::identity::Identity;
 5927   8018   
use http0::{Method, Uri};
        8019  +
use std::borrow::Cow;
 5928   8020   
use std::error::Error as StdError;
        8021  +
use std::time::{Duration, SystemTime};
        8022  +
use time::format_description::well_known::Rfc3339;
        8023  +
use time::OffsetDateTime;
        8024  +
        8025  +
/// Common test suite collection
        8026  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        8027  +
enum Collection {
        8028  +
    V4,
        8029  +
    V4A,
        8030  +
}
 5929   8031   
 5930         -
pub(crate) mod v4 {
 5931         -
    use super::*;
        8032  +
/// A test from the common CRT test suite
        8033  +
#[derive(Debug, Clone)]
        8034  +
pub(crate) struct SigningSuiteTest {
        8035  +
    test_name: &'static str,
        8036  +
    collection: Collection,
        8037  +
}
 5932   8038   
 5933         -
    fn path(name: &str, ext: &str) -> String {
 5934         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        8039  +
impl SigningSuiteTest {
        8040  +
    /// Create a new test from the V4 test suite
        8041  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        8042  +
        Self {
        8043  +
            test_name,
        8044  +
            collection: Collection::V4,
 5935   8045   
        }
 5936         -
 5937         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 5938         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 5939         -
        read(&path(name, "creq")).trim().to_string()
 5940   8046   
    }
 5941   8047   
 5942         -
    pub(crate) fn test_sts(name: &str) -> String {
 5943         -
        read(&path(name, "sts"))
        8048  +
    /// Create a new test from the V4a test suite
        8049  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        8050  +
        Self {
        8051  +
            test_name,
        8052  +
            collection: Collection::V4A,
 5944   8053   
        }
 5945         -
 5946         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 5947         -
        test_parsed_request(name, "req")
 5948   8054   
    }
 5949   8055   
 5950         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 5951         -
        test_parsed_request(name, "sreq")
        8056  +
    /// Get the path to a file in this test suite directory
        8057  +
    fn path(&self, filename: &str) -> String {
        8058  +
        let dir = match self.collection {
        8059  +
            Collection::V4 => "v4",
        8060  +
            Collection::V4A => "v4a",
        8061  +
        };
        8062  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 5952   8063   
    }
 5953   8064   
 5954         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 5955         -
        test_parsed_request(name, "qpsreq")
        8065  +
    /// Get the HTTP request for the test
        8066  +
    pub(crate) fn request(&self) -> TestRequest {
        8067  +
        test_parsed_request(&self.path("request.txt"))
 5956   8068   
    }
 5957   8069   
 5958         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 5959         -
        let path = path(name, ext);
 5960         -
        match parse_request(read(&path).as_bytes()) {
 5961         -
            Ok(parsed) => parsed,
 5962         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        8070  +
    /// Get the signed HTTP request for the test
        8071  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        8072  +
        match signature_location {
        8073  +
            SignatureLocation::QueryParams => {
        8074  +
                test_parsed_request(&self.path("query-signed-request.txt"))
 5963   8075   
            }
        8076  +
            SignatureLocation::Headers => {
        8077  +
                test_parsed_request(&self.path("header-signed-request.txt"))
 5964   8078   
            }
 5965         -
 5966         -
    #[test]
 5967         -
    fn test_parse() {
 5968         -
        test_request("post-header-key-case");
 5969   8079   
        }
 5970         -
 5971         -
    #[test]
 5972         -
    fn test_read_query_params() {
 5973         -
        test_request("get-vanilla-query-order-key-case");
 5974   8080   
    }
 5975         -
}
 5976         -
 5977         -
#[cfg(feature = "sigv4a")]
 5978         -
pub(crate) mod v4a {
 5979         -
    use super::*;
 5980         -
    use crate::http_request::{
 5981         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 5982         -
    };
 5983         -
    use aws_credential_types::Credentials;
 5984         -
    use aws_smithy_runtime_api::client::identity::Identity;
 5985         -
    use serde_derive::Deserialize;
 5986         -
    use std::time::{Duration, SystemTime};
 5987         -
    use time::format_description::well_known::Rfc3339;
 5988         -
    use time::OffsetDateTime;
 5989   8081   
 5990         -
    fn path(test_name: &str, definition_name: &str) -> String {
 5991         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        8082  +
    /// Get the canonical request for the test
        8083  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        8084  +
        match signature_location {
        8085  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        8086  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
 5992   8087   
        }
 5993         -
 5994         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 5995         -
        test_parsed_request(&path(name, "request"))
 5996   8088   
    }
 5997   8089   
 5998         -
    pub(crate) fn test_canonical_request(
 5999         -
        name: &str,
 6000         -
        signature_location: SignatureLocation,
 6001         -
    ) -> String {
        8090  +
    /// Get the string to sign for the test
        8091  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
 6002   8092   
        match signature_location {
 6003         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 6004         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        8093  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        8094  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 6005   8095   
        }
 6006   8096   
    }
 6007   8097   
 6008         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
        8098  +
    /// Get the signature for the test
        8099  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
 6009   8100   
        match signature_location {
 6010         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 6011         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        8101  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        8102  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        8103  +
        }
 6012   8104   
    }
        8105  +
        8106  +
    /// Get the test context for the test
        8107  +
    pub(crate) fn context(&self) -> TestContext {
        8108  +
        let context = read(&self.path("context.json"));
        8109  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        8110  +
        tc_builder.build()
 6013   8111   
    }
        8112  +
}
 6014   8113   
 6015         -
    fn test_parsed_request(path: &str) -> TestRequest {
        8114  +
fn test_parsed_request(path: &str) -> TestRequest {
 6016   8115   
    match parse_request(read(path).as_bytes()) {
 6017   8116   
        Ok(parsed) => parsed,
 6018   8117   
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 6019   8118   
    }
 6020         -
    }
        8119  +
}
 6021   8120   
 6022         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 6023         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 6024         -
        let context = read(&path);
 6025         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 6026         -
        tc_builder.build()
 6027         -
    }
        8121  +
fn new_v4_signing_params_from_context(
        8122  +
    test_context: &'_ TestContext,
        8123  +
    signature_location: SignatureLocation,
        8124  +
) -> crate::http_request::SigningParams<'_> {
        8125  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        8126  +
    params.settings.signature_location = signature_location;
        8127  +
    params.into()
        8128  +
}
        8129  +
        8130  +
/// Run the given test from the v4 suite for both header and query
        8131  +
/// signature locations
        8132  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        8133  +
    run_v4_test(test_name, SignatureLocation::Headers);
        8134  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        8135  +
}
        8136  +
        8137  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        8138  +
    assert_eq!(expected.scheme(), actual.scheme());
        8139  +
    assert_eq!(expected.authority(), actual.authority());
        8140  +
    assert_eq!(expected.path(), actual.path());
        8141  +
        8142  +
    // query params may be out of order
        8143  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8144  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        8145  +
    expected_params.sort();
        8146  +
        8147  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8148  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        8149  +
    actual_params.sort();
        8150  +
        8151  +
    assert_eq!(expected_params, actual_params);
        8152  +
}
 6028   8153   
 6029         -
    pub(crate) struct TestContext {
        8154  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        8155  +
    let expected = expected.as_http_request();
        8156  +
    let actual = actual;
        8157  +
    assert_eq!(expected.method(), actual.method());
        8158  +
    assert_eq!(
        8159  +
        expected.headers().len(),
        8160  +
        actual.headers().len(),
        8161  +
        "extra or missing headers"
        8162  +
    );
        8163  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        8164  +
    assert_uri_eq(expected.uri(), actual.uri());
        8165  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        8166  +
}
        8167  +
        8168  +
/// Run the given test from the v4 suite for the given signature location
        8169  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        8170  +
    let test = SigningSuiteTest::v4(test_name);
        8171  +
    let tc = test.context();
        8172  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        8173  +
        8174  +
    let req = test.request();
        8175  +
    let expected_creq = test.canonical_request(signature_location);
        8176  +
    let signable_req = SignableRequest::from(&req);
        8177  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8178  +
        8179  +
    // check canonical request
        8180  +
    assert_eq!(
        8181  +
        expected_creq,
        8182  +
        actual_creq.to_string(),
        8183  +
        "canonical request didn't match (signature location: {signature_location:?})"
        8184  +
    );
        8185  +
        8186  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        8187  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8188  +
    let actual_string_to_sign = StringToSign::new_v4(
        8189  +
        *params.time(),
        8190  +
        params.region().unwrap(),
        8191  +
        params.name(),
        8192  +
        hashed_creq,
        8193  +
    )
        8194  +
    .to_string();
        8195  +
        8196  +
    // check string to sign
        8197  +
    assert_eq!(
        8198  +
        expected_string_to_sign, actual_string_to_sign,
        8199  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        8200  +
    );
        8201  +
        8202  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        8203  +
    let mut signed = req.as_http_request();
        8204  +
    out.output.apply_to_request_http0x(&mut signed);
        8205  +
        8206  +
    // check signature
        8207  +
    assert_eq!(
        8208  +
        test.signature(signature_location),
        8209  +
        out.signature,
        8210  +
        "signature didn't match (signature location: {signature_location:?})"
        8211  +
    );
        8212  +
        8213  +
    let expected = test.signed_request(signature_location);
        8214  +
    assert_requests_eq(expected, signed);
        8215  +
}
        8216  +
        8217  +
/// Test suite context.json
        8218  +
pub(crate) struct TestContext {
 6030   8219   
    pub(crate) identity: Identity,
 6031   8220   
    pub(crate) expiration_in_seconds: u64,
 6032   8221   
    pub(crate) normalize: bool,
 6033   8222   
    pub(crate) region: String,
 6034   8223   
    pub(crate) service: String,
 6035   8224   
    pub(crate) timestamp: String,
 6036   8225   
    pub(crate) omit_session_token: bool,
 6037   8226   
    pub(crate) sign_body: bool,
 6038         -
    }
 6039         -
 6040         -
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 6041         -
        fn from(tc: &'a TestContext) -> Self {
 6042         -
            crate::sign::v4a::SigningParams {
 6043         -
                identity: &tc.identity,
 6044         -
                region_set: &tc.region,
 6045         -
                name: &tc.service,
 6046         -
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 6047         -
                    .unwrap()
 6048         -
                    .into(),
 6049         -
                settings: SigningSettings {
 6050         -
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6051         -
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 6052         -
                    uri_path_normalization_mode: tc.normalize.into(),
 6053         -
                    session_token_mode: if tc.omit_session_token {
 6054         -
                        SessionTokenMode::Exclude
 6055         -
                    } else {
 6056         -
                        SessionTokenMode::Include
 6057         -
                    },
 6058         -
                    payload_checksum_kind: if tc.sign_body {
 6059         -
                        PayloadChecksumKind::XAmzSha256
 6060         -
                    } else {
 6061         -
                        PayloadChecksumKind::NoHeader
 6062         -
                    },
 6063         -
                    ..Default::default()
 6064         -
                },
 6065         -
            }
 6066         -
        }
 6067         -
    }
        8227  +
}
 6068   8228   
 6069         -
    // Serde has limitations requiring this odd workaround.
 6070         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 6071         -
    fn return_true() -> bool {
        8229  +
// Serde has limitations requiring this odd workaround.
        8230  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        8231  +
fn return_true() -> bool {
 6072   8232   
    true
 6073         -
    }
        8233  +
}
 6074   8234   
 6075         -
    #[derive(Deserialize)]
 6076         -
    pub(crate) struct TestContextBuilder {
        8235  +
#[derive(serde_derive::Deserialize)]
        8236  +
pub(crate) struct TestContextBuilder {
 6077   8237   
    credentials: TestContextCreds,
 6078   8238   
    expiration_in_seconds: u64,
 6079   8239   
    normalize: bool,
 6080   8240   
    region: String,
 6081   8241   
    service: String,
 6082   8242   
    timestamp: String,
 6083   8243   
    #[serde(default)]
 6084   8244   
    omit_session_token: bool,
 6085   8245   
    #[serde(default = "return_true")]
 6086   8246   
    sign_body: bool,
 6087         -
    }
        8247  +
}
 6088   8248   
 6089         -
    impl TestContextBuilder {
        8249  +
impl TestContextBuilder {
 6090   8250   
    pub(crate) fn build(self) -> TestContext {
 6091   8251   
        let identity = Identity::new(
 6092   8252   
            Credentials::from_keys(
 6093   8253   
                &self.credentials.access_key_id,
 6094   8254   
                &self.credentials.secret_access_key,
 6095   8255   
                self.credentials.token.clone(),
 6096   8256   
            ),
 6097   8257   
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 6098   8258   
        );
 6099   8259   
 6100   8260   
        TestContext {
 6101   8261   
            identity,
 6102   8262   
            expiration_in_seconds: self.expiration_in_seconds,
 6103   8263   
            normalize: self.normalize,
 6104   8264   
            region: self.region,
 6105   8265   
            service: self.service,
 6106   8266   
            timestamp: self.timestamp,
 6107   8267   
            omit_session_token: self.omit_session_token,
 6108   8268   
            sign_body: self.sign_body,
 6109   8269   
        }
 6110   8270   
    }
 6111         -
    }
        8271  +
}
 6112   8272   
 6113         -
    #[derive(Deserialize)]
 6114         -
    pub(crate) struct TestContextCreds {
        8273  +
#[derive(serde_derive::Deserialize)]
        8274  +
pub(crate) struct TestContextCreds {
 6115   8275   
    access_key_id: String,
 6116   8276   
    secret_access_key: String,
 6117   8277   
    token: Option<String>,
        8278  +
}
        8279  +
        8280  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        8281  +
    fn from(tc: &'a TestContext) -> Self {
        8282  +
        crate::sign::v4::SigningParams {
        8283  +
            identity: &tc.identity,
        8284  +
            region: &tc.region,
        8285  +
            name: &tc.service,
        8286  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8287  +
                .unwrap()
        8288  +
                .into(),
        8289  +
            settings: SigningSettings {
        8290  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8291  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8292  +
                uri_path_normalization_mode: tc.normalize.into(),
        8293  +
                session_token_mode: if tc.omit_session_token {
        8294  +
                    SessionTokenMode::Exclude
        8295  +
                } else {
        8296  +
                    SessionTokenMode::Include
        8297  +
                },
        8298  +
                payload_checksum_kind: if tc.sign_body {
        8299  +
                    PayloadChecksumKind::XAmzSha256
        8300  +
                } else {
        8301  +
                    PayloadChecksumKind::NoHeader
        8302  +
                },
        8303  +
                ..Default::default()
        8304  +
            },
        8305  +
        }
        8306  +
    }
        8307  +
}
        8308  +
        8309  +
#[cfg(feature = "sigv4a")]
        8310  +
pub(crate) mod v4a {
        8311  +
    use super::*;
        8312  +
    use crate::http_request::{
        8313  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        8314  +
    };
        8315  +
    use crate::sign::v4a;
        8316  +
    use p256::ecdsa::signature::{Signature, Verifier};
        8317  +
    use p256::ecdsa::{DerSignature, SigningKey};
        8318  +
    use std::time::Duration;
        8319  +
    use time::format_description::well_known::Rfc3339;
        8320  +
    use time::OffsetDateTime;
        8321  +
        8322  +
    fn new_v4a_signing_params_from_context(
        8323  +
        test_context: &'_ TestContext,
        8324  +
        signature_location: SignatureLocation,
        8325  +
    ) -> crate::http_request::SigningParams<'_> {
        8326  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        8327  +
        params.settings.signature_location = signature_location;
        8328  +
        params.into()
        8329  +
    }
        8330  +
        8331  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        8332  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        8333  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
        8334  +
    }
        8335  +
        8336  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        8337  +
        let test = SigningSuiteTest::v4a(test_name);
        8338  +
        let tc = test.context();
        8339  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        8340  +
        8341  +
        let req = test.request();
        8342  +
        let expected_creq = test.canonical_request(signature_location);
        8343  +
        let signable_req = SignableRequest::from(&req);
        8344  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8345  +
        8346  +
        assert_eq!(
        8347  +
            expected_creq,
        8348  +
            actual_creq.to_string(),
        8349  +
            "canonical request didn't match (signature location: {signature_location:?})"
        8350  +
        );
        8351  +
        8352  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        8353  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8354  +
        let actual_string_to_sign = StringToSign::new_v4a(
        8355  +
            *params.time(),
        8356  +
            params.region_set().unwrap(),
        8357  +
            params.name(),
        8358  +
            hashed_creq,
        8359  +
        )
        8360  +
        .to_string();
        8361  +
        8362  +
        assert_eq!(
        8363  +
            expected_string_to_sign, actual_string_to_sign,
        8364  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        8365  +
        );
        8366  +
        8367  +
        let out = sign(signable_req, &params).unwrap();
        8368  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        8369  +
        out.output
        8370  +
            .apply_to_request_http0x(&mut req.as_http_request());
        8371  +
        8372  +
        let creds = params.credentials().unwrap();
        8373  +
        let signing_key =
        8374  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        8375  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        8376  +
        let sig = sig
        8377  +
            .try_into()
        8378  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        8379  +
        8380  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        8381  +
        let peer_public_key = signing_key.verifying_key();
        8382  +
        let sts = actual_string_to_sign.as_bytes();
        8383  +
        peer_public_key.verify(sts, &sig).unwrap();
        8384  +
        // TODO(sigv4a) - use public.key.json as verifying key?
        8385  +
    }
        8386  +
        8387  +
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
        8388  +
        fn from(tc: &'a TestContext) -> Self {
        8389  +
            crate::sign::v4a::SigningParams {
        8390  +
                identity: &tc.identity,
        8391  +
                region_set: &tc.region,
        8392  +
                name: &tc.service,
        8393  +
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8394  +
                    .unwrap()
        8395  +
                    .into(),
        8396  +
                settings: SigningSettings {
        8397  +
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8398  +
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8399  +
                    uri_path_normalization_mode: tc.normalize.into(),
        8400  +
                    session_token_mode: if tc.omit_session_token {
        8401  +
                        SessionTokenMode::Exclude
        8402  +
                    } else {
        8403  +
                        SessionTokenMode::Include
        8404  +
                    },
        8405  +
                    payload_checksum_kind: if tc.sign_body {
        8406  +
                        PayloadChecksumKind::XAmzSha256
        8407  +
                    } else {
        8408  +
                        PayloadChecksumKind::NoHeader
        8409  +
                    },
        8410  +
                    ..Default::default()
        8411  +
                },
        8412  +
            }
        8413  +
        }
 6118   8414   
    }
 6119   8415   
 6120   8416   
    #[test]
 6121   8417   
    fn test_parse() {
 6122         -
        let req = test_request("post-header-key-case");
        8418  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 6123   8419   
        assert_eq!(req.method, "POST");
 6124   8420   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6125   8421   
        assert!(req.headers.is_empty());
 6126   8422   
    }
 6127   8423   
 6128   8424   
    #[test]
 6129   8425   
    fn test_read_query_params() {
 6130         -
        let req = test_request("get-header-value-trim");
        8426  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 6131   8427   
        assert_eq!(req.method, "GET");
 6132   8428   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6133   8429   
        assert!(!req.headers.is_empty());
 6134   8430   
    }
 6135   8431   
}
 6136   8432   
 6137   8433   
fn read(path: &str) -> String {
 6138   8434   
    println!("Loading `{}` for test case...", path);
 6139   8435   
    let v = {
 6140   8436   
        match std::fs::read_to_string(path) {
 6141   8437   
            // This replacement is necessary for tests to pass on Windows, as reading the
 6142   8438   
            // test snapshots from the file system results in CRLF line endings being inserted.
 6143   8439   
            Ok(value) => value.replace("\r\n", "\n"),
 6144   8440   
            Err(err) => {
 6145   8441   
                panic!("failed to load test case `{}`: {}", path, err);
 6146   8442   
            }
 6147   8443   
        }
 6148   8444   
    };
 6149   8445   
 6150   8446   
    v.trim().to_string()
 6151   8447   
}
 6152   8448   
 6153   8449   
pub(crate) struct TestRequest {
 6154   8450   
    pub(crate) uri: String,
 6155   8451   
    pub(crate) method: String,
 6156   8452   
    pub(crate) headers: Vec<(String, String)>,
 6157   8453   
    pub(crate) body: TestSignedBody,
 6158   8454   
}
 6159   8455   
 6160   8456   
pub(crate) enum TestSignedBody {
 6161   8457   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 6162   8458   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 6163   8459   
                    )
 6164   8460   
                })
 6165   8461   
                .collect::<Vec<_>>(),
 6166   8462   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 6167   8463   
        }
 6168   8464   
    }
 6169   8465   
}
 6170   8466   
 6171   8467   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 6172   8468   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 6173   8469   
        SignableRequest::new(
 6174   8470   
            &request.method,
 6175   8471   
            &request.uri,
 6176   8472   
            request
 6177   8473   
                .headers
 6178   8474   
                .iter()
 6179   8475   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 6180   8476   
            request.body.as_signable_body(),
 6181   8477   
        )
 6182   8478   
        .expect("URI MUST be valid")
 6183   8479   
    }
 6184   8480   
}
 6185   8481   
 6186   8482   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 6187   8483   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 6188   8484   
    // httparse 1.5 requires two trailing newlines to head the header section.
 6189   8485   
    let mut with_newline = Vec::from(s);
 6190   8486   
    with_newline.push(b'\n');
 6191   8487   
    let mut req = httparse::Request::new(&mut headers);
 6192         -
    let _ = req.parse(&with_newline).unwrap();
        8488  +
    let status = req.parse(&with_newline).unwrap();
        8489  +
        8490  +
    let body = if status.is_complete() {
        8491  +
        let body_offset = status.unwrap();
        8492  +
        // ignore the newline we added, take from original
        8493  +
        &s[body_offset..]
        8494  +
    } else {
        8495  +
        &[]
        8496  +
    };
 6193   8497   
 6194   8498   
    let mut uri_builder = Uri::builder().scheme("https");
 6195   8499   
    if let Some(path) = req.path {
 6196   8500   
        uri_builder = uri_builder.path_and_query(path);
 6197   8501   
    }
 6198   8502   
 6199   8503   
    let mut headers = vec![];
 6200   8504   
    for header in req.headers {
 6201   8505   
        let name = header.name.to_lowercase();
 6202   8506   
        if name == "host" {
 6203   8507   
            uri_builder = uri_builder.authority(header.value);
 6204   8508   
        } else if !name.is_empty() {
 6205   8509   
            headers.push((
 6206   8510   
                header.name.to_string(),
 6207   8511   
                std::str::from_utf8(header.value)?.to_string(),
 6208   8512   
            ));
 6209   8513   
        }
 6210   8514   
    }
 6211   8515   
 6212   8516   
    Ok(TestRequest {
 6213   8517   
        uri: uri_builder.build()?.to_string(),
 6214   8518   
        method: req.method.unwrap().to_string(),
 6215   8519   
        headers,
 6216         -
        body: TestSignedBody::Bytes(vec![]),
        8520  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 6217   8521   
    })
 6218   8522   
}
 6219   8523   
 6220   8524   
#[test]
 6221   8525   
fn test_parse_headers() {
 6222   8526   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 6223   8527   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 6224   8528   
    assert_eq!(
 6225   8529   
        httparse::parse_headers(buf, &mut headers),
 6226   8530   
        Ok(httparse::Status::Complete((
 6227   8531   
            56,
 6228   8532   
            &[
 6229   8533   
                httparse::Header {
 6230   8534   
                    name: "Host",
 6231   8535   
                    value: b"example.amazonaws.com",
 6232   8536   
                },
 6233   8537   
                httparse::Header {
 6234   8538   
                    name: "X-Amz-Date",
 6235   8539   
                    value: b"20150830T123600Z",
 6236   8540   
                }
 6237   8541   
            ][..]
 6238   8542   
        )))
 6239   8543   
    );
 6240   8544   
}
 6241   8545   
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
 6242   8546   
index a208453..fc00249 100644
 6243         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        8547  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 6244   8548   
@@ -168,52 +168,54 @@ pub mod signing_params {
 6245   8549   
        );
 6246   8550   
 6247   8551   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 6248   8552   
        /// a required argument was not given.
 6249   8553   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 6250   8554   
            Ok(SigningParams {
 6251   8555   
                identity: self
 6252   8556   
                    .identity
 6253   8557   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 6254   8558   
                region: self
 6255   8559   
                    .region
 6256   8560   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 6257   8561   
                name: self
 6258   8562   
                    .name
 6259   8563   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 6260   8564   
                time: self
 6261   8565   
                    .time
 6262   8566   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 6263   8567   
                settings: self
 6264   8568   
                    .settings
 6265   8569   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 6266   8570   
            })
 6267   8571   
        }
 6268   8572   
    }
 6269   8573   
}
 6270   8574   
 6271   8575   
#[cfg(test)]
 6272   8576   
mod tests {
 6273   8577   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 6274   8578   
    use crate::date_time::test_parsers::parse_date_time;
 6275         -
    use crate::http_request::test;
 6276   8579   
 6277   8580   
    #[test]
 6278   8581   
    fn test_signature_calculation() {
 6279   8582   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 6280         -
        let creq = test::v4::test_canonical_request("iam");
        8583  +
        let creq = r#"AWS4-HMAC-SHA256
        8584  +
20150830T123600Z
        8585  +
20150830/us-east-1/iam/aws4_request
        8586  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 6281   8587   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6282   8588   
 6283   8589   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 6284   8590   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 6285   8591   
 6286   8592   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 6287   8593   
        assert_eq!(expected, &signature);
 6288   8594   
    }
 6289   8595   
 6290   8596   
    #[test]
 6291   8597   
    fn sign_payload_empty_string() {
 6292   8598   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 6293   8599   
        let actual = sha256_hex_string([]);
 6294   8600   
        assert_eq!(expected, actual);
 6295   8601   
    }
 6296   8602   
}
 6297   8603   
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
 6298   8604   
index ce78c38..8c2f591 100644
 6299         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        8605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 6300   8606   
@@ -1,43 +1,43 @@
 6301   8607   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6302   8608   
[package]
 6303   8609   
name = "aws-smithy-checksums"
 6304   8610   
version = "0.63.5"
 6305   8611   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 6306   8612   
description = "Checksum calculation and verification callbacks"
 6307   8613   
edition = "2021"
 6308   8614   
license = "Apache-2.0"
 6309   8615   
repository = "https://github.com/smithy-lang/smithy-rs"
 6310   8616   
[package.metadata.docs.rs]
 6311   8617   
all-features = true
 6312   8618   
targets = ["x86_64-unknown-linux-gnu"]
 6313   8619   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6314   8620   
rustdoc-args = ["--cfg", "docsrs"]
 6315   8621   
 6316   8622   
[dependencies]
 6317   8623   
bytes = "1.10.0"
 6318   8624   
crc-fast = "1.3.0"
 6319   8625   
hex = "0.4.3"
 6320   8626   
http = "0.2.9"
 6321   8627   
http-body = "0.4.5"
 6322   8628   
md-5 = "0.10"
 6323   8629   
pin-project-lite = "0.2.14"
 6324   8630   
sha1 = "0.10"
 6325   8631   
sha2 = "0.10"
 6326   8632   
tracing = "0.1.40"
 6327   8633   
 6328   8634   
[dependencies.aws-smithy-http]
 6329   8635   
path = "../aws-smithy-http"
 6330         -
version = "0.62.2"
        8636  +
version = "0.62.3"
 6331   8637   
 6332   8638   
[dependencies.aws-smithy-types]
 6333   8639   
path = "../aws-smithy-types"
 6334   8640   
version = "1.3.2"
 6335   8641   
 6336   8642   
[dev-dependencies]
 6337   8643   
bytes-utils = "0.1.2"
 6338   8644   
pretty_assertions = "1.3"
 6339   8645   
tracing-test = "0.2.1"
 6340   8646   
 6341   8647   
[dev-dependencies.tokio]
 6342   8648   
version = "1.23.1"
 6343   8649   
features = ["macros", "rt"]
 6344   8650   
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
 6345   8651   
index 970c99e..d3c7a49 100644
 6346         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        8652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 6347   8653   
@@ -1,34 +1,34 @@
 6348   8654   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6349   8655   
[package]
 6350   8656   
name = "aws-smithy-http"
 6351         -
version = "0.62.2"
        8657  +
version = "0.62.3"
 6352   8658   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6353   8659   
description = "Smithy HTTP logic for smithy-rs."
 6354   8660   
edition = "2021"
 6355   8661   
license = "Apache-2.0"
 6356   8662   
repository = "https://github.com/smithy-lang/smithy-rs"
 6357   8663   
[package.metadata.docs.rs]
 6358   8664   
all-features = true
 6359   8665   
targets = ["x86_64-unknown-linux-gnu"]
 6360   8666   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6361   8667   
rustdoc-args = ["--cfg", "docsrs"]
 6362   8668   
 6363   8669   
[features]
 6364   8670   
event-stream = ["aws-smithy-eventstream"]
 6365   8671   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 6366   8672   
 6367   8673   
[dependencies]
 6368   8674   
bytes = "1.10.0"
 6369   8675   
bytes-utils = "0.1"
 6370   8676   
percent-encoding = "2.3.1"
 6371   8677   
pin-project-lite = "0.2.14"
 6372   8678   
pin-utils = "0.1.0"
 6373   8679   
tracing = "0.1.40"
 6374   8680   
futures-core = "0.3.31"
 6375   8681   
 6376   8682   
[dependencies.aws-smithy-eventstream]
 6377   8683   
path = "../aws-smithy-eventstream"
 6378   8684   
optional = true
 6379   8685   
version = "0.60.10"
 6380   8686   
 6381   8687   
[dependencies.aws-smithy-runtime-api]
 6382   8688   
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
 6383   8689   
index 508f7a2..361545e 100644
 6384         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        8690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 6385   8691   
@@ -1,27 +1,27 @@
 6386   8692   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6387   8693   
[[bin]]
 6388   8694   
name = "read_many_from_str"
 6389   8695   
path = "fuzz_targets/read_many_from_str.rs"
 6390   8696   
test = false
 6391   8697   
doc = false
 6392   8698   
 6393   8699   
[package]
 6394   8700   
name = "aws-smithy-http-fuzz"
 6395   8701   
version = "0.0.0"
 6396   8702   
authors = ["Automatically generated"]
 6397   8703   
publish = false
 6398   8704   
edition = "2021"
 6399   8705   
 6400   8706   
[package.metadata]
 6401   8707   
cargo-fuzz = true
 6402   8708   
 6403   8709   
[dependencies]
 6404   8710   
libfuzzer-sys = "=0.4.7"
 6405   8711   
http = "0.2.3"
 6406   8712   
 6407   8713   
[dependencies.aws-smithy-http]
 6408   8714   
path = ".."
 6409         -
version = "0.62.2"
        8715  +
version = "0.62.3"
 6410   8716   
 6411   8717   
[workspace]
 6412   8718   
members = ["."]
 6413   8719   
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
 6414   8720   
index fef41d0..2792229 100644
 6415         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        8721  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 6416   8722   
@@ -25,68 +25,74 @@ impl QueryWriter {
 6417   8723   
    pub fn new(uri: &Uri) -> Self {
 6418   8724   
        let new_path_and_query = uri
 6419   8725   
            .path_and_query()
 6420   8726   
            .map(|pq| pq.to_string())
 6421   8727   
            .unwrap_or_default();
 6422   8728   
        let prefix = if uri.query().is_none() {
 6423   8729   
            Some('?')
 6424   8730   
        } else if !uri.query().unwrap_or_default().is_empty() {
 6425   8731   
            Some('&')
 6426   8732   
        } else {
 6427   8733   
            None
 6428   8734   
        };
 6429   8735   
        QueryWriter {
 6430   8736   
            base_uri: uri.clone(),
 6431   8737   
            new_path_and_query,
 6432   8738   
            prefix,
 6433   8739   
        }
 6434   8740   
    }
 6435   8741   
 6436   8742   
    /// Clears all query parameters.
 6437   8743   
    pub fn clear_params(&mut self) {
 6438   8744   
        if let Some(index) = self.new_path_and_query.find('?') {
 6439   8745   
            self.new_path_and_query.truncate(index);
 6440   8746   
            self.prefix = Some('?');
 6441   8747   
        }
 6442   8748   
    }
 6443   8749   
 6444   8750   
    /// Inserts a new query parameter. The key and value are percent encoded
 6445   8751   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 6446   8752   
    pub fn insert(&mut self, k: &str, v: &str) {
        8753  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        8754  +
    }
        8755  +
    
        8756  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        8757  +
    /// as is.
        8758  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 6447   8759   
        if let Some(prefix) = self.prefix {
 6448   8760   
            self.new_path_and_query.push(prefix);
 6449   8761   
        }
 6450   8762   
        self.prefix = Some('&');
 6451         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        8763  +
        self.new_path_and_query.push_str(encoded_k);
 6452   8764   
        self.new_path_and_query.push('=');
        8765  +
        self.new_path_and_query.push_str(encoded_v)
 6453   8766   
        
 6454         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
 6455   8767   
    }
 6456   8768   
 6457   8769   
    /// Returns just the built query string.
 6458   8770   
    pub fn build_query(self) -> String {
 6459   8771   
        self.build_uri().query().unwrap_or_default().to_string()
 6460   8772   
    }
 6461   8773   
 6462   8774   
    /// Returns a full [`Uri`] with the query string updated.
 6463   8775   
    pub fn build_uri(self) -> Uri {
 6464   8776   
        let mut parts = self.base_uri.into_parts();
 6465   8777   
        parts.path_and_query = Some(
 6466   8778   
            self.new_path_and_query
 6467   8779   
                .parse()
 6468   8780   
                .expect("adding query should not invalidate URI"),
 6469   8781   
        );
 6470   8782   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 6471   8783   
    }
 6472   8784   
}
 6473   8785   
 6474   8786   
#[cfg(test)]
 6475   8787   
mod test {
 6476   8788   
    use super::QueryWriter;
 6477   8789   
    use http_02x::Uri;
 6478   8790   
 6479   8791   
    #[test]
 6480   8792   
    fn empty_uri() {
 6481   8793   
        let uri = Uri::from_static("http://www.example.com");
 6482   8794   
        let mut query_writer = QueryWriter::new(&uri);
 6483   8795   
        query_writer.insert("key", "val%ue");
 6484   8796   
        query_writer.insert("another", "value");
 6485   8797   
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
 6486   8798   
index f108978..df7a9fe 100644
 6487         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        8799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 6488   8800   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 6489   8801   
 6490   8802   
[package.metadata.smithy-rs-release-tooling]
 6491   8803   
stable = true
 6492   8804   
[package.metadata.cargo-udeps.ignore]
 6493   8805   
normal = ["aws-smithy-http"]
 6494   8806   
 6495   8807   
[features]
 6496   8808   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 6497   8809   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 6498   8810   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 6499   8811   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 6500   8812   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 6501   8813   
rt-tokio = ["tokio/rt"]
 6502   8814   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 6503   8815   
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"]
 6504   8816   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 6505   8817   
 6506   8818   
[dependencies]
 6507   8819   
bytes = "1.10.0"
 6508   8820   
fastrand = "2.3.0"
 6509   8821   
pin-project-lite = "0.2.14"
 6510   8822   
pin-utils = "0.1.0"
 6511   8823   
tracing = "0.1.40"
 6512   8824   
 6513   8825   
[dependencies.aws-smithy-async]
 6514   8826   
path = "../aws-smithy-async"
 6515   8827   
version = "1.2.5"
 6516   8828   
 6517   8829   
[dependencies.aws-smithy-http]
 6518   8830   
path = "../aws-smithy-http"
 6519         -
version = "0.62.2"
        8831  +
version = "0.62.3"
 6520   8832   
 6521   8833   
[dependencies.aws-smithy-observability]
 6522   8834   
path = "../aws-smithy-observability"
 6523   8835   
version = "0.1.3"
 6524   8836   
 6525   8837   
[dependencies.aws-smithy-runtime-api]
 6526   8838   
path = "../aws-smithy-runtime-api"
 6527   8839   
version = "1.8.5"
 6528   8840   
 6529   8841   
[dependencies.aws-smithy-types]
 6530   8842   
path = "../aws-smithy-types"
 6531   8843   
features = ["http-body-0-4-x"]
 6532   8844   
version = "1.3.2"
 6533   8845   
 6534   8846   
[dependencies.aws-smithy-http-client]
 6535   8847   
path = "../aws-smithy-http-client"
 6536   8848   
optional = true
 6537   8849   
version = "1.0.6"
 6538   8850   
 6539   8851   
[dependencies.http-02x]
 6540   8852   
package = "http"
 6541   8853   
version = "0.2.9"
 6542   8854   
 6543   8855   
[dependencies.http-1x]
 6544   8856   
package = "http"
 6545   8857   
version = "1"
 6546   8858   
 6547   8859   
[dependencies.http-body-04x]
 6548   8860   
package = "http-body"
 6549   8861   
version = "0.4.5"
 6550   8862   
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
 6551   8863   
index 4e050c6..f58eb1c 100644
 6552         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
        8864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 6553   8865   
@@ -1,33 +1,33 @@
 6554   8866   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6555   8867   
[package]
 6556   8868   
name = "aws-smithy-wasm"
 6557   8869   
version = "0.1.4"
 6558   8870   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 6559   8871   
description = "Smithy WebAssembly configuration for smithy-rs."
 6560   8872   
edition = "2021"
 6561   8873   
license = "Apache-2.0"
 6562   8874   
repository = "https://github.com/awslabs/smithy-rs"
 6563   8875   
[package.metadata.docs.rs]
 6564   8876   
all-features = true
 6565   8877   
targets = ["x86_64-unknown-linux-gnu"]
 6566   8878   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6567   8879   
rustdoc-args = ["--cfg", "docsrs"]
 6568   8880   
 6569   8881   
[dependencies]
 6570   8882   
bytes = "1.10.0"
 6571   8883   
http = "1.0.0"
 6572   8884   
tracing = "0.1.40"
 6573   8885   
wasi = "0.12.1"
 6574   8886   
 6575   8887   
[dependencies.aws-smithy-runtime-api]
 6576   8888   
path = "../aws-smithy-runtime-api"
 6577   8889   
features = ["http-1x"]
 6578   8890   
version = "1.8.5"
 6579   8891   
 6580   8892   
[dependencies.aws-smithy-http]
 6581   8893   
path = "../aws-smithy-http"
 6582         -
version = "0.62.2"
        8894  +
version = "0.62.3"
 6583   8895   
 6584   8896   
[dependencies.aws-smithy-types]
 6585   8897   
path = "../aws-smithy-types"
 6586   8898   
version = "1.3.2"
 6587   8899   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6588   8900   
index a880648..139e808 100644
 6589         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
        8901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6590   8902   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 6591   8903   
edition = "2021"
 6592   8904   
license = "Apache-2.0"
 6593   8905   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6594   8906   
rust-version = "1.86.0"
 6595   8907   
readme = "README.md"
 6596   8908   
[package.metadata.smithy]
 6597   8909   
codegen-version = "ci"
 6598   8910   
[package.metadata.docs.rs]
 6599   8911   
all-features = true
 6600   8912   
targets = ["x86_64-unknown-linux-gnu"]
 6601   8913   
[dependencies.aws-credential-types]
 6602   8914   
path = "../aws-credential-types"
 6603   8915   
version = "1.2.4"
 6604   8916   
 6605   8917   
[dependencies.aws-runtime]
 6606   8918   
path = "../aws-runtime"
 6607   8919   
features = ["event-stream"]
 6608   8920   
version = "1.5.9"
 6609   8921   
 6610   8922   
[dependencies.aws-smithy-async]
 6611   8923   
path = "../aws-smithy-async"
 6612   8924   
version = "1.2.5"
 6613   8925   
 6614   8926   
[dependencies.aws-smithy-eventstream]
 6615   8927   
path = "../aws-smithy-eventstream"
 6616   8928   
version = "0.60.10"
 6617   8929   
 6618   8930   
[dependencies.aws-smithy-http]
 6619   8931   
path = "../aws-smithy-http"
 6620   8932   
features = ["event-stream"]
 6621         -
version = "0.62.2"
        8933  +
version = "0.62.3"
 6622   8934   
 6623   8935   
[dependencies.aws-smithy-json]
 6624   8936   
path = "../aws-smithy-json"
 6625   8937   
version = "0.61.4"
 6626   8938   
 6627   8939   
[dependencies.aws-smithy-runtime]
 6628   8940   
path = "../aws-smithy-runtime"
 6629   8941   
features = ["client"]
 6630   8942   
version = "1.8.5"
 6631   8943   
 6632   8944   
[dependencies.aws-smithy-runtime-api]
 6633   8945   
path = "../aws-smithy-runtime-api"
 6634   8946   
features = ["client", "http-02x"]
 6635   8947   
version = "1.8.5"
 6636   8948   
 6637   8949   
[dependencies.aws-smithy-types]
 6638   8950   
path = "../aws-smithy-types"
 6639   8951   
version = "1.3.2"
 6640   8952   
 6641   8953   
[dependencies.aws-types]
 6642   8954   
path = "../aws-types"
 6643   8955   
version = "1.3.8"
 6644   8956   
 6645   8957   
[dependencies.bytes]
 6646   8958   
version = "1.4.0"
 6647   8959   
 6648   8960   
[dependencies.fastrand]
 6649   8961   
version = "2.0.0"
 6650   8962   
 6651   8963   
[dependencies.http]
 6652   8964   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6653   8965   
index 415ecc9..667d12b 100644
 6654         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
        8966  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6655   8967   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 6656   8968   
edition = "2021"
 6657   8969   
license = "Apache-2.0"
 6658   8970   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6659   8971   
rust-version = "1.86.0"
 6660   8972   
readme = "README.md"
 6661   8973   
[package.metadata.smithy]
 6662   8974   
codegen-version = "ci"
 6663   8975   
[package.metadata.docs.rs]
 6664   8976   
all-features = true
 6665   8977   
targets = ["x86_64-unknown-linux-gnu"]
 6666   8978   
[dependencies.aws-credential-types]
 6667   8979   
path = "../aws-credential-types"
 6668   8980   
version = "1.2.4"
 6669   8981   
 6670   8982   
[dependencies.aws-runtime]
 6671   8983   
path = "../aws-runtime"
 6672   8984   
features = ["event-stream"]
 6673   8985   
version = "1.5.9"
 6674   8986   
 6675   8987   
[dependencies.aws-smithy-async]
 6676   8988   
path = "../aws-smithy-async"
 6677   8989   
version = "1.2.5"
 6678   8990   
 6679   8991   
[dependencies.aws-smithy-eventstream]
 6680   8992   
path = "../aws-smithy-eventstream"
 6681   8993   
version = "0.60.10"
 6682   8994   
 6683   8995   
[dependencies.aws-smithy-http]
 6684   8996   
path = "../aws-smithy-http"
 6685   8997   
features = ["event-stream"]
 6686         -
version = "0.62.2"
        8998  +
version = "0.62.3"
 6687   8999   
 6688   9000   
[dependencies.aws-smithy-json]
 6689   9001   
path = "../aws-smithy-json"
 6690   9002   
version = "0.61.4"
 6691   9003   
 6692   9004   
[dependencies.aws-smithy-runtime]
 6693   9005   
path = "../aws-smithy-runtime"
 6694   9006   
features = ["client"]
 6695   9007   
version = "1.8.5"
 6696   9008   
 6697   9009   
[dependencies.aws-smithy-runtime-api]
 6698   9010   
path = "../aws-smithy-runtime-api"
 6699   9011   
features = ["client", "http-02x"]
 6700   9012   
version = "1.8.5"
 6701   9013   
 6702   9014   
[dependencies.aws-smithy-types]
 6703   9015   
path = "../aws-smithy-types"
 6704   9016   
version = "1.3.2"
 6705   9017   
 6706   9018   
[dependencies.aws-types]
 6707   9019   
path = "../aws-types"
 6708   9020   
version = "1.3.8"
 6709   9021   
 6710   9022   
[dependencies.bytes]
 6711   9023   
version = "1.4.0"
 6712   9024   
 6713   9025   
[dependencies.fastrand]
 6714   9026   
version = "2.0.0"
 6715   9027   
 6716   9028   
[dependencies.http]
 6717   9029   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 6718   9030   
index 8871cab..ed88de6 100644
 6719         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
        9031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 6720   9032   
@@ -1,61 +1,61 @@
 6721   9033   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6722   9034   
[package]
 6723   9035   
name = "aws-sdk-codecatalyst"
 6724   9036   
version = "0.0.0-local"
 6725   9037   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6726   9038   
description = "AWS SDK for Amazon CodeCatalyst"
 6727   9039   
edition = "2021"
 6728   9040   
license = "Apache-2.0"
 6729   9041   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6730   9042   
rust-version = "1.86.0"
 6731   9043   
readme = "README.md"
 6732   9044   
[package.metadata.smithy]
 6733   9045   
codegen-version = "ci"
 6734   9046   
[package.metadata.docs.rs]
 6735   9047   
all-features = true
 6736   9048   
targets = ["x86_64-unknown-linux-gnu"]
 6737   9049   
[dependencies.aws-credential-types]
 6738   9050   
path = "../aws-credential-types"
 6739   9051   
version = "1.2.4"
 6740   9052   
 6741   9053   
[dependencies.aws-runtime]
 6742   9054   
path = "../aws-runtime"
 6743   9055   
version = "1.5.9"
 6744   9056   
 6745   9057   
[dependencies.aws-smithy-async]
 6746   9058   
path = "../aws-smithy-async"
 6747   9059   
version = "1.2.5"
 6748   9060   
 6749   9061   
[dependencies.aws-smithy-http]
 6750   9062   
path = "../aws-smithy-http"
 6751         -
version = "0.62.2"
        9063  +
version = "0.62.3"
 6752   9064   
 6753   9065   
[dependencies.aws-smithy-json]
 6754   9066   
path = "../aws-smithy-json"
 6755   9067   
version = "0.61.4"
 6756   9068   
 6757   9069   
[dependencies.aws-smithy-runtime]
 6758   9070   
path = "../aws-smithy-runtime"
 6759   9071   
features = ["client", "http-auth"]
 6760   9072   
version = "1.8.5"
 6761   9073   
 6762   9074   
[dependencies.aws-smithy-runtime-api]
 6763   9075   
path = "../aws-smithy-runtime-api"
 6764   9076   
features = ["client", "http-02x", "http-auth"]
 6765   9077   
version = "1.8.5"
 6766   9078   
 6767   9079   
[dependencies.aws-smithy-types]
 6768   9080   
path = "../aws-smithy-types"
 6769   9081   
version = "1.3.2"
 6770   9082   
 6771   9083   
[dependencies.aws-types]
 6772   9084   
path = "../aws-types"
 6773   9085   
version = "1.3.8"
 6774   9086   
 6775   9087   
[dependencies.bytes]
 6776   9088   
version = "1.4.0"
 6777   9089   
 6778   9090   
[dependencies.fastrand]
 6779   9091   
version = "2.0.0"
 6780   9092   
 6781   9093   
[dependencies.http]
 6782   9094   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 6783   9095   
index 89573ff..05238af 100644
 6784         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
        9096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 6785   9097   
@@ -1,61 +1,61 @@
 6786   9098   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6787   9099   
[package]
 6788   9100   
name = "aws-sdk-config"
 6789   9101   
version = "0.0.0-local"
 6790   9102   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6791   9103   
description = "AWS SDK for AWS Config"
 6792   9104   
edition = "2021"
 6793   9105   
license = "Apache-2.0"
 6794   9106   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6795   9107   
rust-version = "1.86.0"
 6796   9108   
readme = "README.md"
 6797   9109   
[package.metadata.smithy]
 6798   9110   
codegen-version = "ci"
 6799   9111   
[package.metadata.docs.rs]
 6800   9112   
all-features = true
 6801   9113   
targets = ["x86_64-unknown-linux-gnu"]
 6802   9114   
[dependencies.aws-credential-types]
 6803   9115   
path = "../aws-credential-types"
 6804   9116   
version = "1.2.4"
 6805   9117   
 6806   9118   
[dependencies.aws-runtime]
 6807   9119   
path = "../aws-runtime"
 6808   9120   
version = "1.5.9"
 6809   9121   
 6810   9122   
[dependencies.aws-smithy-async]
 6811   9123   
path = "../aws-smithy-async"
 6812   9124   
version = "1.2.5"
 6813   9125   
 6814   9126   
[dependencies.aws-smithy-http]
 6815   9127   
path = "../aws-smithy-http"
 6816         -
version = "0.62.2"
        9128  +
version = "0.62.3"
 6817   9129   
 6818   9130   
[dependencies.aws-smithy-json]
 6819   9131   
path = "../aws-smithy-json"
 6820   9132   
version = "0.61.4"
 6821   9133   
 6822   9134   
[dependencies.aws-smithy-runtime]
 6823   9135   
path = "../aws-smithy-runtime"
 6824   9136   
features = ["client"]
 6825   9137   
version = "1.8.5"
 6826   9138   
 6827   9139   
[dependencies.aws-smithy-runtime-api]
 6828   9140   
path = "../aws-smithy-runtime-api"
 6829   9141   
features = ["client", "http-02x"]
 6830   9142   
version = "1.8.5"
 6831   9143   
 6832   9144   
[dependencies.aws-smithy-types]
 6833   9145   
path = "../aws-smithy-types"
 6834   9146   
version = "1.3.2"
 6835   9147   
 6836   9148   
[dependencies.aws-types]
 6837   9149   
path = "../aws-types"
 6838   9150   
version = "1.3.8"
 6839   9151   
 6840   9152   
[dependencies.bytes]
 6841   9153   
version = "1.4.0"
 6842   9154   
 6843   9155   
[dependencies.fastrand]
 6844   9156   
version = "2.0.0"
 6845   9157   
 6846   9158   
[dependencies.http]
 6847   9159   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 6848   9160   
index d397c58..2c1062b 100644
 6849         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
        9161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 6850   9162   
@@ -1,61 +1,61 @@
 6851   9163   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6852   9164   
[package]
 6853   9165   
name = "aws-sdk-dynamodb"
 6854   9166   
version = "0.0.0-local"
 6855   9167   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6856   9168   
description = "AWS SDK for Amazon DynamoDB"
 6857   9169   
edition = "2021"
 6858   9170   
license = "Apache-2.0"
 6859   9171   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6860   9172   
rust-version = "1.86.0"
 6861   9173   
readme = "README.md"
 6862   9174   
[package.metadata.smithy]
 6863   9175   
codegen-version = "ci"
 6864   9176   
[package.metadata.docs.rs]
 6865   9177   
all-features = true
 6866   9178   
targets = ["x86_64-unknown-linux-gnu"]
 6867   9179   
[dependencies.aws-credential-types]
 6868   9180   
path = "../aws-credential-types"
 6869   9181   
version = "1.2.4"
 6870   9182   
 6871   9183   
[dependencies.aws-runtime]
 6872   9184   
path = "../aws-runtime"
 6873   9185   
version = "1.5.9"
 6874   9186   
 6875   9187   
[dependencies.aws-smithy-async]
 6876   9188   
path = "../aws-smithy-async"
 6877   9189   
version = "1.2.5"
 6878   9190   
 6879   9191   
[dependencies.aws-smithy-http]
 6880   9192   
path = "../aws-smithy-http"
 6881         -
version = "0.62.2"
        9193  +
version = "0.62.3"
 6882   9194   
 6883   9195   
[dependencies.aws-smithy-json]
 6884   9196   
path = "../aws-smithy-json"
 6885   9197   
version = "0.61.4"
 6886   9198   
 6887   9199   
[dependencies.aws-smithy-runtime]
 6888   9200   
path = "../aws-smithy-runtime"
 6889   9201   
features = ["client"]
 6890   9202   
version = "1.8.5"
 6891   9203   
 6892   9204   
[dependencies.aws-smithy-runtime-api]
 6893   9205   
path = "../aws-smithy-runtime-api"
 6894   9206   
features = ["client", "http-02x"]
 6895   9207   
version = "1.8.5"
 6896   9208   
 6897   9209   
[dependencies.aws-smithy-types]
 6898   9210   
path = "../aws-smithy-types"
 6899   9211   
version = "1.3.2"
 6900   9212   
 6901   9213   
[dependencies.aws-types]
 6902   9214   
path = "../aws-types"
 6903   9215   
version = "1.3.8"
 6904   9216   
 6905   9217   
[dependencies.bytes]
 6906   9218   
version = "1.4.0"
 6907   9219   
 6908   9220   
[dependencies.fastrand]
 6909   9221   
version = "2.0.0"
 6910   9222   
 6911   9223   
[dependencies.http]
 6912   9224   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 6913   9225   
index c0ba315..46168af 100644
 6914         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
        9226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 6915   9227   
@@ -1,61 +1,61 @@
 6916   9228   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6917   9229   
[package]
 6918   9230   
name = "aws-sdk-ec2"
 6919   9231   
version = "0.0.0-local"
 6920   9232   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6921   9233   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 6922   9234   
edition = "2021"
 6923   9235   
license = "Apache-2.0"
 6924   9236   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6925   9237   
rust-version = "1.86.0"
 6926   9238   
readme = "README.md"
 6927   9239   
[package.metadata.smithy]
 6928   9240   
codegen-version = "ci"
 6929   9241   
[package.metadata.docs.rs]
 6930   9242   
all-features = true
 6931   9243   
targets = ["x86_64-unknown-linux-gnu"]
 6932   9244   
[dependencies.aws-credential-types]
 6933   9245   
path = "../aws-credential-types"
 6934   9246   
version = "1.2.4"
 6935   9247   
 6936   9248   
[dependencies.aws-runtime]
 6937   9249   
path = "../aws-runtime"
 6938   9250   
version = "1.5.9"
 6939   9251   
 6940   9252   
[dependencies.aws-smithy-async]
 6941   9253   
path = "../aws-smithy-async"
 6942   9254   
version = "1.2.5"
 6943   9255   
 6944   9256   
[dependencies.aws-smithy-http]
 6945   9257   
path = "../aws-smithy-http"
 6946         -
version = "0.62.2"
        9258  +
version = "0.62.3"
 6947   9259   
 6948   9260   
[dependencies.aws-smithy-json]
 6949   9261   
path = "../aws-smithy-json"
 6950   9262   
version = "0.61.4"
 6951   9263   
 6952   9264   
[dependencies.aws-smithy-query]
 6953   9265   
path = "../aws-smithy-query"
 6954   9266   
version = "0.60.7"
 6955   9267   
 6956   9268   
[dependencies.aws-smithy-runtime]
 6957   9269   
path = "../aws-smithy-runtime"
 6958   9270   
features = ["client"]
 6959   9271   
version = "1.8.5"
 6960   9272   
 6961   9273   
[dependencies.aws-smithy-runtime-api]
 6962   9274   
path = "../aws-smithy-runtime-api"
 6963   9275   
features = ["client", "http-02x"]
 6964   9276   
version = "1.8.5"
 6965   9277   
 6966   9278   
[dependencies.aws-smithy-types]
 6967   9279   
path = "../aws-smithy-types"
 6968   9280   
version = "1.3.2"
 6969   9281   
 6970   9282   
[dependencies.aws-smithy-xml]
 6971   9283   
path = "../aws-smithy-xml"
 6972   9284   
version = "0.60.10"
 6973   9285   
 6974   9286   
[dependencies.aws-types]
 6975   9287   
path = "../aws-types"
 6976   9288   
version = "1.3.8"
 6977   9289   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 6978   9290   
index 4474d17..095d40e 100644
 6979         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
        9291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 6980   9292   
@@ -1,61 +1,61 @@
 6981   9293   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6982   9294   
[package]
 6983   9295   
name = "aws-sdk-ecs"
 6984   9296   
version = "0.0.0-local"
 6985   9297   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6986   9298   
description = "AWS SDK for Amazon EC2 Container Service"
 6987   9299   
edition = "2021"
 6988   9300   
license = "Apache-2.0"
 6989   9301   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6990   9302   
rust-version = "1.86.0"
 6991   9303   
readme = "README.md"
 6992   9304   
[package.metadata.smithy]
 6993   9305   
codegen-version = "ci"
 6994   9306   
[package.metadata.docs.rs]
 6995   9307   
all-features = true
 6996   9308   
targets = ["x86_64-unknown-linux-gnu"]
 6997   9309   
[dependencies.aws-credential-types]
 6998   9310   
path = "../aws-credential-types"
 6999   9311   
version = "1.2.4"
 7000   9312   
 7001   9313   
[dependencies.aws-runtime]
 7002   9314   
path = "../aws-runtime"
 7003   9315   
version = "1.5.9"
 7004   9316   
 7005   9317   
[dependencies.aws-smithy-async]
 7006   9318   
path = "../aws-smithy-async"
 7007   9319   
version = "1.2.5"
 7008   9320   
 7009   9321   
[dependencies.aws-smithy-http]
 7010   9322   
path = "../aws-smithy-http"
 7011         -
version = "0.62.2"
        9323  +
version = "0.62.3"
 7012   9324   
 7013   9325   
[dependencies.aws-smithy-json]
 7014   9326   
path = "../aws-smithy-json"
 7015   9327   
version = "0.61.4"
 7016   9328   
 7017   9329   
[dependencies.aws-smithy-runtime]
 7018   9330   
path = "../aws-smithy-runtime"
 7019   9331   
features = ["client"]
 7020   9332   
version = "1.8.5"
 7021   9333   
 7022   9334   
[dependencies.aws-smithy-runtime-api]
 7023   9335   
path = "../aws-smithy-runtime-api"
 7024   9336   
features = ["client", "http-02x"]
 7025   9337   
version = "1.8.5"
 7026   9338   
 7027   9339   
[dependencies.aws-smithy-types]
 7028   9340   
path = "../aws-smithy-types"
 7029   9341   
version = "1.3.2"
 7030   9342   
 7031   9343   
[dependencies.aws-types]
 7032   9344   
path = "../aws-types"
 7033   9345   
version = "1.3.8"
 7034   9346   
 7035   9347   
[dependencies.bytes]
 7036   9348   
version = "1.4.0"
 7037   9349   
 7038   9350   
[dependencies.fastrand]
 7039   9351   
version = "2.0.0"
 7040   9352   
 7041   9353   
[dependencies.http]
 7042   9354   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7043   9355   
index 15b1d77..16d7d89 100644
 7044         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
        9356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7045   9357   
@@ -1,65 +1,65 @@
 7046   9358   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7047   9359   
[package]
 7048   9360   
name = "aws-sdk-glacier"
 7049   9361   
version = "0.0.0-local"
 7050   9362   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7051   9363   
description = "AWS SDK for Amazon Glacier"
 7052   9364   
edition = "2021"
 7053   9365   
license = "Apache-2.0"
 7054   9366   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7055   9367   
rust-version = "1.86.0"
 7056   9368   
readme = "README.md"
 7057   9369   
[package.metadata.smithy]
 7058   9370   
codegen-version = "ci"
 7059   9371   
[package.metadata.docs.rs]
 7060   9372   
all-features = true
 7061   9373   
targets = ["x86_64-unknown-linux-gnu"]
 7062   9374   
[dependencies.aws-credential-types]
 7063   9375   
path = "../aws-credential-types"
 7064   9376   
version = "1.2.4"
 7065   9377   
 7066   9378   
[dependencies.aws-runtime]
 7067   9379   
path = "../aws-runtime"
 7068   9380   
version = "1.5.9"
 7069   9381   
 7070   9382   
[dependencies.aws-sigv4]
 7071   9383   
path = "../aws-sigv4"
 7072         -
version = "1.3.3"
        9384  +
version = "1.3.4"
 7073   9385   
 7074   9386   
[dependencies.aws-smithy-async]
 7075   9387   
path = "../aws-smithy-async"
 7076   9388   
version = "1.2.5"
 7077   9389   
 7078   9390   
[dependencies.aws-smithy-http]
 7079   9391   
path = "../aws-smithy-http"
 7080         -
version = "0.62.2"
        9392  +
version = "0.62.3"
 7081   9393   
 7082   9394   
[dependencies.aws-smithy-json]
 7083   9395   
path = "../aws-smithy-json"
 7084   9396   
version = "0.61.4"
 7085   9397   
 7086   9398   
[dependencies.aws-smithy-runtime]
 7087   9399   
path = "../aws-smithy-runtime"
 7088   9400   
features = ["client"]
 7089   9401   
version = "1.8.5"
 7090   9402   
 7091   9403   
[dependencies.aws-smithy-runtime-api]
 7092   9404   
path = "../aws-smithy-runtime-api"
 7093   9405   
features = ["client", "http-02x"]
 7094   9406   
version = "1.8.5"
 7095   9407   
 7096   9408   
[dependencies.aws-smithy-types]
 7097   9409   
path = "../aws-smithy-types"
 7098   9410   
version = "1.3.2"
 7099   9411   
 7100   9412   
[dependencies.aws-types]
 7101   9413   
path = "../aws-types"
 7102   9414   
version = "1.3.8"
 7103   9415   
 7104   9416   
[dependencies.bytes]
 7105   9417   
version = "1.4.0"
 7106   9418   
 7107   9419   
[dependencies.fastrand]
 7108   9420   
version = "2.0.0"
 7109   9421   
 7110   9422   
[dependencies.hex]
 7111   9423   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7112   9424   
index d718a3a..65e6f24 100644
 7113         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
        9425  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7114   9426   
@@ -1,61 +1,61 @@
 7115   9427   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7116   9428   
[package]
 7117   9429   
name = "aws-sdk-iam"
 7118   9430   
version = "0.0.0-local"
 7119   9431   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7120   9432   
description = "AWS SDK for AWS Identity and Access Management"
 7121   9433   
edition = "2021"
 7122   9434   
license = "Apache-2.0"
 7123   9435   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7124   9436   
rust-version = "1.86.0"
 7125   9437   
readme = "README.md"
 7126   9438   
[package.metadata.smithy]
 7127   9439   
codegen-version = "ci"
 7128   9440   
[package.metadata.docs.rs]
 7129   9441   
all-features = true
 7130   9442   
targets = ["x86_64-unknown-linux-gnu"]
 7131   9443   
[dependencies.aws-credential-types]
 7132   9444   
path = "../aws-credential-types"
 7133   9445   
version = "1.2.4"
 7134   9446   
 7135   9447   
[dependencies.aws-runtime]
 7136   9448   
path = "../aws-runtime"
 7137   9449   
version = "1.5.9"
 7138   9450   
 7139   9451   
[dependencies.aws-smithy-async]
 7140   9452   
path = "../aws-smithy-async"
 7141   9453   
version = "1.2.5"
 7142   9454   
 7143   9455   
[dependencies.aws-smithy-http]
 7144   9456   
path = "../aws-smithy-http"
 7145         -
version = "0.62.2"
        9457  +
version = "0.62.3"
 7146   9458   
 7147   9459   
[dependencies.aws-smithy-json]
 7148   9460   
path = "../aws-smithy-json"
 7149   9461   
version = "0.61.4"
 7150   9462   
 7151   9463   
[dependencies.aws-smithy-query]
 7152   9464   
path = "../aws-smithy-query"
 7153   9465   
version = "0.60.7"
 7154   9466   
 7155   9467   
[dependencies.aws-smithy-runtime]
 7156   9468   
path = "../aws-smithy-runtime"
 7157   9469   
features = ["client"]
 7158   9470   
version = "1.8.5"
 7159   9471   
 7160   9472   
[dependencies.aws-smithy-runtime-api]
 7161   9473   
path = "../aws-smithy-runtime-api"
 7162   9474   
features = ["client", "http-02x"]
 7163   9475   
version = "1.8.5"
 7164   9476   
 7165   9477   
[dependencies.aws-smithy-types]
 7166   9478   
path = "../aws-smithy-types"
 7167   9479   
version = "1.3.2"
 7168   9480   
 7169   9481   
[dependencies.aws-smithy-xml]
 7170   9482   
path = "../aws-smithy-xml"
 7171   9483   
version = "0.60.10"
 7172   9484   
 7173   9485   
[dependencies.aws-types]
 7174   9486   
path = "../aws-types"
 7175   9487   
version = "1.3.8"
 7176   9488   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7177   9489   
index 0ed4302..3d828a5 100644
 7178         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
        9490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7179   9491   
@@ -1,61 +1,61 @@
 7180   9492   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7181   9493   
[package]
 7182   9494   
name = "aws-sdk-kms"
 7183   9495   
version = "0.0.0-local"
 7184   9496   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7185   9497   
description = "AWS SDK for AWS Key Management Service"
 7186   9498   
edition = "2021"
 7187   9499   
license = "Apache-2.0"
 7188   9500   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7189   9501   
rust-version = "1.86.0"
 7190   9502   
readme = "README.md"
 7191   9503   
[package.metadata.smithy]
 7192   9504   
codegen-version = "ci"
 7193   9505   
[package.metadata.docs.rs]
 7194   9506   
all-features = true
 7195   9507   
targets = ["x86_64-unknown-linux-gnu"]
 7196   9508   
[dependencies.aws-credential-types]
 7197   9509   
path = "../aws-credential-types"
 7198   9510   
version = "1.2.4"
 7199   9511   
 7200   9512   
[dependencies.aws-runtime]
 7201   9513   
path = "../aws-runtime"
 7202   9514   
version = "1.5.9"
 7203   9515   
 7204   9516   
[dependencies.aws-smithy-async]
 7205   9517   
path = "../aws-smithy-async"
 7206   9518   
version = "1.2.5"
 7207   9519   
 7208   9520   
[dependencies.aws-smithy-http]
 7209   9521   
path = "../aws-smithy-http"
 7210         -
version = "0.62.2"
        9522  +
version = "0.62.3"
 7211   9523   
 7212   9524   
[dependencies.aws-smithy-json]
 7213   9525   
path = "../aws-smithy-json"
 7214   9526   
version = "0.61.4"
 7215   9527   
 7216   9528   
[dependencies.aws-smithy-runtime]
 7217   9529   
path = "../aws-smithy-runtime"
 7218   9530   
features = ["client"]
 7219   9531   
version = "1.8.5"
 7220   9532   
 7221   9533   
[dependencies.aws-smithy-runtime-api]
 7222   9534   
path = "../aws-smithy-runtime-api"
 7223   9535   
features = ["client", "http-02x"]
 7224   9536   
version = "1.8.5"
 7225   9537   
 7226   9538   
[dependencies.aws-smithy-types]
 7227   9539   
path = "../aws-smithy-types"
 7228   9540   
version = "1.3.2"
 7229   9541   
 7230   9542   
[dependencies.aws-types]
 7231   9543   
path = "../aws-types"
 7232   9544   
version = "1.3.8"
 7233   9545   
 7234   9546   
[dependencies.bytes]
 7235   9547   
version = "1.4.0"
 7236   9548   
 7237   9549   
[dependencies.fastrand]
 7238   9550   
version = "2.0.0"
 7239   9551   
 7240   9552   
[dependencies.http]
 7241   9553   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7242   9554   
index 6518dfc..6b94752 100644
 7243         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
        9555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7244   9556   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 7245   9557   
edition = "2021"
 7246   9558   
license = "Apache-2.0"
 7247   9559   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7248   9560   
rust-version = "1.86.0"
 7249   9561   
readme = "README.md"
 7250   9562   
[package.metadata.smithy]
 7251   9563   
codegen-version = "ci"
 7252   9564   
[package.metadata.docs.rs]
 7253   9565   
all-features = true
 7254   9566   
targets = ["x86_64-unknown-linux-gnu"]
 7255   9567   
[dependencies.aws-credential-types]
 7256   9568   
path = "../aws-credential-types"
 7257   9569   
version = "1.2.4"
 7258   9570   
 7259   9571   
[dependencies.aws-runtime]
 7260   9572   
path = "../aws-runtime"
 7261   9573   
features = ["event-stream"]
 7262   9574   
version = "1.5.9"
 7263   9575   
 7264   9576   
[dependencies.aws-smithy-async]
 7265   9577   
path = "../aws-smithy-async"
 7266   9578   
version = "1.2.5"
 7267   9579   
 7268   9580   
[dependencies.aws-smithy-eventstream]
 7269   9581   
path = "../aws-smithy-eventstream"
 7270   9582   
version = "0.60.10"
 7271   9583   
 7272   9584   
[dependencies.aws-smithy-http]
 7273   9585   
path = "../aws-smithy-http"
 7274   9586   
features = ["event-stream"]
 7275         -
version = "0.62.2"
        9587  +
version = "0.62.3"
 7276   9588   
 7277   9589   
[dependencies.aws-smithy-json]
 7278   9590   
path = "../aws-smithy-json"
 7279   9591   
version = "0.61.4"
 7280   9592   
 7281   9593   
[dependencies.aws-smithy-runtime]
 7282   9594   
path = "../aws-smithy-runtime"
 7283   9595   
features = ["client"]
 7284   9596   
version = "1.8.5"
 7285   9597   
 7286   9598   
[dependencies.aws-smithy-runtime-api]
 7287   9599   
path = "../aws-smithy-runtime-api"
 7288   9600   
features = ["client", "http-02x"]
 7289   9601   
version = "1.8.5"
 7290   9602   
 7291   9603   
[dependencies.aws-smithy-types]
 7292   9604   
path = "../aws-smithy-types"
 7293   9605   
version = "1.3.2"
 7294   9606   
 7295   9607   
[dependencies.aws-types]
 7296   9608   
path = "../aws-types"
 7297   9609   
version = "1.3.8"
 7298   9610   
 7299   9611   
[dependencies.bytes]
 7300   9612   
version = "1.4.0"
 7301   9613   
 7302   9614   
[dependencies.fastrand]
 7303   9615   
version = "2.0.0"
 7304   9616   
 7305   9617   
[dependencies.http]
 7306   9618   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7307   9619   
index dabb0e0..34cbc15 100644
 7308         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
        9620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7309   9621   
@@ -1,65 +1,65 @@
 7310   9622   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7311   9623   
[package]
 7312   9624   
name = "aws-sdk-polly"
 7313   9625   
version = "0.0.0-local"
 7314   9626   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7315   9627   
description = "AWS SDK for Amazon Polly"
 7316   9628   
edition = "2021"
 7317   9629   
license = "Apache-2.0"
 7318   9630   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7319   9631   
rust-version = "1.86.0"
 7320   9632   
readme = "README.md"
 7321   9633   
[package.metadata.smithy]
 7322   9634   
codegen-version = "ci"
 7323   9635   
[package.metadata.docs.rs]
 7324   9636   
all-features = true
 7325   9637   
targets = ["x86_64-unknown-linux-gnu"]
 7326   9638   
[dependencies.aws-credential-types]
 7327   9639   
path = "../aws-credential-types"
 7328   9640   
version = "1.2.4"
 7329   9641   
 7330   9642   
[dependencies.aws-runtime]
 7331   9643   
path = "../aws-runtime"
 7332   9644   
version = "1.5.9"
 7333   9645   
 7334   9646   
[dependencies.aws-sigv4]
 7335   9647   
path = "../aws-sigv4"
 7336         -
version = "1.3.3"
        9648  +
version = "1.3.4"
 7337   9649   
 7338   9650   
[dependencies.aws-smithy-async]
 7339   9651   
path = "../aws-smithy-async"
 7340   9652   
version = "1.2.5"
 7341   9653   
 7342   9654   
[dependencies.aws-smithy-http]
 7343   9655   
path = "../aws-smithy-http"
 7344         -
version = "0.62.2"
        9656  +
version = "0.62.3"
 7345   9657   
 7346   9658   
[dependencies.aws-smithy-json]
 7347   9659   
path = "../aws-smithy-json"
 7348   9660   
version = "0.61.4"
 7349   9661   
 7350   9662   
[dependencies.aws-smithy-runtime]
 7351   9663   
path = "../aws-smithy-runtime"
 7352   9664   
features = ["client"]
 7353   9665   
version = "1.8.5"
 7354   9666   
 7355   9667   
[dependencies.aws-smithy-runtime-api]
 7356   9668   
path = "../aws-smithy-runtime-api"
 7357   9669   
features = ["client", "http-02x"]
 7358   9670   
version = "1.8.5"
 7359   9671   
 7360   9672   
[dependencies.aws-smithy-types]
 7361   9673   
path = "../aws-smithy-types"
 7362   9674   
version = "1.3.2"
 7363   9675   
 7364   9676   
[dependencies.aws-types]
 7365   9677   
path = "../aws-types"
 7366   9678   
version = "1.3.8"
 7367   9679   
 7368   9680   
[dependencies.bytes]
 7369   9681   
version = "1.4.0"
 7370   9682   
 7371   9683   
[dependencies.fastrand]
 7372   9684   
version = "2.0.0"
 7373   9685   
 7374   9686   
[dependencies.http]
 7375   9687   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7376   9688   
index a884716..f3d8713 100644
 7377         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
        9689  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7378   9690   
@@ -1,61 +1,61 @@
 7379   9691   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7380   9692   
[package]
 7381   9693   
name = "aws-sdk-qldbsession"
 7382   9694   
version = "0.0.0-local"
 7383   9695   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7384   9696   
description = "AWS SDK for Amazon QLDB Session"
 7385   9697   
edition = "2021"
 7386   9698   
license = "Apache-2.0"
 7387   9699   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7388   9700   
rust-version = "1.86.0"
 7389   9701   
readme = "README.md"
 7390   9702   
[package.metadata.smithy]
 7391   9703   
codegen-version = "ci"
 7392   9704   
[package.metadata.docs.rs]
 7393   9705   
all-features = true
 7394   9706   
targets = ["x86_64-unknown-linux-gnu"]
 7395   9707   
[dependencies.aws-credential-types]
 7396   9708   
path = "../aws-credential-types"
 7397   9709   
version = "1.2.4"
 7398   9710   
 7399   9711   
[dependencies.aws-runtime]
 7400   9712   
path = "../aws-runtime"
 7401   9713   
version = "1.5.9"
 7402   9714   
 7403   9715   
[dependencies.aws-smithy-async]
 7404   9716   
path = "../aws-smithy-async"
 7405   9717   
version = "1.2.5"
 7406   9718   
 7407   9719   
[dependencies.aws-smithy-http]
 7408   9720   
path = "../aws-smithy-http"
 7409         -
version = "0.62.2"
        9721  +
version = "0.62.3"
 7410   9722   
 7411   9723   
[dependencies.aws-smithy-json]
 7412   9724   
path = "../aws-smithy-json"
 7413   9725   
version = "0.61.4"
 7414   9726   
 7415   9727   
[dependencies.aws-smithy-runtime]
 7416   9728   
path = "../aws-smithy-runtime"
 7417   9729   
features = ["client"]
 7418   9730   
version = "1.8.5"
 7419   9731   
 7420   9732   
[dependencies.aws-smithy-runtime-api]
 7421   9733   
path = "../aws-smithy-runtime-api"
 7422   9734   
features = ["client", "http-02x"]
 7423   9735   
version = "1.8.5"
 7424   9736   
 7425   9737   
[dependencies.aws-smithy-types]
 7426   9738   
path = "../aws-smithy-types"
 7427   9739   
version = "1.3.2"
 7428   9740   
 7429   9741   
[dependencies.aws-types]
 7430   9742   
path = "../aws-types"
 7431   9743   
version = "1.3.8"
 7432   9744   
 7433   9745   
[dependencies.bytes]
 7434   9746   
version = "1.4.0"
 7435   9747   
 7436   9748   
[dependencies.fastrand]
 7437   9749   
version = "2.0.0"
 7438   9750   
 7439   9751   
[dependencies.http]
 7440   9752   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7441   9753   
index 32a7dc9..a2c752d 100644
 7442         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
        9754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7443   9755   
@@ -1,61 +1,61 @@
 7444   9756   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7445   9757   
[package]
 7446   9758   
name = "aws-sdk-route53"
 7447   9759   
version = "0.0.0-local"
 7448   9760   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7449   9761   
description = "AWS SDK for Amazon Route 53"
 7450   9762   
edition = "2021"
 7451   9763   
license = "Apache-2.0"
 7452   9764   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7453   9765   
rust-version = "1.86.0"
 7454   9766   
readme = "README.md"
 7455   9767   
[package.metadata.smithy]
 7456   9768   
codegen-version = "ci"
 7457   9769   
[package.metadata.docs.rs]
 7458   9770   
all-features = true
 7459   9771   
targets = ["x86_64-unknown-linux-gnu"]
 7460   9772   
[dependencies.aws-credential-types]
 7461   9773   
path = "../aws-credential-types"
 7462   9774   
version = "1.2.4"
 7463   9775   
 7464   9776   
[dependencies.aws-runtime]
 7465   9777   
path = "../aws-runtime"
 7466   9778   
version = "1.5.9"
 7467   9779   
 7468   9780   
[dependencies.aws-smithy-async]
 7469   9781   
path = "../aws-smithy-async"
 7470   9782   
version = "1.2.5"
 7471   9783   
 7472   9784   
[dependencies.aws-smithy-http]
 7473   9785   
path = "../aws-smithy-http"
 7474         -
version = "0.62.2"
        9786  +
version = "0.62.3"
 7475   9787   
 7476   9788   
[dependencies.aws-smithy-json]
 7477   9789   
path = "../aws-smithy-json"
 7478   9790   
version = "0.61.4"
 7479   9791   
 7480   9792   
[dependencies.aws-smithy-runtime]
 7481   9793   
path = "../aws-smithy-runtime"
 7482   9794   
features = ["client"]
 7483   9795   
version = "1.8.5"
 7484   9796   
 7485   9797   
[dependencies.aws-smithy-runtime-api]
 7486   9798   
path = "../aws-smithy-runtime-api"
 7487   9799   
features = ["client", "http-02x"]
 7488   9800   
version = "1.8.5"
 7489   9801   
 7490   9802   
[dependencies.aws-smithy-types]
 7491   9803   
path = "../aws-smithy-types"
 7492   9804   
version = "1.3.2"
 7493   9805   
 7494   9806   
[dependencies.aws-smithy-xml]
 7495   9807   
path = "../aws-smithy-xml"
 7496   9808   
version = "0.60.10"
 7497   9809   
 7498   9810   
[dependencies.aws-types]
 7499   9811   
path = "../aws-types"
 7500   9812   
version = "1.3.8"
 7501   9813   
 7502   9814   
[dependencies.fastrand]
 7503   9815   
version = "2.0.0"
 7504   9816   
 7505   9817   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7506   9818   
index f65e261..2f6bec0 100644
 7507         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
        9819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7508   9820   
@@ -1,75 +1,75 @@
 7509   9821   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7510   9822   
[package]
 7511   9823   
name = "aws-sdk-s3"
 7512   9824   
version = "0.0.0-local"
 7513   9825   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7514   9826   
description = "AWS SDK for Amazon Simple Storage Service"
 7515   9827   
edition = "2021"
 7516   9828   
license = "Apache-2.0"
 7517   9829   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7518   9830   
rust-version = "1.86.0"
 7519   9831   
readme = "README.md"
 7520   9832   
[package.metadata.smithy]
 7521   9833   
codegen-version = "ci"
 7522   9834   
[package.metadata.docs.rs]
 7523   9835   
all-features = true
 7524   9836   
targets = ["x86_64-unknown-linux-gnu"]
 7525   9837   
[dependencies.aws-credential-types]
 7526   9838   
path = "../aws-credential-types"
 7527   9839   
version = "1.2.4"
 7528   9840   
 7529   9841   
[dependencies.aws-runtime]
 7530   9842   
path = "../aws-runtime"
 7531   9843   
features = ["event-stream", "http-02x"]
 7532   9844   
version = "1.5.9"
 7533   9845   
 7534   9846   
[dependencies.aws-sigv4]
 7535   9847   
path = "../aws-sigv4"
 7536         -
version = "1.3.3"
        9848  +
version = "1.3.4"
 7537   9849   
 7538   9850   
[dependencies.aws-smithy-async]
 7539   9851   
path = "../aws-smithy-async"
 7540   9852   
version = "1.2.5"
 7541   9853   
 7542   9854   
[dependencies.aws-smithy-checksums]
 7543   9855   
path = "../aws-smithy-checksums"
 7544   9856   
version = "0.63.5"
 7545   9857   
 7546   9858   
[dependencies.aws-smithy-eventstream]
 7547   9859   
path = "../aws-smithy-eventstream"
 7548   9860   
version = "0.60.10"
 7549   9861   
 7550   9862   
[dependencies.aws-smithy-http]
 7551   9863   
path = "../aws-smithy-http"
 7552   9864   
features = ["event-stream"]
 7553         -
version = "0.62.2"
        9865  +
version = "0.62.3"
 7554   9866   
 7555   9867   
[dependencies.aws-smithy-json]
 7556   9868   
path = "../aws-smithy-json"
 7557   9869   
version = "0.61.4"
 7558   9870   
 7559   9871   
[dependencies.aws-smithy-runtime]
 7560   9872   
path = "../aws-smithy-runtime"
 7561   9873   
features = ["client"]
 7562   9874   
version = "1.8.5"
 7563   9875   
 7564   9876   
[dependencies.aws-smithy-runtime-api]
 7565   9877   
path = "../aws-smithy-runtime-api"
 7566   9878   
features = ["client", "http-02x"]
 7567   9879   
version = "1.8.5"
 7568   9880   
 7569   9881   
[dependencies.aws-smithy-types]
 7570   9882   
path = "../aws-smithy-types"
 7571   9883   
version = "1.3.2"
 7572   9884   
 7573   9885   
[dependencies.aws-smithy-xml]
 7574   9886   
path = "../aws-smithy-xml"
 7575   9887   
version = "0.60.10"
 7576   9888   
 7577   9889   
[dependencies.aws-types]
 7578   9890   
path = "../aws-types"
 7579   9891   
version = "1.3.8"
 7580   9892   
 7581   9893   
[dependencies.bytes]
 7582   9894   
version = "1.4.0"
 7583   9895   
 7584   9896   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7585   9897   
index b4d1cdd..861c0cc 100644
 7586         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
        9898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7587   9899   
@@ -1,61 +1,61 @@
 7588   9900   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7589   9901   
[package]
 7590   9902   
name = "aws-sdk-s3control"
 7591   9903   
version = "0.0.0-local"
 7592   9904   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7593   9905   
description = "AWS SDK for AWS S3 Control"
 7594   9906   
edition = "2021"
 7595   9907   
license = "Apache-2.0"
 7596   9908   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7597   9909   
rust-version = "1.86.0"
 7598   9910   
readme = "README.md"
 7599   9911   
[package.metadata.smithy]
 7600   9912   
codegen-version = "ci"
 7601   9913   
[package.metadata.docs.rs]
 7602   9914   
all-features = true
 7603   9915   
targets = ["x86_64-unknown-linux-gnu"]
 7604   9916   
[dependencies.aws-credential-types]
 7605   9917   
path = "../aws-credential-types"
 7606   9918   
version = "1.2.4"
 7607   9919   
 7608   9920   
[dependencies.aws-runtime]
 7609   9921   
path = "../aws-runtime"
 7610   9922   
version = "1.5.9"
 7611   9923   
 7612   9924   
[dependencies.aws-smithy-async]
 7613   9925   
path = "../aws-smithy-async"
 7614   9926   
version = "1.2.5"
 7615   9927   
 7616   9928   
[dependencies.aws-smithy-http]
 7617   9929   
path = "../aws-smithy-http"
 7618         -
version = "0.62.2"
        9930  +
version = "0.62.3"
 7619   9931   
 7620   9932   
[dependencies.aws-smithy-json]
 7621   9933   
path = "../aws-smithy-json"
 7622   9934   
version = "0.61.4"
 7623   9935   
 7624   9936   
[dependencies.aws-smithy-runtime]
 7625   9937   
path = "../aws-smithy-runtime"
 7626   9938   
features = ["client"]
 7627   9939   
version = "1.8.5"
 7628   9940   
 7629   9941   
[dependencies.aws-smithy-runtime-api]
 7630   9942   
path = "../aws-smithy-runtime-api"
 7631   9943   
features = ["client", "http-02x"]
 7632   9944   
version = "1.8.5"
 7633   9945   
 7634   9946   
[dependencies.aws-smithy-types]
 7635   9947   
path = "../aws-smithy-types"
 7636   9948   
version = "1.3.2"
 7637   9949   
 7638   9950   
[dependencies.aws-smithy-xml]
 7639   9951   
path = "../aws-smithy-xml"
 7640   9952   
version = "0.60.10"
 7641   9953   
 7642   9954   
[dependencies.aws-types]
 7643   9955   
path = "../aws-types"
 7644   9956   
version = "1.3.8"
 7645   9957   
 7646   9958   
[dependencies.fastrand]
 7647   9959   
version = "2.0.0"
 7648   9960   
 7649   9961   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7650   9962   
index 2cde182..fc367f4 100644
 7651         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
        9963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7652   9964   
@@ -1,61 +1,61 @@
 7653   9965   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7654   9966   
[package]
 7655   9967   
name = "aws-sdk-sso"
 7656   9968   
version = "0.0.0-local"
 7657   9969   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7658   9970   
description = "AWS SDK for AWS Single Sign-On"
 7659   9971   
edition = "2021"
 7660   9972   
license = "Apache-2.0"
 7661   9973   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7662   9974   
rust-version = "1.86.0"
 7663   9975   
readme = "README.md"
 7664   9976   
[package.metadata.smithy]
 7665   9977   
codegen-version = "ci"
 7666   9978   
[package.metadata.docs.rs]
 7667   9979   
all-features = true
 7668   9980   
targets = ["x86_64-unknown-linux-gnu"]
 7669   9981   
[dependencies.aws-credential-types]
 7670   9982   
path = "../aws-credential-types"
 7671   9983   
version = "1.2.4"
 7672   9984   
 7673   9985   
[dependencies.aws-runtime]
 7674   9986   
path = "../aws-runtime"
 7675   9987   
version = "1.5.9"
 7676   9988   
 7677   9989   
[dependencies.aws-smithy-async]
 7678   9990   
path = "../aws-smithy-async"
 7679   9991   
version = "1.2.5"
 7680   9992   
 7681   9993   
[dependencies.aws-smithy-http]
 7682   9994   
path = "../aws-smithy-http"
 7683         -
version = "0.62.2"
        9995  +
version = "0.62.3"
 7684   9996   
 7685   9997   
[dependencies.aws-smithy-json]
 7686   9998   
path = "../aws-smithy-json"
 7687   9999   
version = "0.61.4"
 7688  10000   
 7689  10001   
[dependencies.aws-smithy-runtime]
 7690  10002   
path = "../aws-smithy-runtime"
 7691  10003   
features = ["client"]
 7692  10004   
version = "1.8.5"
 7693  10005   
 7694  10006   
[dependencies.aws-smithy-runtime-api]
 7695  10007   
path = "../aws-smithy-runtime-api"
 7696  10008   
features = ["client", "http-02x"]
 7697  10009   
version = "1.8.5"
 7698  10010   
 7699  10011   
[dependencies.aws-smithy-types]
 7700  10012   
path = "../aws-smithy-types"
 7701  10013   
version = "1.3.2"
 7702  10014   
 7703  10015   
[dependencies.aws-types]
 7704  10016   
path = "../aws-types"
 7705  10017   
version = "1.3.8"
 7706  10018   
 7707  10019   
[dependencies.bytes]
 7708  10020   
version = "1.4.0"
 7709  10021   
 7710  10022   
[dependencies.fastrand]
 7711  10023   
version = "2.0.0"
 7712  10024   
 7713  10025   
[dependencies.http]
 7714  10026   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 7715  10027   
index 7a34c16..588d0bd 100644
 7716         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       10028  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 7717  10029   
@@ -1,61 +1,61 @@
 7718  10030   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7719  10031   
[package]
 7720  10032   
name = "aws-sdk-ssooidc"
 7721  10033   
version = "0.0.0-local"
 7722  10034   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7723  10035   
description = "AWS SDK for AWS SSO OIDC"
 7724  10036   
edition = "2021"
 7725  10037   
license = "Apache-2.0"
 7726  10038   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7727  10039   
rust-version = "1.86.0"
 7728  10040   
readme = "README.md"
 7729  10041   
[package.metadata.smithy]
 7730  10042   
codegen-version = "ci"
 7731  10043   
[package.metadata.docs.rs]
 7732  10044   
all-features = true
 7733  10045   
targets = ["x86_64-unknown-linux-gnu"]
 7734  10046   
[dependencies.aws-credential-types]
 7735  10047   
path = "../aws-credential-types"
 7736  10048   
version = "1.2.4"
 7737  10049   
 7738  10050   
[dependencies.aws-runtime]
 7739  10051   
path = "../aws-runtime"
 7740  10052   
version = "1.5.9"
 7741  10053   
 7742  10054   
[dependencies.aws-smithy-async]
 7743  10055   
path = "../aws-smithy-async"
 7744  10056   
version = "1.2.5"
 7745  10057   
 7746  10058   
[dependencies.aws-smithy-http]
 7747  10059   
path = "../aws-smithy-http"
 7748         -
version = "0.62.2"
       10060  +
version = "0.62.3"
 7749  10061   
 7750  10062   
[dependencies.aws-smithy-json]
 7751  10063   
path = "../aws-smithy-json"
 7752  10064   
version = "0.61.4"
 7753  10065   
 7754  10066   
[dependencies.aws-smithy-runtime]
 7755  10067   
path = "../aws-smithy-runtime"
 7756  10068   
features = ["client"]
 7757  10069   
version = "1.8.5"
 7758  10070   
 7759  10071   
[dependencies.aws-smithy-runtime-api]
 7760  10072   
path = "../aws-smithy-runtime-api"
 7761  10073   
features = ["client", "http-02x"]
 7762  10074   
version = "1.8.5"
 7763  10075   
 7764  10076   
[dependencies.aws-smithy-types]
 7765  10077   
path = "../aws-smithy-types"
 7766  10078   
version = "1.3.2"
 7767  10079   
 7768  10080   
[dependencies.aws-types]
 7769  10081   
path = "../aws-types"
 7770  10082   
version = "1.3.8"
 7771  10083   
 7772  10084   
[dependencies.bytes]
 7773  10085   
version = "1.4.0"
 7774  10086   
 7775  10087   
[dependencies.fastrand]
 7776  10088   
version = "2.0.0"
 7777  10089   
 7778  10090   
[dependencies.http]
 7779  10091   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 7780  10092   
index 895dfb3..f2ce34e 100644
 7781         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       10093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 7782  10094   
@@ -1,61 +1,61 @@
 7783  10095   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7784  10096   
[package]
 7785  10097   
name = "aws-sdk-sts"
 7786  10098   
version = "0.0.0-local"
 7787  10099   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7788  10100   
description = "AWS SDK for AWS Security Token Service"
 7789  10101   
edition = "2021"
 7790  10102   
license = "Apache-2.0"
 7791  10103   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7792  10104   
rust-version = "1.86.0"
 7793  10105   
readme = "README.md"
 7794  10106   
[package.metadata.smithy]
 7795  10107   
codegen-version = "ci"
 7796  10108   
[package.metadata.docs.rs]
 7797  10109   
all-features = true
 7798  10110   
targets = ["x86_64-unknown-linux-gnu"]
 7799  10111   
[dependencies.aws-credential-types]
 7800  10112   
path = "../aws-credential-types"
 7801  10113   
version = "1.2.4"
 7802  10114   
 7803  10115   
[dependencies.aws-runtime]
 7804  10116   
path = "../aws-runtime"
 7805  10117   
version = "1.5.9"
 7806  10118   
 7807  10119   
[dependencies.aws-smithy-async]
 7808  10120   
path = "../aws-smithy-async"
 7809  10121   
version = "1.2.5"
 7810  10122   
 7811  10123   
[dependencies.aws-smithy-http]
 7812  10124   
path = "../aws-smithy-http"
 7813         -
version = "0.62.2"
       10125  +
version = "0.62.3"
 7814  10126   
 7815  10127   
[dependencies.aws-smithy-json]
 7816  10128   
path = "../aws-smithy-json"
 7817  10129   
version = "0.61.4"
 7818  10130   
 7819  10131   
[dependencies.aws-smithy-query]
 7820  10132   
path = "../aws-smithy-query"
 7821  10133   
version = "0.60.7"
 7822  10134   
 7823  10135   
[dependencies.aws-smithy-runtime]
 7824  10136   
path = "../aws-smithy-runtime"
 7825  10137   
features = ["client"]
 7826  10138   
version = "1.8.5"
 7827  10139   
 7828  10140   
[dependencies.aws-smithy-runtime-api]
 7829  10141   
path = "../aws-smithy-runtime-api"
 7830  10142   
features = ["client", "http-02x"]
 7831  10143   
version = "1.8.5"
 7832  10144   
 7833  10145   
[dependencies.aws-smithy-types]
 7834  10146   
path = "../aws-smithy-types"
 7835  10147   
version = "1.3.2"
 7836  10148   
 7837  10149   
[dependencies.aws-smithy-xml]
 7838  10150   
path = "../aws-smithy-xml"
 7839  10151   
version = "0.60.10"
 7840  10152   
 7841  10153   
[dependencies.aws-types]
 7842  10154   
path = "../aws-types"
 7843  10155   
version = "1.3.8"
 7844  10156   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 7845  10157   
index d556561..91178b6 100644
 7846         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       10158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 7847  10159   
@@ -1,61 +1,61 @@
 7848  10160   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7849  10161   
[package]
 7850  10162   
name = "aws-sdk-timestreamquery"
 7851  10163   
version = "0.0.0-local"
 7852  10164   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7853  10165   
description = "AWS SDK for Amazon Timestream Query"
 7854  10166   
edition = "2021"
 7855  10167   
license = "Apache-2.0"
 7856  10168   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7857  10169   
rust-version = "1.86.0"
 7858  10170   
readme = "README.md"
 7859  10171   
[package.metadata.smithy]
 7860  10172   
codegen-version = "ci"
 7861  10173   
[package.metadata.docs.rs]
 7862  10174   
all-features = true
 7863  10175   
targets = ["x86_64-unknown-linux-gnu"]
 7864  10176   
[dependencies.aws-credential-types]
 7865  10177   
path = "../aws-credential-types"
 7866  10178   
version = "1.2.4"
 7867  10179   
 7868  10180   
[dependencies.aws-runtime]
 7869  10181   
path = "../aws-runtime"
 7870  10182   
version = "1.5.9"
 7871  10183   
 7872  10184   
[dependencies.aws-smithy-async]
 7873  10185   
path = "../aws-smithy-async"
 7874  10186   
version = "1.2.5"
 7875  10187   
 7876  10188   
[dependencies.aws-smithy-http]
 7877  10189   
path = "../aws-smithy-http"
 7878         -
version = "0.62.2"
       10190  +
version = "0.62.3"
 7879  10191   
 7880  10192   
[dependencies.aws-smithy-json]
 7881  10193   
path = "../aws-smithy-json"
 7882  10194   
version = "0.61.4"
 7883  10195   
 7884  10196   
[dependencies.aws-smithy-runtime]
 7885  10197   
path = "../aws-smithy-runtime"
 7886  10198   
features = ["client"]
 7887  10199   
version = "1.8.5"
 7888  10200   
 7889  10201   
[dependencies.aws-smithy-runtime-api]
 7890  10202   
path = "../aws-smithy-runtime-api"
 7891  10203   
features = ["client", "http-02x"]
 7892  10204   
version = "1.8.5"
 7893  10205   
 7894  10206   
[dependencies.aws-smithy-types]
 7895  10207   
path = "../aws-smithy-types"
 7896  10208   
version = "1.3.2"
 7897  10209   
 7898  10210   
[dependencies.aws-types]
 7899  10211   
path = "../aws-types"
 7900  10212   
version = "1.3.8"
 7901  10213   
 7902  10214   
[dependencies.bytes]
 7903  10215   
version = "1.4.0"
 7904  10216   
 7905  10217   
[dependencies.fastrand]
 7906  10218   
version = "2.0.0"
 7907  10219   
 7908  10220   
[dependencies.http]
 7909  10221   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 7910  10222   
index 0c56e4c..95731e3 100644
 7911         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       10223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 7912  10224   
@@ -1,61 +1,61 @@
 7913  10225   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7914  10226   
[package]
 7915  10227   
name = "aws-sdk-timestreamwrite"
 7916  10228   
version = "0.0.0-local"
 7917  10229   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7918  10230   
description = "AWS SDK for Amazon Timestream Write"
 7919  10231   
edition = "2021"
 7920  10232   
license = "Apache-2.0"
 7921  10233   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7922  10234   
rust-version = "1.86.0"
 7923  10235   
readme = "README.md"
 7924  10236   
[package.metadata.smithy]
 7925  10237   
codegen-version = "ci"
 7926  10238   
[package.metadata.docs.rs]
 7927  10239   
all-features = true
 7928  10240   
targets = ["x86_64-unknown-linux-gnu"]
 7929  10241   
[dependencies.aws-credential-types]
 7930  10242   
path = "../aws-credential-types"
 7931  10243   
version = "1.2.4"
 7932  10244   
 7933  10245   
[dependencies.aws-runtime]
 7934  10246   
path = "../aws-runtime"
 7935  10247   
version = "1.5.9"
 7936  10248   
 7937  10249   
[dependencies.aws-smithy-async]
 7938  10250   
path = "../aws-smithy-async"
 7939  10251   
version = "1.2.5"
 7940  10252   
 7941  10253   
[dependencies.aws-smithy-http]
 7942  10254   
path = "../aws-smithy-http"
 7943         -
version = "0.62.2"
       10255  +
version = "0.62.3"
 7944  10256   
 7945  10257   
[dependencies.aws-smithy-json]
 7946  10258   
path = "../aws-smithy-json"
 7947  10259   
version = "0.61.4"
 7948  10260   
 7949  10261   
[dependencies.aws-smithy-runtime]
 7950  10262   
path = "../aws-smithy-runtime"
 7951  10263   
features = ["client"]
 7952  10264   
version = "1.8.5"
 7953  10265   
 7954  10266   
[dependencies.aws-smithy-runtime-api]
 7955  10267   
path = "../aws-smithy-runtime-api"
 7956  10268   
features = ["client", "http-02x"]
 7957  10269   
version = "1.8.5"
 7958  10270   
 7959  10271   
[dependencies.aws-smithy-types]
 7960  10272   
path = "../aws-smithy-types"
 7961  10273   
version = "1.3.2"
 7962  10274   
 7963  10275   
[dependencies.aws-types]
 7964  10276   
path = "../aws-types"
 7965  10277   
version = "1.3.8"
 7966  10278   
 7967  10279   
[dependencies.bytes]
 7968  10280   
version = "1.4.0"
 7969  10281   
 7970  10282   
[dependencies.fastrand]
 7971  10283   
version = "2.0.0"
 7972  10284   
 7973  10285   
[dependencies.http]
 7974  10286   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 7975  10287   
index 5b35037..9fb220a 100644
 7976         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       10288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 7977  10289   
@@ -1,71 +1,71 @@
 7978  10290   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7979  10291   
[package]
 7980  10292   
name = "aws-sdk-transcribestreaming"
 7981  10293   
version = "0.0.0-local"
 7982  10294   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7983  10295   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 7984  10296   
edition = "2021"
 7985  10297   
license = "Apache-2.0"
 7986  10298   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7987  10299   
rust-version = "1.86.0"
 7988  10300   
readme = "README.md"
 7989  10301   
[package.metadata.smithy]
 7990  10302   
codegen-version = "ci"
 7991  10303   
[package.metadata.docs.rs]
 7992  10304   
all-features = true
 7993  10305   
targets = ["x86_64-unknown-linux-gnu"]
 7994  10306   
[dependencies.aws-credential-types]
 7995  10307   
path = "../aws-credential-types"
 7996  10308   
version = "1.2.4"
 7997  10309   
 7998  10310   
[dependencies.aws-runtime]
 7999  10311   
path = "../aws-runtime"
 8000  10312   
features = ["event-stream"]
 8001  10313   
version = "1.5.9"
 8002  10314   
 8003  10315   
[dependencies.aws-sigv4]
 8004  10316   
path = "../aws-sigv4"
 8005         -
version = "1.3.3"
       10317  +
version = "1.3.4"
 8006  10318   
 8007  10319   
[dependencies.aws-smithy-async]
 8008  10320   
path = "../aws-smithy-async"
 8009  10321   
version = "1.2.5"
 8010  10322   
 8011  10323   
[dependencies.aws-smithy-eventstream]
 8012  10324   
path = "../aws-smithy-eventstream"
 8013  10325   
version = "0.60.10"
 8014  10326   
 8015  10327   
[dependencies.aws-smithy-http]
 8016  10328   
path = "../aws-smithy-http"
 8017  10329   
features = ["event-stream"]
 8018         -
version = "0.62.2"
       10330  +
version = "0.62.3"
 8019  10331   
 8020  10332   
[dependencies.aws-smithy-json]
 8021  10333   
path = "../aws-smithy-json"
 8022  10334   
version = "0.61.4"
 8023  10335   
 8024  10336   
[dependencies.aws-smithy-runtime]
 8025  10337   
path = "../aws-smithy-runtime"
 8026  10338   
features = ["client"]
 8027  10339   
version = "1.8.5"
 8028  10340