AWS SDK

AWS SDK

rev. 3964b40d6806bc3f52bd311e2c791030c3325f2c

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 +9147,11459 @@
    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         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
         295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
  874    296   
@@ -1,12 +1,12 @@
  875    297   
{
  876    298   
    "credentials": {
  877    299   
        "access_key_id": "AKIDEXAMPLE",
  878    300   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  879    301   
    },
  880    302   
    "expiration_in_seconds": 3600,
  881    303   
    "normalize": true,
  882    304   
    "region": "us-east-1",
  883    305   
    "service": "service",
  884    306   
    "sign_body": false,
  885    307   
    "timestamp": "2015-08-30T12:36:00Z"
  886         -
}
         308  +
}
              \
 No newline at end of file
  887    309   
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
  888    310   
similarity index 100%
  889    311   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
  890    312   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
  891    313   
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
  892    314   
new file mode 100644
  893    315   
index 0000000..7fc5d7a
  894         -
-- /dev/null
         316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
  895    317   
@@ -0,0 +1 @@
         318  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
  896    319   
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
  897    320   
new file mode 100644
  898    321   
index 0000000..36a1205
  899         -
-- /dev/null
         322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
  900    323   
@@ -0,0 +1,8 @@
         324  +
GET / HTTP/1.1
         325  +
Host:example.amazonaws.com
         326  +
My-Header1:value2
         327  +
My-Header1:value2
         328  +
My-Header1:value1
         329  +
X-Amz-Date:20150830T123600Z
         330  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         331  +
  901    332   
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
  902    333   
similarity index 100%
  903    334   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
  904    335   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
  905    336   
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
  906    337   
new file mode 100644
  907    338   
index 0000000..f9f4190
  908         -
-- /dev/null
         339  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
  909    340   
@@ -0,0 +1,8 @@
         341  +
GET
         342  +
/
         343  +
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
         344  +
host:example.amazonaws.com
         345  +
my-header1:value2,value2,value1
         346  +
         347  +
host;my-header1
         348  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  910    349   
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
  911    350   
new file mode 100644
  912    351   
index 0000000..5d0d87f
  913         -
-- /dev/null
         352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
  914    353   
@@ -0,0 +1 @@
         354  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
  915    355   
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
  916    356   
new file mode 100644
  917    357   
index 0000000..c1dfcf4
  918         -
-- /dev/null
         358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
  919    359   
@@ -0,0 +1,6 @@
         360  +
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
         361  +
Host:example.amazonaws.com
         362  +
My-Header1:value2
         363  +
My-Header1:value2
         364  +
My-Header1:value1
         365  +
  920    366   
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
  921    367   
similarity index 53%
  922    368   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
  923    369   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
  924    370   
index 0a3350a..077c1bb 100644
  925         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
  926    372   
@@ -1,4 +1,4 @@
  927    373   
AWS4-HMAC-SHA256
  928    374   
20150830T123600Z
  929    375   
20150830/us-east-1/service/aws4_request
  930         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         376  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
  931    377   
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
  932    378   
similarity index 100%
  933    379   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
  934    380   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
  935    381   
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
  936    382   
similarity index 99%
  937    383   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
  938    384   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
  939    385   
index 45771c7..0468d80 100644
  940         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
         386  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
  941    387   
@@ -1,12 +1,12 @@
  942    388   
{
  943    389   
    "credentials": {
  944    390   
        "access_key_id": "AKIDEXAMPLE",
  945    391   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  946    392   
    },
  947    393   
    "expiration_in_seconds": 3600,
  948    394   
    "normalize": true,
  949    395   
    "region": "us-east-1",
  950    396   
    "service": "service",
  951    397   
    "sign_body": false,
  952    398   
    "timestamp": "2015-08-30T12:36:00Z"
  953         -
}
         399  +
}
              \
 No newline at end of file
  954    400   
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
  955    401   
similarity index 82%
  956    402   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
  957    403   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
  958    404   
index 721a39f..8cb5476 100644
  959         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         405  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
  960    406   
@@ -1,9 +1,9 @@
  961    407   
GET
  962    408   
/
  963    409   
  964    410   
host:example.amazonaws.com
  965         -
my-header1:value1,value2,value3
         411  +
my-header1:value1 value2 value3
  966    412   
x-amz-date:20150830T123600Z
  967    413   
  968    414   
host;my-header1;x-amz-date
  969    415   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  970    416   
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
  971    417   
new file mode 100644
  972    418   
index 0000000..e6ff7a9
  973         -
-- /dev/null
         419  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
  974    420   
@@ -0,0 +1 @@
         421  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
  975    422   
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
  976    423   
new file mode 100644
  977    424   
index 0000000..b5ef6a0
  978         -
-- /dev/null
         425  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
  979    426   
@@ -0,0 +1,8 @@
         427  +
GET / HTTP/1.1
         428  +
Host:example.amazonaws.com
         429  +
My-Header1:value1
         430  +
  value2
         431  +
     value3
         432  +
X-Amz-Date:20150830T123600Z
         433  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         434  +
  980    435   
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
  981    436   
similarity index 53%
  982    437   
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
  983    438   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
  984    439   
index fd43a41..97c7430 100644
  985         -
-- 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
         440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
  986    441   
@@ -1,4 +1,4 @@
  987    442   
AWS4-HMAC-SHA256
  988    443   
20150830T123600Z
  989    444   
20150830/us-east-1/service/aws4_request
  990         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         445  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
  991    446   
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
  992    447   
new file mode 100644
  993    448   
index 0000000..aac46de
  994         -
-- /dev/null
         449  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
  995    450   
@@ -0,0 +1,8 @@
         451  +
GET
         452  +
/
         453  +
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
         454  +
host:example.amazonaws.com
         455  +
my-header1:value1 value2 value3
         456  +
         457  +
host;my-header1
         458  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  996    459   
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
  997    460   
new file mode 100644
  998    461   
index 0000000..205732d
  999         -
-- /dev/null
         462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1000    463   
@@ -0,0 +1 @@
         464  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1001    465   
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
 1002    466   
new file mode 100644
 1003    467   
index 0000000..a891b87
 1004         -
-- /dev/null
         468  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1005    469   
@@ -0,0 +1,6 @@
         470  +
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
         471  +
Host:example.amazonaws.com
         472  +
My-Header1:value1
         473  +
  value2
         474  +
     value3
         475  +
 1006    476   
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
 1007    477   
similarity index 53%
 1008    478   
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
 1009    479   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1010    480   
index 90e66b8..ec3fe45 100644
 1011         -
-- 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
         481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1012    482   
@@ -1,4 +1,4 @@
 1013    483   
AWS4-HMAC-SHA256
 1014    484   
20150830T123600Z
 1015    485   
20150830/us-east-1/service/aws4_request
 1016         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         486  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1017    487   
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
 1018    488   
similarity index 75%
 1019    489   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1020    490   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1021    491   
index 7caa6ac..b5026cd 100644
 1022         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         492  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1023    493   
@@ -1,6 +1,5 @@
 1024    494   
GET / HTTP/1.1
 1025    495   
Host:example.amazonaws.com
 1026    496   
My-Header1:value1
 1027    497   
  value2
 1028    498   
     value3
 1029         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1030    499   
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
 1031    500   
similarity index 99%
 1032    501   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1033    502   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1034    503   
index 45771c7..0468d80 100644
 1035         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
         504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1036    505   
@@ -1,12 +1,12 @@
 1037    506   
{
 1038    507   
    "credentials": {
 1039    508   
        "access_key_id": "AKIDEXAMPLE",
 1040    509   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1041    510   
    },
 1042    511   
    "expiration_in_seconds": 3600,
 1043    512   
    "normalize": true,
 1044    513   
    "region": "us-east-1",
 1045    514   
    "service": "service",
 1046    515   
    "sign_body": false,
 1047    516   
    "timestamp": "2015-08-30T12:36:00Z"
 1048         -
}
         517  +
}
              \
 No newline at end of file
 1049    518   
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
 1050    519   
similarity index 100%
 1051    520   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1052    521   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1053    522   
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
 1054    523   
new file mode 100644
 1055    524   
index 0000000..8ef0494
 1056         -
-- /dev/null
         525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1057    526   
@@ -0,0 +1 @@
         527  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1058    528   
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
 1059    529   
new file mode 100644
 1060    530   
index 0000000..b786dc9
 1061         -
-- /dev/null
         531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1062    532   
@@ -0,0 +1,9 @@
         533  +
GET / HTTP/1.1
         534  +
Host:example.amazonaws.com
         535  +
My-Header1:value4
         536  +
My-Header1:value1
         537  +
My-Header1:value3
         538  +
My-Header1:value2
         539  +
X-Amz-Date:20150830T123600Z
         540  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         541  +
 1063    542   
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
 1064    543   
similarity index 100%
 1065    544   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1066    545   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1067    546   
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
 1068    547   
new file mode 100644
 1069    548   
index 0000000..a211cc5
 1070         -
-- /dev/null
         549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1071    550   
@@ -0,0 +1,8 @@
         551  +
GET
         552  +
/
         553  +
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
         554  +
host:example.amazonaws.com
         555  +
my-header1:value4,value1,value3,value2
         556  +
         557  +
host;my-header1
         558  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1072    559   
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
 1073    560   
new file mode 100644
 1074    561   
index 0000000..417b0fa
 1075         -
-- /dev/null
         562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1076    563   
@@ -0,0 +1 @@
         564  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1077    565   
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
 1078    566   
new file mode 100644
 1079    567   
index 0000000..b615e5d
 1080         -
-- /dev/null
         568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1081    569   
@@ -0,0 +1,7 @@
         570  +
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
         571  +
Host:example.amazonaws.com
         572  +
My-Header1:value4
         573  +
My-Header1:value1
         574  +
My-Header1:value3
         575  +
My-Header1:value2
         576  +
 1082    577   
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
 1083    578   
similarity index 53%
 1084    579   
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
 1085    580   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1086    581   
index f7e615e..dcaaa1b 100644
 1087         -
-- 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
         582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1088    583   
@@ -1,4 +1,4 @@
 1089    584   
AWS4-HMAC-SHA256
 1090    585   
20150830T123600Z
 1091    586   
20150830/us-east-1/service/aws4_request
 1092         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         587  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1093    588   
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
 1094    589   
similarity index 100%
 1095    590   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1096    591   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1097    592   
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
 1098    593   
similarity index 99%
 1099    594   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1100    595   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1101    596   
index 45771c7..0468d80 100644
 1102         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
         597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1103    598   
@@ -1,12 +1,12 @@
 1104    599   
{
 1105    600   
    "credentials": {
 1106    601   
        "access_key_id": "AKIDEXAMPLE",
 1107    602   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1108    603   
    },
 1109    604   
    "expiration_in_seconds": 3600,
 1110    605   
    "normalize": true,
 1111    606   
    "region": "us-east-1",
 1112    607   
    "service": "service",
 1113    608   
    "sign_body": false,
 1114    609   
    "timestamp": "2015-08-30T12:36:00Z"
 1115         -
}
         610  +
}
              \
 No newline at end of file
 1116    611   
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
 1117    612   
similarity index 100%
 1118    613   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1119    614   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1120    615   
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
 1121    616   
new file mode 100644
 1122    617   
index 0000000..36081a9
 1123         -
-- /dev/null
         618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1124    619   
@@ -0,0 +1 @@
         620  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1125    621   
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
 1126    622   
new file mode 100644
 1127    623   
index 0000000..6331d16
 1128         -
-- /dev/null
         624  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1129    625   
@@ -0,0 +1,7 @@
         626  +
GET / HTTP/1.1
         627  +
Host:example.amazonaws.com
         628  +
My-Header1: value1
         629  +
My-Header2: "a   b   c"
         630  +
X-Amz-Date:20150830T123600Z
         631  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         632  +
 1130    633   
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
 1131    634   
similarity index 100%
 1132    635   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1133    636   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1134    637   
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
 1135    638   
new file mode 100644
 1136    639   
index 0000000..125c1f9
 1137         -
-- /dev/null
         640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1138    641   
@@ -0,0 +1,9 @@
         642  +
GET
         643  +
/
         644  +
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
         645  +
host:example.amazonaws.com
         646  +
my-header1:value1
         647  +
my-header2:"a b c"
         648  +
         649  +
host;my-header1;my-header2
         650  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1139    651   
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
 1140    652   
new file mode 100644
 1141    653   
index 0000000..17007a8
 1142         -
-- /dev/null
         654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1143    655   
@@ -0,0 +1 @@
         656  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1144    657   
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
 1145    658   
new file mode 100644
 1146    659   
index 0000000..e519fd9
 1147         -
-- /dev/null
         660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1148    661   
@@ -0,0 +1,5 @@
         662  +
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
         663  +
Host:example.amazonaws.com
         664  +
My-Header1: value1
         665  +
My-Header2: "a   b   c"
         666  +
 1149    667   
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
 1150    668   
new file mode 100644
 1151    669   
index 0000000..6b4b781
 1152         -
-- /dev/null
         670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1153    671   
@@ -0,0 +1,4 @@
         672  +
AWS4-HMAC-SHA256
         673  +
20150830T123600Z
         674  +
20150830/us-east-1/service/aws4_request
         675  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1154    676   
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
 1155    677   
similarity index 100%
 1156    678   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1157    679   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1158    680   
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
 1159    681   
new file mode 100644
 1160    682   
index 0000000..0468d80
 1161         -
-- /dev/null
         683  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1162    684   
@@ -0,0 +1,12 @@
         685  +
{
         686  +
    "credentials": {
         687  +
        "access_key_id": "AKIDEXAMPLE",
         688  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         689  +
    },
         690  +
    "expiration_in_seconds": 3600,
         691  +
    "normalize": true,
         692  +
    "region": "us-east-1",
         693  +
    "service": "service",
         694  +
    "sign_body": false,
         695  +
    "timestamp": "2015-08-30T12:36:00Z"
         696  +
}
              \
 No newline at end of file
 1163    697   
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
 1164    698   
similarity index 100%
 1165    699   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1166    700   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1167    701   
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
 1168    702   
new file mode 100644
 1169    703   
index 0000000..87f295f
 1170         -
-- /dev/null
         704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1171    705   
@@ -0,0 +1 @@
         706  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1172    707   
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
 1173    708   
new file mode 100644
 1174    709   
index 0000000..0de8327
 1175         -
-- /dev/null
         710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1176    711   
@@ -0,0 +1,5 @@
         712  +
GET /example/.. HTTP/1.1
         713  +
Host:example.amazonaws.com
         714  +
X-Amz-Date:20150830T123600Z
         715  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         716  +
 1177    717   
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
 1178    718   
similarity index 100%
 1179    719   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1180    720   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1181    721   
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
 1182    722   
new file mode 100644
 1183    723   
index 0000000..fb2420d
 1184         -
-- /dev/null
         724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1185    725   
@@ -0,0 +1,7 @@
         726  +
GET
         727  +
/
         728  +
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
         729  +
host:example.amazonaws.com
         730  +
         731  +
host
         732  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1186    733   
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
 1187    734   
new file mode 100644
 1188    735   
index 0000000..da5c905
 1189         -
-- /dev/null
         736  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1190    737   
@@ -0,0 +1 @@
         738  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1191    739   
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
 1192    740   
new file mode 100644
 1193    741   
index 0000000..4329c98
 1194         -
-- /dev/null
         742  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1195    743   
@@ -0,0 +1,3 @@
         744  +
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
         745  +
Host:example.amazonaws.com
         746  +
 1196    747   
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
 1197    748   
new file mode 100644
 1198    749   
index 0000000..d837e67
 1199         -
-- /dev/null
         750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1200    751   
@@ -0,0 +1,4 @@
         752  +
AWS4-HMAC-SHA256
         753  +
20150830T123600Z
         754  +
20150830/us-east-1/service/aws4_request
         755  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1201    756   
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
 1202    757   
similarity index 100%
 1203    758   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1204    759   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1205    760   
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
 1206    761   
new file mode 100644
 1207    762   
index 0000000..0468d80
 1208         -
-- /dev/null
         763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1209    764   
@@ -0,0 +1,12 @@
         765  +
{
         766  +
    "credentials": {
         767  +
        "access_key_id": "AKIDEXAMPLE",
         768  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         769  +
    },
         770  +
    "expiration_in_seconds": 3600,
         771  +
    "normalize": true,
         772  +
    "region": "us-east-1",
         773  +
    "service": "service",
         774  +
    "sign_body": false,
         775  +
    "timestamp": "2015-08-30T12:36:00Z"
         776  +
}
              \
 No newline at end of file
 1210    777   
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
 1211    778   
similarity index 100%
 1212    779   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1213    780   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1214    781   
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
 1215    782   
new file mode 100644
 1216    783   
index 0000000..87f295f
 1217         -
-- /dev/null
         784  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1218    785   
@@ -0,0 +1 @@
         786  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1219    787   
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
 1220    788   
new file mode 100644
 1221    789   
index 0000000..f9b3815
 1222         -
-- /dev/null
         790  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1223    791   
@@ -0,0 +1,5 @@
         792  +
GET /example1/example2/../.. HTTP/1.1
         793  +
Host:example.amazonaws.com
         794  +
X-Amz-Date:20150830T123600Z
         795  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         796  +
 1224    797   
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
 1225    798   
similarity index 100%
 1226    799   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1227    800   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1228    801   
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
 1229    802   
new file mode 100644
 1230    803   
index 0000000..fb2420d
 1231         -
-- /dev/null
         804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1232    805   
@@ -0,0 +1,7 @@
         806  +
GET
         807  +
/
         808  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
         809  +
host:example.amazonaws.com
         810  +
         811  +
host
         812  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1233    813   
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
 1234    814   
new file mode 100644
 1235    815   
index 0000000..da5c905
 1236         -
-- /dev/null
         816  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1237    817   
@@ -0,0 +1 @@
         818  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1238    819   
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
 1239    820   
new file mode 100644
 1240    821   
index 0000000..b2988b7
 1241         -
-- /dev/null
         822  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1242    823   
@@ -0,0 +1,3 @@
         824  +
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
         825  +
Host:example.amazonaws.com
         826  +
 1243    827   
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
 1244    828   
new file mode 100644
 1245    829   
index 0000000..d837e67
 1246         -
-- /dev/null
         830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1247    831   
@@ -0,0 +1,4 @@
         832  +
AWS4-HMAC-SHA256
         833  +
20150830T123600Z
         834  +
20150830/us-east-1/service/aws4_request
         835  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1248    836   
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
 1249    837   
similarity index 100%
 1250    838   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1251    839   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1252    840   
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
 1253    841   
similarity index 99%
 1254    842   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1255    843   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1256    844   
index afe367b..7bee5c7 100644
 1257         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
         845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1258    846   
@@ -1,12 +1,12 @@
 1259    847   
{
 1260    848   
    "credentials": {
 1261    849   
        "access_key_id": "AKIDEXAMPLE",
 1262    850   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1263    851   
    },
 1264    852   
    "expiration_in_seconds": 3600,
 1265    853   
    "normalize": false,
 1266    854   
    "region": "us-east-1",
 1267    855   
    "service": "service",
 1268    856   
    "sign_body": false,
 1269    857   
    "timestamp": "2015-08-30T12:36:00Z"
 1270         -
}
         858  +
}
              \
 No newline at end of file
 1271    859   
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
 1272    860   
similarity index 82%
 1273    861   
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
 1274    862   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1275    863   
index 36c3cdf..6919c44 100644
 1276         -
-- 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
         864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1277    865   
@@ -1,8 +1,8 @@
 1278    866   
GET
 1279         -
/
 1280         -
Param1=Value1&Param1=value2
         867  +
/example1/example2/../..
         868  +
 1281    869   
host:example.amazonaws.com
 1282    870   
x-amz-date:20150830T123600Z
 1283    871   
 1284    872   
host;x-amz-date
 1285    873   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1286    874   
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
 1287    875   
new file mode 100644
 1288    876   
index 0000000..4092d83
 1289         -
-- /dev/null
         877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1290    878   
@@ -0,0 +1 @@
         879  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1291    880   
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
 1292    881   
new file mode 100644
 1293    882   
index 0000000..e731b35
 1294         -
-- /dev/null
         883  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1295    884   
@@ -0,0 +1,5 @@
         885  +
GET /example1/example2/../.. HTTP/1.1
         886  +
Host:example.amazonaws.com
         887  +
X-Amz-Date:20150830T123600Z
         888  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
         889  +
 1296    890   
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
 1297    891   
new file mode 100644
 1298    892   
index 0000000..4f45752
 1299         -
-- /dev/null
         893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1300    894   
@@ -0,0 +1,4 @@
         895  +
AWS4-HMAC-SHA256
         896  +
20150830T123600Z
         897  +
20150830/us-east-1/service/aws4_request
         898  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1301    899   
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
 1302    900   
new file mode 100644
 1303    901   
index 0000000..e1fb07d
 1304         -
-- /dev/null
         902  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1305    903   
@@ -0,0 +1,7 @@
         904  +
GET
         905  +
/example1/example2/../..
         906  +
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
         907  +
host:example.amazonaws.com
         908  +
         909  +
host
         910  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1306    911   
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
 1307    912   
new file mode 100644
 1308    913   
index 0000000..8ac31d7
 1309         -
-- /dev/null
         914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1310    915   
@@ -0,0 +1 @@
         916  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1311    917   
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
 1312    918   
new file mode 100644
 1313    919   
index 0000000..ac074f9
 1314         -
-- /dev/null
         920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1315    921   
@@ -0,0 +1,3 @@
         922  +
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
         923  +
Host:example.amazonaws.com
         924  +
 1316    925   
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
 1317    926   
new file mode 100644
 1318    927   
index 0000000..8dcb6ff
 1319         -
-- /dev/null
         928  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1320    929   
@@ -0,0 +1,4 @@
         930  +
AWS4-HMAC-SHA256
         931  +
20150830T123600Z
         932  +
20150830/us-east-1/service/aws4_request
         933  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1321    934   
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
 1322    935   
similarity index 100%
 1323    936   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1324    937   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1325    938   
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
 1326    939   
similarity index 99%
 1327    940   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1328    941   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1329    942   
index afe367b..7bee5c7 100644
 1330         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
         943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1331    944   
@@ -1,12 +1,12 @@
 1332    945   
{
 1333    946   
    "credentials": {
 1334    947   
        "access_key_id": "AKIDEXAMPLE",
 1335    948   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1336    949   
    },
 1337    950   
    "expiration_in_seconds": 3600,
 1338    951   
    "normalize": false,
 1339    952   
    "region": "us-east-1",
 1340    953   
    "service": "service",
 1341    954   
    "sign_body": false,
 1342    955   
    "timestamp": "2015-08-30T12:36:00Z"
 1343         -
}
         956  +
}
              \
 No newline at end of file
 1344    957   
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
 1345    958   
similarity index 82%
 1346    959   
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
 1347    960   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1348    961   
index 26898eb..f640bc2 100644
 1349         -
-- 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
         962  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1350    963   
@@ -1,8 +1,8 @@
 1351    964   
GET
 1352         -
/
 1353         -
Param1=value1&Param1=value2
         965  +
/example/..
         966  +
 1354    967   
host:example.amazonaws.com
 1355    968   
x-amz-date:20150830T123600Z
 1356    969   
 1357    970   
host;x-amz-date
 1358    971   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1359    972   
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
 1360    973   
new file mode 100644
 1361    974   
index 0000000..d957303
 1362         -
-- /dev/null
         975  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1363    976   
@@ -0,0 +1 @@
         977  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1364    978   
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
 1365    979   
new file mode 100644
 1366    980   
index 0000000..4f42ffc
 1367         -
-- /dev/null
         981  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1368    982   
@@ -0,0 +1,5 @@
         983  +
GET /example/.. HTTP/1.1
         984  +
Host:example.amazonaws.com
         985  +
X-Amz-Date:20150830T123600Z
         986  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
         987  +
 1369    988   
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
 1370    989   
new file mode 100644
 1371    990   
index 0000000..ca54bda
 1372         -
-- /dev/null
         991  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1373    992   
@@ -0,0 +1,4 @@
         993  +
AWS4-HMAC-SHA256
         994  +
20150830T123600Z
         995  +
20150830/us-east-1/service/aws4_request
         996  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1374    997   
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
 1375    998   
new file mode 100644
 1376    999   
index 0000000..dc80036
 1377         -
-- /dev/null
        1000  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1378   1001   
@@ -0,0 +1,7 @@
        1002  +
GET
        1003  +
/example/..
        1004  +
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
        1005  +
host:example.amazonaws.com
        1006  +
        1007  +
host
        1008  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1379   1009   
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
 1380   1010   
new file mode 100644
 1381   1011   
index 0000000..dfa0437
 1382         -
-- /dev/null
        1012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1383   1013   
@@ -0,0 +1 @@
        1014  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1384   1015   
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
 1385   1016   
new file mode 100644
 1386   1017   
index 0000000..98367b1
 1387         -
-- /dev/null
        1018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1388   1019   
@@ -0,0 +1,3 @@
        1020  +
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
        1021  +
Host:example.amazonaws.com
        1022  +
 1389   1023   
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
 1390   1024   
new file mode 100644
 1391   1025   
index 0000000..f65dd66
 1392         -
-- /dev/null
        1026  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1393   1027   
@@ -0,0 +1,4 @@
        1028  +
AWS4-HMAC-SHA256
        1029  +
20150830T123600Z
        1030  +
20150830/us-east-1/service/aws4_request
        1031  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1394   1032   
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
 1395   1033   
similarity index 100%
 1396   1034   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1397   1035   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1398   1036   
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
 1399   1037   
new file mode 100644
 1400   1038   
index 0000000..0468d80
 1401         -
-- /dev/null
        1039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1402   1040   
@@ -0,0 +1,12 @@
        1041  +
{
        1042  +
    "credentials": {
        1043  +
        "access_key_id": "AKIDEXAMPLE",
        1044  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1045  +
    },
        1046  +
    "expiration_in_seconds": 3600,
        1047  +
    "normalize": true,
        1048  +
    "region": "us-east-1",
        1049  +
    "service": "service",
        1050  +
    "sign_body": false,
        1051  +
    "timestamp": "2015-08-30T12:36:00Z"
        1052  +
}
              \
 No newline at end of file
 1403   1053   
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
 1404   1054   
similarity index 100%
 1405   1055   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1406   1056   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1407   1057   
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
 1408   1058   
new file mode 100644
 1409   1059   
index 0000000..87f295f
 1410         -
-- /dev/null
        1060  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1411   1061   
@@ -0,0 +1 @@
        1062  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1412   1063   
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
 1413   1064   
new file mode 100644
 1414   1065   
index 0000000..99c8eeb
 1415         -
-- /dev/null
        1066  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1416   1067   
@@ -0,0 +1,5 @@
        1068  +
GET /./ HTTP/1.1
        1069  +
Host:example.amazonaws.com
        1070  +
X-Amz-Date:20150830T123600Z
        1071  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1072  +
 1417   1073   
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
 1418   1074   
similarity index 100%
 1419   1075   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1420   1076   
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
 1421   1077   
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
 1422   1078   
new file mode 100644
 1423   1079   
index 0000000..fb2420d
 1424         -
-- /dev/null
        1080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1425   1081   
@@ -0,0 +1,7 @@
        1082  +
GET
        1083  +
/
        1084  +
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
        1085  +
host:example.amazonaws.com
        1086  +
        1087  +
host
        1088  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1426   1089   
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
 1427   1090   
new file mode 100644
 1428   1091   
index 0000000..da5c905
 1429         -
-- /dev/null
        1092  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1430   1093   
@@ -0,0 +1 @@
        1094  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1431   1095   
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
 1432   1096   
new file mode 100644
 1433   1097   
index 0000000..2e47f69
 1434         -
-- /dev/null
        1098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1435   1099   
@@ -0,0 +1,3 @@
        1100  +
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
        1101  +
Host:example.amazonaws.com
        1102  +
 1436   1103   
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
 1437   1104   
new file mode 100644
 1438   1105   
index 0000000..d837e67
 1439         -
-- /dev/null
        1106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1440   1107   
@@ -0,0 +1,4 @@
        1108  +
AWS4-HMAC-SHA256
        1109  +
20150830T123600Z
        1110  +
20150830/us-east-1/service/aws4_request
        1111  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1441   1112   
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
 1442   1113   
similarity index 100%
 1443   1114   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1444   1115   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1445   1116   
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
 1446   1117   
similarity index 99%
 1447   1118   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1448   1119   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1449   1120   
index afe367b..7bee5c7 100644
 1450         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
        1121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1451   1122   
@@ -1,12 +1,12 @@
 1452   1123   
{
 1453   1124   
    "credentials": {
 1454   1125   
        "access_key_id": "AKIDEXAMPLE",
 1455   1126   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1456   1127   
    },
 1457   1128   
    "expiration_in_seconds": 3600,
 1458   1129   
    "normalize": false,
 1459   1130   
    "region": "us-east-1",
 1460   1131   
    "service": "service",
 1461   1132   
    "sign_body": false,
 1462   1133   
    "timestamp": "2015-08-30T12:36:00Z"
 1463         -
}
        1134  +
}
              \
 No newline at end of file
 1464   1135   
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
 1465   1136   
new file mode 100644
 1466   1137   
index 0000000..5159048
 1467         -
-- /dev/null
        1138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1468   1139   
@@ -0,0 +1,8 @@
        1140  +
GET
        1141  +
/./
        1142  +
        1143  +
host:example.amazonaws.com
        1144  +
x-amz-date:20150830T123600Z
        1145  +
        1146  +
host;x-amz-date
        1147  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1469   1148   
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
 1470   1149   
new file mode 100644
 1471   1150   
index 0000000..b49ff0e
 1472         -
-- /dev/null
        1151  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1473   1152   
@@ -0,0 +1 @@
        1153  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1474   1154   
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
 1475   1155   
new file mode 100644
 1476   1156   
index 0000000..aeb1ffa
 1477         -
-- /dev/null
        1157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1478   1158   
@@ -0,0 +1,5 @@
        1159  +
GET /./ HTTP/1.1
        1160  +
Host:example.amazonaws.com
        1161  +
X-Amz-Date:20150830T123600Z
        1162  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1163  +
 1479   1164   
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
 1480   1165   
new file mode 100644
 1481   1166   
index 0000000..b7d8caf
 1482         -
-- /dev/null
        1167  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1483   1168   
@@ -0,0 +1,4 @@
        1169  +
AWS4-HMAC-SHA256
        1170  +
20150830T123600Z
        1171  +
20150830/us-east-1/service/aws4_request
        1172  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1484   1173   
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
 1485   1174   
new file mode 100644
 1486   1175   
index 0000000..d4e029e
 1487         -
-- /dev/null
        1176  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1488   1177   
@@ -0,0 +1,7 @@
        1178  +
GET
        1179  +
/./
        1180  +
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
        1181  +
host:example.amazonaws.com
        1182  +
        1183  +
host
        1184  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1489   1185   
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
 1490   1186   
new file mode 100644
 1491   1187   
index 0000000..fe8f4cc
 1492         -
-- /dev/null
        1188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1493   1189   
@@ -0,0 +1 @@
        1190  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1494   1191   
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
 1495   1192   
new file mode 100644
 1496   1193   
index 0000000..dcc4fc4
 1497         -
-- /dev/null
        1194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1498   1195   
@@ -0,0 +1,3 @@
        1196  +
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
        1197  +
Host:example.amazonaws.com
        1198  +
 1499   1199   
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
 1500   1200   
new file mode 100644
 1501   1201   
index 0000000..5fb3ada
 1502         -
-- /dev/null
        1202  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1503   1203   
@@ -0,0 +1,4 @@
        1204  +
AWS4-HMAC-SHA256
        1205  +
20150830T123600Z
        1206  +
20150830/us-east-1/service/aws4_request
        1207  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1504   1208   
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
 1505   1209   
similarity index 100%
 1506   1210   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1507   1211   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1508   1212   
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
 1509   1213   
new file mode 100644
 1510   1214   
index 0000000..0468d80
 1511         -
-- /dev/null
        1215  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1512   1216   
@@ -0,0 +1,12 @@
        1217  +
{
        1218  +
    "credentials": {
        1219  +
        "access_key_id": "AKIDEXAMPLE",
        1220  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1221  +
    },
        1222  +
    "expiration_in_seconds": 3600,
        1223  +
    "normalize": true,
        1224  +
    "region": "us-east-1",
        1225  +
    "service": "service",
        1226  +
    "sign_body": false,
        1227  +
    "timestamp": "2015-08-30T12:36:00Z"
        1228  +
}
              \
 No newline at end of file
 1513   1229   
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
 1514   1230   
similarity index 100%
 1515   1231   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1516   1232   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1517   1233   
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
 1518   1234   
new file mode 100644
 1519   1235   
index 0000000..87f295f
 1520         -
-- /dev/null
        1236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1521   1237   
@@ -0,0 +1 @@
        1238  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1522   1239   
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
 1523   1240   
new file mode 100644
 1524   1241   
index 0000000..b91087b
 1525         -
-- /dev/null
        1242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1526   1243   
@@ -0,0 +1,5 @@
        1244  +
GET // HTTP/1.1
        1245  +
Host:example.amazonaws.com
        1246  +
X-Amz-Date:20150830T123600Z
        1247  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1248  +
 1527   1249   
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
 1528   1250   
similarity index 100%
 1529   1251   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1530   1252   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1531   1253   
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
 1532   1254   
new file mode 100644
 1533   1255   
index 0000000..fb2420d
 1534         -
-- /dev/null
        1256  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1535   1257   
@@ -0,0 +1,7 @@
        1258  +
GET
        1259  +
/
        1260  +
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
        1261  +
host:example.amazonaws.com
        1262  +
        1263  +
host
        1264  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1536   1265   
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
 1537   1266   
new file mode 100644
 1538   1267   
index 0000000..da5c905
 1539         -
-- /dev/null
        1268  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1540   1269   
@@ -0,0 +1 @@
        1270  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1541   1271   
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
 1542   1272   
new file mode 100644
 1543   1273   
index 0000000..0290ba4
 1544         -
-- /dev/null
        1274  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1545   1275   
@@ -0,0 +1,3 @@
        1276  +
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
        1277  +
Host:example.amazonaws.com
        1278  +
 1546   1279   
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
 1547   1280   
new file mode 100644
 1548   1281   
index 0000000..d837e67
 1549         -
-- /dev/null
        1282  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1550   1283   
@@ -0,0 +1,4 @@
        1284  +
AWS4-HMAC-SHA256
        1285  +
20150830T123600Z
        1286  +
20150830/us-east-1/service/aws4_request
        1287  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1551   1288   
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
 1552   1289   
similarity index 100%
 1553   1290   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1554   1291   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1555   1292   
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
 1556   1293   
new file mode 100644
 1557   1294   
index 0000000..0468d80
 1558         -
-- /dev/null
        1295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1559   1296   
@@ -0,0 +1,12 @@
        1297  +
{
        1298  +
    "credentials": {
        1299  +
        "access_key_id": "AKIDEXAMPLE",
        1300  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1301  +
    },
        1302  +
    "expiration_in_seconds": 3600,
        1303  +
    "normalize": true,
        1304  +
    "region": "us-east-1",
        1305  +
    "service": "service",
        1306  +
    "sign_body": false,
        1307  +
    "timestamp": "2015-08-30T12:36:00Z"
        1308  +
}
              \
 No newline at end of file
 1560   1309   
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
 1561   1310   
similarity index 100%
 1562   1311   
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
 1563   1312   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1564   1313   
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
 1565   1314   
new file mode 100644
 1566   1315   
index 0000000..8f892bf
 1567         -
-- /dev/null
        1316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1568   1317   
@@ -0,0 +1 @@
        1318  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1569   1319   
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
 1570   1320   
new file mode 100644
 1571   1321   
index 0000000..2a1895c
 1572         -
-- /dev/null
        1322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1573   1323   
@@ -0,0 +1,5 @@
        1324  +
GET /./example HTTP/1.1
        1325  +
Host:example.amazonaws.com
        1326  +
X-Amz-Date:20150830T123600Z
        1327  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1328  +
 1574   1329   
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
 1575   1330   
similarity index 100%
 1576   1331   
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
 1577   1332   
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
 1578   1333   
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
 1579   1334   
new file mode 100644
 1580   1335   
index 0000000..99dfc2a
 1581         -
-- /dev/null
        1336  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1582   1337   
@@ -0,0 +1,7 @@
        1338  +
GET
        1339  +
/example
        1340  +
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
        1341  +
host:example.amazonaws.com
        1342  +
        1343  +
host
        1344  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1583   1345   
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
 1584   1346   
new file mode 100644
 1585   1347   
index 0000000..fcd7a17
 1586         -
-- /dev/null
        1348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1587   1349   
@@ -0,0 +1 @@
        1350  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1588   1351   
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
 1589   1352   
new file mode 100644
 1590   1353   
index 0000000..f671de2
 1591         -
-- /dev/null
        1354  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1592   1355   
@@ -0,0 +1,3 @@
        1356  +
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
        1357  +
Host:example.amazonaws.com
        1358  +
 1593   1359   
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
 1594   1360   
new file mode 100644
 1595   1361   
index 0000000..f8456dc
 1596         -
-- /dev/null
        1362  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1597   1363   
@@ -0,0 +1,4 @@
        1364  +
AWS4-HMAC-SHA256
        1365  +
20150830T123600Z
        1366  +
20150830/us-east-1/service/aws4_request
        1367  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1598   1368   
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
 1599   1369   
similarity index 100%
 1600   1370   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1601   1371   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1602   1372   
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
 1603   1373   
similarity index 99%
 1604   1374   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1605   1375   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1606   1376   
index afe367b..7bee5c7 100644
 1607         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
        1377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1608   1378   
@@ -1,12 +1,12 @@
 1609   1379   
{
 1610   1380   
    "credentials": {
 1611   1381   
        "access_key_id": "AKIDEXAMPLE",
 1612   1382   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1613   1383   
    },
 1614   1384   
    "expiration_in_seconds": 3600,
 1615   1385   
    "normalize": false,
 1616   1386   
    "region": "us-east-1",
 1617   1387   
    "service": "service",
 1618   1388   
    "sign_body": false,
 1619   1389   
    "timestamp": "2015-08-30T12:36:00Z"
 1620         -
}
        1390  +
}
              \
 No newline at end of file
 1621   1391   
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
 1622   1392   
new file mode 100644
 1623   1393   
index 0000000..36698c7
 1624         -
-- /dev/null
        1394  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1625   1395   
@@ -0,0 +1,8 @@
        1396  +
GET
        1397  +
/./example
        1398  +
        1399  +
host:example.amazonaws.com
        1400  +
x-amz-date:20150830T123600Z
        1401  +
        1402  +
host;x-amz-date
        1403  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1626   1404   
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
 1627   1405   
new file mode 100644
 1628   1406   
index 0000000..4a4b8f2
 1629         -
-- /dev/null
        1407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1630   1408   
@@ -0,0 +1 @@
        1409  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1631   1410   
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
 1632   1411   
new file mode 100644
 1633   1412   
index 0000000..d462bcd
 1634         -
-- /dev/null
        1413  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1635   1414   
@@ -0,0 +1,5 @@
        1415  +
GET /./example HTTP/1.1
        1416  +
Host:example.amazonaws.com
        1417  +
X-Amz-Date:20150830T123600Z
        1418  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1419  +
 1636   1420   
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
 1637   1421   
new file mode 100644
 1638   1422   
index 0000000..8be78c9
 1639         -
-- /dev/null
        1423  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1640   1424   
@@ -0,0 +1,4 @@
        1425  +
AWS4-HMAC-SHA256
        1426  +
20150830T123600Z
        1427  +
20150830/us-east-1/service/aws4_request
        1428  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1641   1429   
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
 1642   1430   
new file mode 100644
 1643   1431   
index 0000000..fe1103c
 1644         -
-- /dev/null
        1432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1645   1433   
@@ -0,0 +1,7 @@
        1434  +
GET
        1435  +
/./example
        1436  +
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
        1437  +
host:example.amazonaws.com
        1438  +
        1439  +
host
        1440  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1646   1441   
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
 1647   1442   
new file mode 100644
 1648   1443   
index 0000000..ce80762
 1649         -
-- /dev/null
        1444  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1650   1445   
@@ -0,0 +1 @@
        1446  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1651   1447   
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
 1652   1448   
new file mode 100644
 1653   1449   
index 0000000..30841a6
 1654         -
-- /dev/null
        1450  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1655   1451   
@@ -0,0 +1,3 @@
        1452  +
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
        1453  +
Host:example.amazonaws.com
        1454  +
 1656   1455   
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
 1657   1456   
new file mode 100644
 1658   1457   
index 0000000..5c66509
 1659         -
-- /dev/null
        1458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1660   1459   
@@ -0,0 +1,4 @@
        1460  +
AWS4-HMAC-SHA256
        1461  +
20150830T123600Z
        1462  +
20150830/us-east-1/service/aws4_request
        1463  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1661   1464   
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
 1662   1465   
similarity index 100%
 1663   1466   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1664   1467   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1665   1468   
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
 1666   1469   
new file mode 100644
 1667   1470   
index 0000000..7bee5c7
 1668         -
-- /dev/null
        1471  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1669   1472   
@@ -0,0 +1,12 @@
        1473  +
{
        1474  +
    "credentials": {
        1475  +
        "access_key_id": "AKIDEXAMPLE",
        1476  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1477  +
    },
        1478  +
    "expiration_in_seconds": 3600,
        1479  +
    "normalize": false,
        1480  +
    "region": "us-east-1",
        1481  +
    "service": "service",
        1482  +
    "sign_body": false,
        1483  +
    "timestamp": "2015-08-30T12:36:00Z"
        1484  +
}
              \
 No newline at end of file
 1670   1485   
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
 1671   1486   
new file mode 100644
 1672   1487   
index 0000000..5860c8a
 1673         -
-- /dev/null
        1488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1674   1489   
@@ -0,0 +1,8 @@
        1490  +
GET
        1491  +
//
        1492  +
        1493  +
host:example.amazonaws.com
        1494  +
x-amz-date:20150830T123600Z
        1495  +
        1496  +
host;x-amz-date
        1497  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1675   1498   
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
 1676   1499   
new file mode 100644
 1677   1500   
index 0000000..8310471
 1678         -
-- /dev/null
        1501  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1679   1502   
@@ -0,0 +1 @@
        1503  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1680   1504   
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
 1681   1505   
new file mode 100644
 1682   1506   
index 0000000..2a7afef
 1683         -
-- /dev/null
        1507  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1684   1508   
@@ -0,0 +1,5 @@
        1509  +
GET // HTTP/1.1
        1510  +
Host:example.amazonaws.com
        1511  +
X-Amz-Date:20150830T123600Z
        1512  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1513  +
 1685   1514   
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
 1686   1515   
new file mode 100644
 1687   1516   
index 0000000..06059dd
 1688         -
-- /dev/null
        1517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1689   1518   
@@ -0,0 +1,4 @@
        1519  +
AWS4-HMAC-SHA256
        1520  +
20150830T123600Z
        1521  +
20150830/us-east-1/service/aws4_request
        1522  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1690   1523   
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
 1691   1524   
new file mode 100644
 1692   1525   
index 0000000..6d63aef
 1693         -
-- /dev/null
        1526  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1694   1527   
@@ -0,0 +1,7 @@
        1528  +
GET
        1529  +
//
        1530  +
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
        1531  +
host:example.amazonaws.com
        1532  +
        1533  +
host
        1534  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1695   1535   
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
 1696   1536   
new file mode 100644
 1697   1537   
index 0000000..e5b7b6c
 1698         -
-- /dev/null
        1538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1699   1539   
@@ -0,0 +1 @@
        1540  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1700   1541   
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
 1701   1542   
new file mode 100644
 1702   1543   
index 0000000..46fe3fd
 1703         -
-- /dev/null
        1544  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1704   1545   
@@ -0,0 +1,3 @@
        1546  +
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
        1547  +
Host:example.amazonaws.com
        1548  +
 1705   1549   
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
 1706   1550   
new file mode 100644
 1707   1551   
index 0000000..ea79940
 1708         -
-- /dev/null
        1552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1709   1553   
@@ -0,0 +1,4 @@
        1554  +
AWS4-HMAC-SHA256
        1555  +
20150830T123600Z
        1556  +
20150830/us-east-1/service/aws4_request
        1557  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1710   1558   
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
 1711   1559   
similarity index 100%
 1712   1560   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1713   1561   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1714   1562   
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
 1715   1563   
new file mode 100644
 1716   1564   
index 0000000..0468d80
 1717         -
-- /dev/null
        1565  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1718   1566   
@@ -0,0 +1,12 @@
        1567  +
{
        1568  +
    "credentials": {
        1569  +
        "access_key_id": "AKIDEXAMPLE",
        1570  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1571  +
    },
        1572  +
    "expiration_in_seconds": 3600,
        1573  +
    "normalize": true,
        1574  +
    "region": "us-east-1",
        1575  +
    "service": "service",
        1576  +
    "sign_body": false,
        1577  +
    "timestamp": "2015-08-30T12:36:00Z"
        1578  +
}
              \
 No newline at end of file
 1719   1579   
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
 1720   1580   
similarity index 100%
 1721   1581   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1722   1582   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1723   1583   
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
 1724   1584   
new file mode 100644
 1725   1585   
index 0000000..71c7bac
 1726         -
-- /dev/null
        1586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1727   1587   
@@ -0,0 +1 @@
        1588  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1728   1589   
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
 1729   1590   
new file mode 100644
 1730   1591   
index 0000000..0add1f1
 1731         -
-- /dev/null
        1592  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1732   1593   
@@ -0,0 +1,5 @@
        1594  +
GET //example// HTTP/1.1
        1595  +
Host:example.amazonaws.com
        1596  +
X-Amz-Date:20150830T123600Z
        1597  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1598  +
 1733   1599   
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
 1734   1600   
similarity index 100%
 1735   1601   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1736   1602   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1737   1603   
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
 1738   1604   
new file mode 100644
 1739   1605   
index 0000000..ce72510
 1740         -
-- /dev/null
        1606  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1741   1607   
@@ -0,0 +1,7 @@
        1608  +
GET
        1609  +
/example/
        1610  +
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
        1611  +
host:example.amazonaws.com
        1612  +
        1613  +
host
        1614  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1742   1615   
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
 1743   1616   
new file mode 100644
 1744   1617   
index 0000000..265f387
 1745         -
-- /dev/null
        1618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1746   1619   
@@ -0,0 +1 @@
        1620  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1747   1621   
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
 1748   1622   
new file mode 100644
 1749   1623   
index 0000000..e1fcb2e
 1750         -
-- /dev/null
        1624  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1751   1625   
@@ -0,0 +1,3 @@
        1626  +
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
        1627  +
Host:example.amazonaws.com
        1628  +
 1752   1629   
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
 1753   1630   
new file mode 100644
 1754   1631   
index 0000000..a14de61
 1755         -
-- /dev/null
        1632  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1756   1633   
@@ -0,0 +1,4 @@
        1634  +
AWS4-HMAC-SHA256
        1635  +
20150830T123600Z
        1636  +
20150830/us-east-1/service/aws4_request
        1637  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1757   1638   
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
 1758   1639   
similarity index 100%
 1759   1640   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1760   1641   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1761   1642   
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
 1762   1643   
new file mode 100644
 1763   1644   
index 0000000..7bee5c7
 1764         -
-- /dev/null
        1645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1765   1646   
@@ -0,0 +1,12 @@
        1647  +
{
        1648  +
    "credentials": {
        1649  +
        "access_key_id": "AKIDEXAMPLE",
        1650  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1651  +
    },
        1652  +
    "expiration_in_seconds": 3600,
        1653  +
    "normalize": false,
        1654  +
    "region": "us-east-1",
        1655  +
    "service": "service",
        1656  +
    "sign_body": false,
        1657  +
    "timestamp": "2015-08-30T12:36:00Z"
        1658  +
}
              \
 No newline at end of file
 1766   1659   
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
 1767   1660   
new file mode 100644
 1768   1661   
index 0000000..dfffaaf
 1769         -
-- /dev/null
        1662  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1770   1663   
@@ -0,0 +1,8 @@
        1664  +
GET
        1665  +
//example//
        1666  +
        1667  +
host:example.amazonaws.com
        1668  +
x-amz-date:20150830T123600Z
        1669  +
        1670  +
host;x-amz-date
        1671  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1771   1672   
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
 1772   1673   
new file mode 100644
 1773   1674   
index 0000000..edbcc0d
 1774         -
-- /dev/null
        1675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1775   1676   
@@ -0,0 +1 @@
        1677  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1776   1678   
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
 1777   1679   
new file mode 100644
 1778   1680   
index 0000000..4cc12dd
 1779         -
-- /dev/null
        1681  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 1780   1682   
@@ -0,0 +1,5 @@
        1683  +
GET //example// HTTP/1.1
        1684  +
Host:example.amazonaws.com
        1685  +
X-Amz-Date:20150830T123600Z
        1686  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1687  +
 1781   1688   
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
 1782   1689   
new file mode 100644
 1783   1690   
index 0000000..3eba390
 1784         -
-- /dev/null
        1691  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 1785   1692   
@@ -0,0 +1,4 @@
        1693  +
AWS4-HMAC-SHA256
        1694  +
20150830T123600Z
        1695  +
20150830/us-east-1/service/aws4_request
        1696  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 1786   1697   
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
 1787   1698   
new file mode 100644
 1788   1699   
index 0000000..f7844e3
 1789         -
-- /dev/null
        1700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 1790   1701   
@@ -0,0 +1,7 @@
        1702  +
GET
        1703  +
//example//
        1704  +
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
        1705  +
host:example.amazonaws.com
        1706  +
        1707  +
host
        1708  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1791   1709   
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
 1792   1710   
new file mode 100644
 1793   1711   
index 0000000..a8d6b96
 1794         -
-- /dev/null
        1712  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 1795   1713   
@@ -0,0 +1 @@
        1714  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 1796   1715   
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
 1797   1716   
new file mode 100644
 1798   1717   
index 0000000..a8322c6
 1799         -
-- /dev/null
        1718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 1800   1719   
@@ -0,0 +1,3 @@
        1720  +
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
        1721  +
Host:example.amazonaws.com
        1722  +
 1801   1723   
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
 1802   1724   
new file mode 100644
 1803   1725   
index 0000000..068724d
 1804         -
-- /dev/null
        1726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 1805   1727   
@@ -0,0 +1,4 @@
        1728  +
AWS4-HMAC-SHA256
        1729  +
20150830T123600Z
        1730  +
20150830/us-east-1/service/aws4_request
        1731  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 1806   1732   
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
 1807   1733   
similarity index 100%
 1808   1734   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 1809   1735   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 1810   1736   
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
 1811   1737   
new file mode 100644
 1812   1738   
index 0000000..0468d80
 1813         -
-- /dev/null
        1739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 1814   1740   
@@ -0,0 +1,12 @@
        1741  +
{
        1742  +
    "credentials": {
        1743  +
        "access_key_id": "AKIDEXAMPLE",
        1744  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1745  +
    },
        1746  +
    "expiration_in_seconds": 3600,
        1747  +
    "normalize": true,
        1748  +
    "region": "us-east-1",
        1749  +
    "service": "service",
        1750  +
    "sign_body": false,
        1751  +
    "timestamp": "2015-08-30T12:36:00Z"
        1752  +
}
              \
 No newline at end of file
 1815   1753   
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
 1816   1754   
similarity index 100%
 1817   1755   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 1818   1756   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 1819   1757   
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
 1820   1758   
new file mode 100644
 1821   1759   
index 0000000..f63892b
 1822         -
-- /dev/null
        1760  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 1823   1761   
@@ -0,0 +1 @@
        1762  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1824   1763   
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
 1825   1764   
new file mode 100644
 1826   1765   
index 0000000..19cd5cb
 1827         -
-- /dev/null
        1766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 1828   1767   
@@ -0,0 +1,5 @@
        1768  +
GET /example space/ HTTP/1.1
        1769  +
Host:example.amazonaws.com
        1770  +
X-Amz-Date:20150830T123600Z
        1771  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1772  +
 1829   1773   
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
 1830   1774   
similarity index 100%
 1831   1775   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 1832   1776   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 1833   1777   
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
 1834   1778   
new file mode 100644
 1835   1779   
index 0000000..fa3d3e2
 1836         -
-- /dev/null
        1780  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 1837   1781   
@@ -0,0 +1,7 @@
        1782  +
GET
        1783  +
/example%20space/
        1784  +
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
        1785  +
host:example.amazonaws.com
        1786  +
        1787  +
host
        1788  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1838   1789   
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
 1839   1790   
new file mode 100644
 1840   1791   
index 0000000..5b2e204
 1841         -
-- /dev/null
        1792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 1842   1793   
@@ -0,0 +1 @@
        1794  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1843   1795   
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
 1844   1796   
new file mode 100644
 1845   1797   
index 0000000..93ca1d0
 1846         -
-- /dev/null
        1798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 1847   1799   
@@ -0,0 +1,3 @@
        1800  +
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
        1801  +
Host:example.amazonaws.com
        1802  +
 1848   1803   
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
 1849   1804   
new file mode 100644
 1850   1805   
index 0000000..b4cb789
 1851         -
-- /dev/null
        1806  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 1852   1807   
@@ -0,0 +1,4 @@
        1808  +
AWS4-HMAC-SHA256
        1809  +
20150830T123600Z
        1810  +
20150830/us-east-1/service/aws4_request
        1811  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1853   1812   
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
 1854   1813   
new file mode 100644
 1855   1814   
index 0000000..860a277
 1856         -
-- /dev/null
        1815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 1857   1816   
@@ -0,0 +1,2 @@
        1817  +
GET /example%20space/ HTTP/1.1
        1818  +
Host:example.amazonaws.com
 1858   1819   
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
 1859   1820   
new file mode 100644
 1860   1821   
index 0000000..7bee5c7
 1861         -
-- /dev/null
        1822  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 1862   1823   
@@ -0,0 +1,12 @@
        1824  +
{
        1825  +
    "credentials": {
        1826  +
        "access_key_id": "AKIDEXAMPLE",
        1827  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1828  +
    },
        1829  +
    "expiration_in_seconds": 3600,
        1830  +
    "normalize": false,
        1831  +
    "region": "us-east-1",
        1832  +
    "service": "service",
        1833  +
    "sign_body": false,
        1834  +
    "timestamp": "2015-08-30T12:36:00Z"
        1835  +
}
              \
 No newline at end of file
 1863   1836   
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
 1864   1837   
similarity index 66%
 1865   1838   
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
 1866   1839   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1867   1840   
index 71dc981..124a709 100644
 1868         -
-- 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
        1841  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1869   1842   
@@ -1,9 +1,8 @@
 1870         -
POST
 1871         -
/
        1843  +
GET
        1844  +
/example%20space/
 1872   1845   
 1873         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 1874   1846   
host:example.amazonaws.com
 1875   1847   
x-amz-date:20150830T123600Z
 1876   1848   
 1877   1849   
host;x-amz-date
 1878   1850   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1879   1851   
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
 1880   1852   
new file mode 100644
 1881   1853   
index 0000000..f63892b
 1882         -
-- /dev/null
        1854  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 1883   1855   
@@ -0,0 +1 @@
        1856  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1884   1857   
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
 1885   1858   
new file mode 100644
 1886   1859   
index 0000000..19cd5cb
 1887         -
-- /dev/null
        1860  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 1888   1861   
@@ -0,0 +1,5 @@
        1862  +
GET /example space/ HTTP/1.1
        1863  +
Host:example.amazonaws.com
        1864  +
X-Amz-Date:20150830T123600Z
        1865  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1866  +
 1889   1867   
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
 1890   1868   
new file mode 100644
 1891   1869   
index 0000000..a633f0c
 1892         -
-- /dev/null
        1870  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 1893   1871   
@@ -0,0 +1,4 @@
        1872  +
AWS4-HMAC-SHA256
        1873  +
20150830T123600Z
        1874  +
20150830/us-east-1/service/aws4_request
        1875  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 1894   1876   
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
 1895   1877   
new file mode 100644
 1896   1878   
index 0000000..fa3d3e2
 1897         -
-- /dev/null
        1879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 1898   1880   
@@ -0,0 +1,7 @@
        1881  +
GET
        1882  +
/example%20space/
        1883  +
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
        1884  +
host:example.amazonaws.com
        1885  +
        1886  +
host
        1887  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1899   1888   
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
 1900   1889   
new file mode 100644
 1901   1890   
index 0000000..5b2e204
 1902         -
-- /dev/null
        1891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 1903   1892   
@@ -0,0 +1 @@
        1893  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1904   1894   
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
 1905   1895   
new file mode 100644
 1906   1896   
index 0000000..93ca1d0
 1907         -
-- /dev/null
        1897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 1908   1898   
@@ -0,0 +1,3 @@
        1899  +
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
        1900  +
Host:example.amazonaws.com
        1901  +
 1909   1902   
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
 1910   1903   
new file mode 100644
 1911   1904   
index 0000000..b4cb789
 1912         -
-- /dev/null
        1905  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 1913   1906   
@@ -0,0 +1,4 @@
        1907  +
AWS4-HMAC-SHA256
        1908  +
20150830T123600Z
        1909  +
20150830/us-east-1/service/aws4_request
        1910  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1914   1911   
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
 1915   1912   
similarity index 67%
 1916   1913   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 1917   1914   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1918   1915   
index b7d5e8b..ab509ab 100644
 1919         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        1916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1920   1917   
@@ -1,3 +1,2 @@
 1921   1918   
GET /example space/ HTTP/1.1
 1922   1919   
Host:example.amazonaws.com
 1923         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1924   1920   
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
 1925   1921   
new file mode 100644
 1926   1922   
index 0000000..0468d80
 1927         -
-- /dev/null
        1923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 1928   1924   
@@ -0,0 +1,12 @@
        1925  +
{
        1926  +
    "credentials": {
        1927  +
        "access_key_id": "AKIDEXAMPLE",
        1928  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1929  +
    },
        1930  +
    "expiration_in_seconds": 3600,
        1931  +
    "normalize": true,
        1932  +
    "region": "us-east-1",
        1933  +
    "service": "service",
        1934  +
    "sign_body": false,
        1935  +
    "timestamp": "2015-08-30T12:36:00Z"
        1936  +
}
              \
 No newline at end of file
 1929   1937   
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
 1930   1938   
similarity index 100%
 1931   1939   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 1932   1940   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 1933   1941   
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
 1934   1942   
new file mode 100644
 1935   1943   
index 0000000..e503354
 1936         -
-- /dev/null
        1944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 1937   1945   
@@ -0,0 +1 @@
        1946  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 1938   1947   
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
 1939   1948   
new file mode 100644
 1940   1949   
index 0000000..4367892
 1941         -
-- /dev/null
        1950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 1942   1951   
@@ -0,0 +1,5 @@
        1952  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        1953  +
Host:example.amazonaws.com
        1954  +
X-Amz-Date:20150830T123600Z
        1955  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        1956  +
 1943   1957   
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
 1944   1958   
similarity index 100%
 1945   1959   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 1946   1960   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 1947   1961   
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
 1948   1962   
new file mode 100644
 1949   1963   
index 0000000..d7f0696
 1950         -
-- /dev/null
        1964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 1951   1965   
@@ -0,0 +1,7 @@
        1966  +
GET
        1967  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        1968  +
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
        1969  +
host:example.amazonaws.com
        1970  +
        1971  +
host
        1972  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1952   1973   
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
 1953   1974   
new file mode 100644
 1954   1975   
index 0000000..509e972
 1955         -
-- /dev/null
        1976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 1956   1977   
@@ -0,0 +1 @@
        1978  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 1957   1979   
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
 1958   1980   
new file mode 100644
 1959   1981   
index 0000000..79aad36
 1960         -
-- /dev/null
        1982  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 1961   1983   
@@ -0,0 +1,3 @@
        1984  +
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
        1985  +
Host:example.amazonaws.com
        1986  +
 1962   1987   
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
 1963   1988   
new file mode 100644
 1964   1989   
index 0000000..e8068b3
 1965         -
-- /dev/null
        1990  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 1966   1991   
@@ -0,0 +1,4 @@
        1992  +
AWS4-HMAC-SHA256
        1993  +
20150830T123600Z
        1994  +
20150830/us-east-1/service/aws4_request
        1995  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 1967   1996   
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
 1968   1997   
similarity index 100%
 1969   1998   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 1970   1999   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 1971   2000   
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
 1972   2001   
new file mode 100644
 1973   2002   
index 0000000..0468d80
 1974         -
-- /dev/null
        2003  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 1975   2004   
@@ -0,0 +1,12 @@
        2005  +
{
        2006  +
    "credentials": {
        2007  +
        "access_key_id": "AKIDEXAMPLE",
        2008  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2009  +
    },
        2010  +
    "expiration_in_seconds": 3600,
        2011  +
    "normalize": true,
        2012  +
    "region": "us-east-1",
        2013  +
    "service": "service",
        2014  +
    "sign_body": false,
        2015  +
    "timestamp": "2015-08-30T12:36:00Z"
        2016  +
}
              \
 No newline at end of file
 1976   2017   
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
 1977   2018   
similarity index 100%
 1978   2019   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 1979   2020   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 1980   2021   
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
 1981   2022   
new file mode 100644
 1982   2023   
index 0000000..9a13676
 1983         -
-- /dev/null
        2024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 1984   2025   
@@ -0,0 +1 @@
        2026  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 1985   2027   
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
 1986   2028   
new file mode 100644
 1987   2029   
index 0000000..5aaf47c
 1988         -
-- /dev/null
        2030  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 1989   2031   
@@ -0,0 +1,5 @@
        2032  +
GET /ሴ HTTP/1.1
        2033  +
Host:example.amazonaws.com
        2034  +
X-Amz-Date:20150830T123600Z
        2035  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2036  +
 1990   2037   
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
 1991   2038   
similarity index 100%
 1992   2039   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 1993   2040   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 1994   2041   
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
 1995   2042   
new file mode 100644
 1996   2043   
index 0000000..bdb77c9
 1997         -
-- /dev/null
        2044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 1998   2045   
@@ -0,0 +1,7 @@
        2046  +
GET
        2047  +
/%E1%88%B4
        2048  +
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
        2049  +
host:example.amazonaws.com
        2050  +
        2051  +
host
        2052  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1999   2053   
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
 2000   2054   
new file mode 100644
 2001   2055   
index 0000000..21342b3
 2002         -
-- /dev/null
        2056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2003   2057   
@@ -0,0 +1 @@
        2058  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2004   2059   
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
 2005   2060   
new file mode 100644
 2006   2061   
index 0000000..368c2ff
 2007         -
-- /dev/null
        2062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2008   2063   
@@ -0,0 +1,3 @@
        2064  +
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
        2065  +
Host:example.amazonaws.com
        2066  +
 2009   2067   
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
 2010   2068   
new file mode 100644
 2011   2069   
index 0000000..56b8fbf
 2012         -
-- /dev/null
        2070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2013   2071   
@@ -0,0 +1,4 @@
        2072  +
AWS4-HMAC-SHA256
        2073  +
20150830T123600Z
        2074  +
20150830/us-east-1/service/aws4_request
        2075  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2014   2076   
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
 2015   2077   
similarity index 62%
 2016   2078   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2017   2079   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2018   2080   
index da4808d..9e273f6 100644
 2019         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2081  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2020   2082   
@@ -1,3 +1,2 @@
 2021   2083   
GET /ሴ HTTP/1.1
 2022   2084   
Host:example.amazonaws.com
 2023         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2024   2085   
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
 2025   2086   
new file mode 100644
 2026   2087   
index 0000000..0468d80
 2027         -
-- /dev/null
        2088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2028   2089   
@@ -0,0 +1,12 @@
        2090  +
{
        2091  +
    "credentials": {
        2092  +
        "access_key_id": "AKIDEXAMPLE",
        2093  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2094  +
    },
        2095  +
    "expiration_in_seconds": 3600,
        2096  +
    "normalize": true,
        2097  +
    "region": "us-east-1",
        2098  +
    "service": "service",
        2099  +
    "sign_body": false,
        2100  +
    "timestamp": "2015-08-30T12:36:00Z"
        2101  +
}
              \
 No newline at end of file
 2029   2102   
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
 2030   2103   
similarity index 100%
 2031   2104   
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
 2032   2105   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2033   2106   
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
 2034   2107   
new file mode 100644
 2035   2108   
index 0000000..d7f1c1c
 2036         -
-- /dev/null
        2109  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2037   2110   
@@ -0,0 +1 @@
        2111  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2038   2112   
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
 2039   2113   
new file mode 100644
 2040   2114   
index 0000000..1c60790
 2041         -
-- /dev/null
        2115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2042   2116   
@@ -0,0 +1,5 @@
        2117  +
GET /?Param1=value1 HTTP/1.1
        2118  +
Host:example.amazonaws.com
        2119  +
X-Amz-Date:20150830T123600Z
        2120  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2121  +
 2043   2122   
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
 2044   2123   
similarity index 100%
 2045   2124   
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
 2046   2125   
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
 2047   2126   
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
 2048   2127   
new file mode 100644
 2049   2128   
index 0000000..6a823ed
 2050         -
-- /dev/null
        2129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2051   2130   
@@ -0,0 +1,7 @@
        2131  +
GET
        2132  +
/
        2133  +
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
        2134  +
host:example.amazonaws.com
        2135  +
        2136  +
host
        2137  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2052   2138   
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
 2053   2139   
new file mode 100644
 2054   2140   
index 0000000..8c77136
 2055         -
-- /dev/null
        2141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2056   2142   
@@ -0,0 +1 @@
        2143  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2057   2144   
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
 2058   2145   
new file mode 100644
 2059   2146   
index 0000000..2d337d8
 2060         -
-- /dev/null
        2147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2061   2148   
@@ -0,0 +1,3 @@
        2149  +
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
        2150  +
Host:example.amazonaws.com
        2151  +
 2062   2152   
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
 2063   2153   
new file mode 100644
 2064   2154   
index 0000000..191a484
 2065         -
-- /dev/null
        2155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2066   2156   
@@ -0,0 +1,4 @@
        2157  +
AWS4-HMAC-SHA256
        2158  +
20150830T123600Z
        2159  +
20150830/us-east-1/service/aws4_request
        2160  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2067   2161   
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
 2068   2162   
similarity index 100%
 2069   2163   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2070   2164   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2071   2165   
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
 2072   2166   
new file mode 100644
 2073   2167   
index 0000000..0468d80
 2074         -
-- /dev/null
        2168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2075   2169   
@@ -0,0 +1,12 @@
        2170  +
{
        2171  +
    "credentials": {
        2172  +
        "access_key_id": "AKIDEXAMPLE",
        2173  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2174  +
    },
        2175  +
    "expiration_in_seconds": 3600,
        2176  +
    "normalize": true,
        2177  +
    "region": "us-east-1",
        2178  +
    "service": "service",
        2179  +
    "sign_body": false,
        2180  +
    "timestamp": "2015-08-30T12:36:00Z"
        2181  +
}
              \
 No newline at end of file
 2076   2182   
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
 2077   2183   
new file mode 100644
 2078   2184   
index 0000000..0c8ba21
 2079         -
-- /dev/null
        2185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2080   2186   
@@ -0,0 +1,8 @@
        2187  +
GET
        2188  +
/
        2189  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2190  +
host:example.amazonaws.com
        2191  +
x-amz-date:20150830T123600Z
        2192  +
        2193  +
host;x-amz-date
        2194  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2081   2195   
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
 2082   2196   
new file mode 100644
 2083   2197   
index 0000000..9ab65ed
 2084         -
-- /dev/null
        2198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2085   2199   
@@ -0,0 +1 @@
        2200  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2086   2201   
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
 2087   2202   
new file mode 100644
 2088   2203   
index 0000000..0bcdf98
 2089         -
-- /dev/null
        2204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2090   2205   
@@ -0,0 +1,5 @@
        2206  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2207  +
Host:example.amazonaws.com
        2208  +
X-Amz-Date:20150830T123600Z
        2209  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2210  +
 2091   2211   
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
 2092   2212   
new file mode 100644
 2093   2213   
index 0000000..bf674ad
 2094         -
-- /dev/null
        2214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2095   2215   
@@ -0,0 +1,4 @@
        2216  +
AWS4-HMAC-SHA256
        2217  +
20150830T123600Z
        2218  +
20150830/us-east-1/service/aws4_request
        2219  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2096   2220   
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
 2097   2221   
new file mode 100644
 2098   2222   
index 0000000..3f590a4
 2099         -
-- /dev/null
        2223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2100   2224   
@@ -0,0 +1,7 @@
        2225  +
GET
        2226  +
/
        2227  +
%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
        2228  +
host:example.amazonaws.com
        2229  +
        2230  +
host
        2231  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2101   2232   
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
 2102   2233   
new file mode 100644
 2103   2234   
index 0000000..e225eab
 2104         -
-- /dev/null
        2235  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2105   2236   
@@ -0,0 +1 @@
        2237  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2106   2238   
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
 2107   2239   
new file mode 100644
 2108   2240   
index 0000000..6206719
 2109         -
-- /dev/null
        2241  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2110   2242   
@@ -0,0 +1,3 @@
        2243  +
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
        2244  +
Host:example.amazonaws.com
        2245  +
 2111   2246   
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
 2112   2247   
new file mode 100644
 2113   2248   
index 0000000..81a4210
 2114         -
-- /dev/null
        2249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2115   2250   
@@ -0,0 +1,4 @@
        2251  +
AWS4-HMAC-SHA256
        2252  +
20150830T123600Z
        2253  +
20150830/us-east-1/service/aws4_request
        2254  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2116   2255   
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
 2117   2256   
new file mode 100644
 2118   2257   
index 0000000..368c6e3
 2119         -
-- /dev/null
        2258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2120   2259   
@@ -0,0 +1,2 @@
        2260  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2261  +
Host:example.amazonaws.com
 2121   2262   
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
 2122   2263   
new file mode 100644
 2123   2264   
index 0000000..0468d80
 2124         -
-- /dev/null
        2265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2125   2266   
@@ -0,0 +1,12 @@
        2267  +
{
        2268  +
    "credentials": {
        2269  +
        "access_key_id": "AKIDEXAMPLE",
        2270  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2271  +
    },
        2272  +
    "expiration_in_seconds": 3600,
        2273  +
    "normalize": true,
        2274  +
    "region": "us-east-1",
        2275  +
    "service": "service",
        2276  +
    "sign_body": false,
        2277  +
    "timestamp": "2015-08-30T12:36:00Z"
        2278  +
}
              \
 No newline at end of file
 2126   2279   
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
 2127   2280   
similarity index 100%
 2128   2281   
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
 2129   2282   
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
 2130   2283   
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
 2131   2284   
new file mode 100644
 2132   2285   
index 0000000..6a8cb9d
 2133         -
-- /dev/null
        2286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2134   2287   
@@ -0,0 +1 @@
        2288  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2135   2289   
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
 2136   2290   
new file mode 100644
 2137   2291   
index 0000000..f78a9d2
 2138         -
-- /dev/null
        2292  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2139   2293   
@@ -0,0 +1,5 @@
        2294  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2295  +
Host:example.amazonaws.com
        2296  +
X-Amz-Date:20150830T123600Z
        2297  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2298  +
 2140   2299   
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
 2141   2300   
similarity index 100%
 2142   2301   
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
 2143   2302   
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
 2144   2303   
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
 2145   2304   
new file mode 100644
 2146   2305   
index 0000000..a6e1bc7
 2147         -
-- /dev/null
        2306  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2148   2307   
@@ -0,0 +1,7 @@
        2308  +
GET
        2309  +
/
        2310  +
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
        2311  +
host:example.amazonaws.com
        2312  +
        2313  +
host
        2314  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2149   2315   
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
 2150   2316   
new file mode 100644
 2151   2317   
index 0000000..d6e6a88
 2152         -
-- /dev/null
        2318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2153   2319   
@@ -0,0 +1 @@
        2320  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2154   2321   
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
 2155   2322   
new file mode 100644
 2156   2323   
index 0000000..538e2f0
 2157         -
-- /dev/null
        2324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2158   2325   
@@ -0,0 +1,3 @@
        2326  +
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
        2327  +
Host:example.amazonaws.com
        2328  +
 2159   2329   
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
 2160   2330   
new file mode 100644
 2161   2331   
index 0000000..e696085
 2162         -
-- /dev/null
        2332  +
++ 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
 2163   2333   
@@ -0,0 +1,4 @@
        2334  +
AWS4-HMAC-SHA256
        2335  +
20150830T123600Z
        2336  +
20150830/us-east-1/service/aws4_request
        2337  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2164   2338   
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
 2165   2339   
similarity index 100%
 2166   2340   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2167   2341   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2168   2342   
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
 2169   2343   
new file mode 100644
 2170   2344   
index 0000000..0468d80
 2171         -
-- /dev/null
        2345  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2172   2346   
@@ -0,0 +1,12 @@
        2347  +
{
        2348  +
    "credentials": {
        2349  +
        "access_key_id": "AKIDEXAMPLE",
        2350  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2351  +
    },
        2352  +
    "expiration_in_seconds": 3600,
        2353  +
    "normalize": true,
        2354  +
    "region": "us-east-1",
        2355  +
    "service": "service",
        2356  +
    "sign_body": false,
        2357  +
    "timestamp": "2015-08-30T12:36:00Z"
        2358  +
}
              \
 No newline at end of file
 2173   2359   
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
 2174   2360   
similarity index 100%
 2175   2361   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2176   2362   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2177   2363   
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
 2178   2364   
new file mode 100644
 2179   2365   
index 0000000..876a64b
 2180         -
-- /dev/null
        2366  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2181   2367   
@@ -0,0 +1 @@
        2368  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2182   2369   
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
 2183   2370   
similarity index 50%
 2184   2371   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2185   2372   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2186   2373   
index ba1ef40..9d0d993 100644
 2187         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2188   2375   
@@ -1,4 +1,5 @@
 2189   2376   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2190   2377   
Host:example.amazonaws.com
 2191   2378   
X-Amz-Date:20150830T123600Z
 2192         -
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
        2379  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2380  +
 2193   2381   
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
 2194   2382   
similarity index 100%
 2195   2383   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2196   2384   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2197   2385   
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
 2198   2386   
new file mode 100644
 2199   2387   
index 0000000..a1bac59
 2200         -
-- /dev/null
        2388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2201   2389   
@@ -0,0 +1,7 @@
        2390  +
GET
        2391  +
/
        2392  +
-._~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
        2393  +
host:example.amazonaws.com
        2394  +
        2395  +
host
        2396  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2202   2397   
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
 2203   2398   
new file mode 100644
 2204   2399   
index 0000000..41881e9
 2205         -
-- /dev/null
        2400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2206   2401   
@@ -0,0 +1 @@
        2402  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2207   2403   
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
 2208   2404   
new file mode 100644
 2209   2405   
index 0000000..3179076
 2210         -
-- /dev/null
        2406  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2211   2407   
@@ -0,0 +1,3 @@
        2408  +
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
        2409  +
Host:example.amazonaws.com
        2410  +
 2212   2411   
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
 2213   2412   
new file mode 100644
 2214   2413   
index 0000000..6d675fc
 2215         -
-- /dev/null
        2414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2216   2415   
@@ -0,0 +1,4 @@
        2416  +
AWS4-HMAC-SHA256
        2417  +
20150830T123600Z
        2418  +
20150830/us-east-1/service/aws4_request
        2419  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2217   2420   
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
 2218   2421   
similarity index 100%
 2219   2422   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2220   2423   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2221   2424   
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
 2222   2425   
new file mode 100644
 2223   2426   
index 0000000..0468d80
 2224         -
-- /dev/null
        2427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2225   2428   
@@ -0,0 +1,12 @@
        2429  +
{
        2430  +
    "credentials": {
        2431  +
        "access_key_id": "AKIDEXAMPLE",
        2432  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2433  +
    },
        2434  +
    "expiration_in_seconds": 3600,
        2435  +
    "normalize": true,
        2436  +
    "region": "us-east-1",
        2437  +
    "service": "service",
        2438  +
    "sign_body": false,
        2439  +
    "timestamp": "2015-08-30T12:36:00Z"
        2440  +
}
              \
 No newline at end of file
 2226   2441   
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
 2227   2442   
similarity index 100%
 2228   2443   
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
 2229   2444   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2230   2445   
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
 2231   2446   
new file mode 100644
 2232   2447   
index 0000000..87f295f
 2233         -
-- /dev/null
        2448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2234   2449   
@@ -0,0 +1 @@
        2450  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2235   2451   
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
 2236   2452   
new file mode 100644
 2237   2453   
index 0000000..36b86e7
 2238         -
-- /dev/null
        2454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2239   2455   
@@ -0,0 +1,5 @@
        2456  +
GET / HTTP/1.1
        2457  +
Host:example.amazonaws.com
        2458  +
X-Amz-Date:20150830T123600Z
        2459  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2460  +
 2240   2461   
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
 2241   2462   
similarity index 100%
 2242   2463   
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
 2243   2464   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2244   2465   
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
 2245   2466   
new file mode 100644
 2246   2467   
index 0000000..fb2420d
 2247         -
-- /dev/null
        2468  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2248   2469   
@@ -0,0 +1,7 @@
        2470  +
GET
        2471  +
/
        2472  +
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
        2473  +
host:example.amazonaws.com
        2474  +
        2475  +
host
        2476  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2249   2477   
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
 2250   2478   
new file mode 100644
 2251   2479   
index 0000000..da5c905
 2252         -
-- /dev/null
        2480  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2253   2481   
@@ -0,0 +1 @@
        2482  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2254   2483   
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
 2255   2484   
new file mode 100644
 2256   2485   
index 0000000..eeb7a8f
 2257         -
-- /dev/null
        2486  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2258   2487   
@@ -0,0 +1,3 @@
        2488  +
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
        2489  +
Host:example.amazonaws.com
        2490  +
 2259   2491   
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
 2260   2492   
new file mode 100644
 2261   2493   
index 0000000..d837e67
 2262         -
-- /dev/null
        2494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2263   2495   
@@ -0,0 +1,4 @@
        2496  +
AWS4-HMAC-SHA256
        2497  +
20150830T123600Z
        2498  +
20150830/us-east-1/service/aws4_request
        2499  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2264   2500   
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
 2265   2501   
similarity index 100%
 2266   2502   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2267   2503   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2268   2504   
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
 2269   2505   
new file mode 100644
 2270   2506   
index 0000000..0468d80
 2271         -
-- /dev/null
        2507  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2272   2508   
@@ -0,0 +1,12 @@
        2509  +
{
        2510  +
    "credentials": {
        2511  +
        "access_key_id": "AKIDEXAMPLE",
        2512  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2513  +
    },
        2514  +
    "expiration_in_seconds": 3600,
        2515  +
    "normalize": true,
        2516  +
    "region": "us-east-1",
        2517  +
    "service": "service",
        2518  +
    "sign_body": false,
        2519  +
    "timestamp": "2015-08-30T12:36:00Z"
        2520  +
}
              \
 No newline at end of file
 2273   2521   
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
 2274   2522   
similarity index 100%
 2275   2523   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2276   2524   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2277   2525   
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
 2278   2526   
new file mode 100644
 2279   2527   
index 0000000..19a2cc9
 2280         -
-- /dev/null
        2528  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2281   2529   
@@ -0,0 +1 @@
        2530  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2282   2531   
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
 2283   2532   
new file mode 100644
 2284   2533   
index 0000000..acb13ee
 2285         -
-- /dev/null
        2534  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2286   2535   
@@ -0,0 +1,5 @@
        2536  +
GET /?ሴ=bar HTTP/1.1
        2537  +
Host:example.amazonaws.com
        2538  +
X-Amz-Date:20150830T123600Z
        2539  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2540  +
 2287   2541   
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
 2288   2542   
similarity index 100%
 2289   2543   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2290   2544   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2291   2545   
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
 2292   2546   
new file mode 100644
 2293   2547   
index 0000000..92cee62
 2294         -
-- /dev/null
        2548  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2295   2549   
@@ -0,0 +1,7 @@
        2550  +
GET
        2551  +
/
        2552  +
%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
        2553  +
host:example.amazonaws.com
        2554  +
        2555  +
host
        2556  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2296   2557   
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
 2297   2558   
new file mode 100644
 2298   2559   
index 0000000..c9e49de
 2299         -
-- /dev/null
        2560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2300   2561   
@@ -0,0 +1 @@
        2562  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2301   2563   
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
 2302   2564   
new file mode 100644
 2303   2565   
index 0000000..8f4d8d0
 2304         -
-- /dev/null
        2566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2305   2567   
@@ -0,0 +1,3 @@
        2568  +
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
        2569  +
Host:example.amazonaws.com
        2570  +
 2306   2571   
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
 2307   2572   
new file mode 100644
 2308   2573   
index 0000000..a6181dc
 2309         -
-- /dev/null
        2574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2310   2575   
@@ -0,0 +1,4 @@
        2576  +
AWS4-HMAC-SHA256
        2577  +
20150830T123600Z
        2578  +
20150830/us-east-1/service/aws4_request
        2579  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2311   2580   
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
 2312   2581   
similarity index 64%
 2313   2582   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2314   2583   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2315   2584   
index cc2757e..aff333a 100644
 2316         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2585  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2317   2586   
@@ -1,3 +1,2 @@
 2318   2587   
GET /?ሴ=bar HTTP/1.1
 2319   2588   
Host:example.amazonaws.com
 2320         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2321   2589   
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
 2322   2590   
similarity index 99%
 2323   2591   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2324   2592   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2325   2593   
index a457c8a..a334e18 100644
 2326         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
        2594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2327   2595   
@@ -1,13 +1,13 @@
 2328   2596   
{
 2329   2597   
    "credentials": {
 2330   2598   
        "access_key_id": "AKIDEXAMPLE",
 2331   2599   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
 2332   2600   
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
 2333   2601   
    },
 2334   2602   
    "expiration_in_seconds": 3600,
 2335   2603   
    "normalize": true,
 2336   2604   
    "region": "us-east-1",
 2337   2605   
    "service": "service",
 2338   2606   
    "sign_body": false,
 2339   2607   
    "timestamp": "2015-08-30T12:36:00Z"
 2340         -
}
        2608  +
}
              \
 No newline at end of file
 2341   2609   
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
 2342   2610   
new file mode 100644
 2343   2611   
index 0000000..ccacdeb
 2344         -
-- /dev/null
        2612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2345   2613   
@@ -0,0 +1,9 @@
        2614  +
GET
        2615  +
/
        2616  +
        2617  +
host:example.amazonaws.com
        2618  +
x-amz-date:20150830T123600Z
        2619  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2620  +
        2621  +
host;x-amz-date;x-amz-security-token
        2622  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2346   2623   
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
 2347   2624   
new file mode 100644
 2348   2625   
index 0000000..083e30d
 2349         -
-- /dev/null
        2626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2350   2627   
@@ -0,0 +1 @@
        2628  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2351   2629   
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
 2352   2630   
new file mode 100644
 2353   2631   
index 0000000..5287932
 2354         -
-- /dev/null
        2632  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2355   2633   
@@ -0,0 +1,6 @@
        2634  +
GET / HTTP/1.1
        2635  +
Host:example.amazonaws.com
        2636  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2637  +
X-Amz-Date:20150830T123600Z
        2638  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2639  +
 2356   2640   
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
 2357   2641   
new file mode 100644
 2358   2642   
index 0000000..742b880
 2359         -
-- /dev/null
        2643  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2360   2644   
@@ -0,0 +1,4 @@
        2645  +
AWS4-HMAC-SHA256
        2646  +
20150830T123600Z
        2647  +
20150830/us-east-1/service/aws4_request
        2648  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2361   2649   
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
 2362   2650   
new file mode 100644
 2363   2651   
index 0000000..5e75179
 2364         -
-- /dev/null
        2652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2365   2653   
@@ -0,0 +1,7 @@
        2654  +
GET
        2655  +
/
        2656  +
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
        2657  +
host:example.amazonaws.com
        2658  +
        2659  +
host
        2660  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2366   2661   
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
 2367   2662   
new file mode 100644
 2368   2663   
index 0000000..50b947f
 2369         -
-- /dev/null
        2664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2370   2665   
@@ -0,0 +1 @@
        2666  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2371   2667   
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
 2372   2668   
new file mode 100644
 2373   2669   
index 0000000..aee910b
 2374         -
-- /dev/null
        2670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2375   2671   
@@ -0,0 +1,3 @@
        2672  +
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
        2673  +
Host:example.amazonaws.com
        2674  +
 2376   2675   
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
 2377   2676   
new file mode 100644
 2378   2677   
index 0000000..04a6c17
 2379         -
-- /dev/null
        2678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2380   2679   
@@ -0,0 +1,4 @@
        2680  +
AWS4-HMAC-SHA256
        2681  +
20150830T123600Z
        2682  +
20150830/us-east-1/service/aws4_request
        2683  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2381   2684   
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
 2382   2685   
similarity index 100%
 2383   2686   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2384   2687   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2385   2688   
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
 2386   2689   
new file mode 100644
 2387   2690   
index 0000000..0468d80
 2388         -
-- /dev/null
        2691  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2389   2692   
@@ -0,0 +1,12 @@
        2693  +
{
        2694  +
    "credentials": {
        2695  +
        "access_key_id": "AKIDEXAMPLE",
        2696  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2697  +
    },
        2698  +
    "expiration_in_seconds": 3600,
        2699  +
    "normalize": true,
        2700  +
    "region": "us-east-1",
        2701  +
    "service": "service",
        2702  +
    "sign_body": false,
        2703  +
    "timestamp": "2015-08-30T12:36:00Z"
        2704  +
}
              \
 No newline at end of file
 2390   2705   
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
 2391   2706   
similarity index 100%
 2392   2707   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2393   2708   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2394   2709   
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
 2395   2710   
new file mode 100644
 2396   2711   
index 0000000..87f295f
 2397         -
-- /dev/null
        2712  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2398   2713   
@@ -0,0 +1 @@
        2714  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2399   2715   
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
 2400   2716   
new file mode 100644
 2401   2717   
index 0000000..36b86e7
 2402         -
-- /dev/null
        2718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2403   2719   
@@ -0,0 +1,5 @@
        2720  +
GET / HTTP/1.1
        2721  +
Host:example.amazonaws.com
        2722  +
X-Amz-Date:20150830T123600Z
        2723  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2724  +
 2404   2725   
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
 2405   2726   
similarity index 100%
 2406   2727   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2407   2728   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2408   2729   
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
 2409   2730   
new file mode 100644
 2410   2731   
index 0000000..fb2420d
 2411         -
-- /dev/null
        2732  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2412   2733   
@@ -0,0 +1,7 @@
        2734  +
GET
        2735  +
/
        2736  +
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
        2737  +
host:example.amazonaws.com
        2738  +
        2739  +
host
        2740  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2413   2741   
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
 2414   2742   
new file mode 100644
 2415   2743   
index 0000000..da5c905
 2416         -
-- /dev/null
        2744  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2417   2745   
@@ -0,0 +1 @@
        2746  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2418   2747   
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
 2419   2748   
new file mode 100644
 2420   2749   
index 0000000..eeb7a8f
 2421         -
-- /dev/null
        2750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2422   2751   
@@ -0,0 +1,3 @@
        2752  +
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
        2753  +
Host:example.amazonaws.com
        2754  +
 2423   2755   
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
 2424   2756   
new file mode 100644
 2425   2757   
index 0000000..d837e67
 2426         -
-- /dev/null
        2758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2427   2759   
@@ -0,0 +1,4 @@
        2760  +
AWS4-HMAC-SHA256
        2761  +
20150830T123600Z
        2762  +
20150830/us-east-1/service/aws4_request
        2763  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2428   2764   
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
 2429   2765   
similarity index 100%
 2430   2766   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2431   2767   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2432   2768   
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
 2433   2769   
new file mode 100644
 2434   2770   
index 0000000..0468d80
 2435         -
-- /dev/null
        2771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2436   2772   
@@ -0,0 +1,12 @@
        2773  +
{
        2774  +
    "credentials": {
        2775  +
        "access_key_id": "AKIDEXAMPLE",
        2776  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2777  +
    },
        2778  +
    "expiration_in_seconds": 3600,
        2779  +
    "normalize": true,
        2780  +
    "region": "us-east-1",
        2781  +
    "service": "service",
        2782  +
    "sign_body": false,
        2783  +
    "timestamp": "2015-08-30T12:36:00Z"
        2784  +
}
              \
 No newline at end of file
 2437   2785   
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
 2438   2786   
similarity index 100%
 2439   2787   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2440   2788   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2441   2789   
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
 2442   2790   
new file mode 100644
 2443   2791   
index 0000000..629487f
 2444         -
-- /dev/null
        2792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2445   2793   
@@ -0,0 +1 @@
        2794  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2446   2795   
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
 2447   2796   
new file mode 100644
 2448   2797   
index 0000000..0d99b1c
 2449         -
-- /dev/null
        2798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2450   2799   
@@ -0,0 +1,5 @@
        2800  +
POST / HTTP/1.1
        2801  +
Host:example.amazonaws.com
        2802  +
X-Amz-Date:20150830T123600Z
        2803  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2804  +
 2451   2805   
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
 2452   2806   
similarity index 100%
 2453   2807   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2454   2808   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2455   2809   
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
 2456   2810   
new file mode 100644
 2457   2811   
index 0000000..d3341e7
 2458         -
-- /dev/null
        2812  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2459   2813   
@@ -0,0 +1,7 @@
        2814  +
POST
        2815  +
/
        2816  +
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
        2817  +
host:example.amazonaws.com
        2818  +
        2819  +
host
        2820  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2460   2821   
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
 2461   2822   
new file mode 100644
 2462   2823   
index 0000000..79f7e0d
 2463         -
-- /dev/null
        2824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2464   2825   
@@ -0,0 +1 @@
        2826  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2465   2827   
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
 2466   2828   
new file mode 100644
 2467   2829   
index 0000000..94f1b21
 2468         -
-- /dev/null
        2830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2469   2831   
@@ -0,0 +1,3 @@
        2832  +
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
        2833  +
Host:example.amazonaws.com
        2834  +
 2470   2835   
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
 2471   2836   
new file mode 100644
 2472   2837   
index 0000000..e8f335b
 2473         -
-- /dev/null
        2838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2474   2839   
@@ -0,0 +1,4 @@
        2840  +
AWS4-HMAC-SHA256
        2841  +
20150830T123600Z
        2842  +
20150830/us-east-1/service/aws4_request
        2843  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2475   2844   
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
 2476   2845   
similarity index 100%
 2477   2846   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2478   2847   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2479   2848   
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
 2480   2849   
new file mode 100644
 2481   2850   
index 0000000..0468d80
 2482         -
-- /dev/null
        2851  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2483   2852   
@@ -0,0 +1,12 @@
        2853  +
{
        2854  +
    "credentials": {
        2855  +
        "access_key_id": "AKIDEXAMPLE",
        2856  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2857  +
    },
        2858  +
    "expiration_in_seconds": 3600,
        2859  +
    "normalize": true,
        2860  +
    "region": "us-east-1",
        2861  +
    "service": "service",
        2862  +
    "sign_body": false,
        2863  +
    "timestamp": "2015-08-30T12:36:00Z"
        2864  +
}
              \
 No newline at end of file
 2484   2865   
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
 2485   2866   
similarity index 100%
 2486   2867   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2487   2868   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2488   2869   
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
 2489   2870   
new file mode 100644
 2490   2871   
index 0000000..e4e6428
 2491         -
-- /dev/null
        2872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2492   2873   
@@ -0,0 +1 @@
        2874  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2493   2875   
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
 2494   2876   
new file mode 100644
 2495   2877   
index 0000000..e3778f5
 2496         -
-- /dev/null
        2878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2497   2879   
@@ -0,0 +1,6 @@
        2880  +
POST / HTTP/1.1
        2881  +
Host:example.amazonaws.com
        2882  +
My-Header1:value1
        2883  +
X-Amz-Date:20150830T123600Z
        2884  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2885  +
 2498   2886   
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
 2499   2887   
similarity index 100%
 2500   2888   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2501   2889   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2502   2890   
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
 2503   2891   
new file mode 100644
 2504   2892   
index 0000000..bd7c937
 2505         -
-- /dev/null
        2893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2506   2894   
@@ -0,0 +1,8 @@
        2895  +
POST
        2896  +
/
        2897  +
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
        2898  +
host:example.amazonaws.com
        2899  +
my-header1:value1
        2900  +
        2901  +
host;my-header1
        2902  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2507   2903   
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
 2508   2904   
new file mode 100644
 2509   2905   
index 0000000..0416f13
 2510         -
-- /dev/null
        2906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2511   2907   
@@ -0,0 +1 @@
        2908  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2512   2909   
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
 2513   2910   
new file mode 100644
 2514   2911   
index 0000000..5e6522f
 2515         -
-- /dev/null
        2912  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2516   2913   
@@ -0,0 +1,4 @@
        2914  +
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
        2915  +
Host:example.amazonaws.com
        2916  +
My-Header1:value1
        2917  +
 2517   2918   
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
 2518   2919   
new file mode 100644
 2519   2920   
index 0000000..d06d1df
 2520         -
-- /dev/null
        2921  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2521   2922   
@@ -0,0 +1,4 @@
        2923  +
AWS4-HMAC-SHA256
        2924  +
20150830T123600Z
        2925  +
20150830/us-east-1/service/aws4_request
        2926  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2522   2927   
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
 2523   2928   
similarity index 100%
 2524   2929   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2525   2930   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2526   2931   
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
 2527   2932   
new file mode 100644
 2528   2933   
index 0000000..0468d80
 2529         -
-- /dev/null
        2934  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2530   2935   
@@ -0,0 +1,12 @@
        2936  +
{
        2937  +
    "credentials": {
        2938  +
        "access_key_id": "AKIDEXAMPLE",
        2939  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2940  +
    },
        2941  +
    "expiration_in_seconds": 3600,
        2942  +
    "normalize": true,
        2943  +
    "region": "us-east-1",
        2944  +
    "service": "service",
        2945  +
    "sign_body": false,
        2946  +
    "timestamp": "2015-08-30T12:36:00Z"
        2947  +
}
              \
 No newline at end of file
 2531   2948   
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
 2532   2949   
similarity index 100%
 2533   2950   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2534   2951   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2535   2952   
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
 2536   2953   
new file mode 100644
 2537   2954   
index 0000000..bb3809c
 2538         -
-- /dev/null
        2955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2539   2956   
@@ -0,0 +1 @@
        2957  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2540   2958   
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
 2541   2959   
new file mode 100644
 2542   2960   
index 0000000..10f6761
 2543         -
-- /dev/null
        2961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2544   2962   
@@ -0,0 +1,6 @@
        2963  +
POST / HTTP/1.1
        2964  +
Host:example.amazonaws.com
        2965  +
My-Header1:VALUE1
        2966  +
X-Amz-Date:20150830T123600Z
        2967  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        2968  +
 2545   2969   
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
 2546   2970   
similarity index 100%
 2547   2971   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2548   2972   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2549   2973   
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
 2550   2974   
new file mode 100644
 2551   2975   
index 0000000..f84856f
 2552         -
-- /dev/null
        2976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2553   2977   
@@ -0,0 +1,8 @@
        2978  +
POST
        2979  +
/
        2980  +
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
        2981  +
host:example.amazonaws.com
        2982  +
my-header1:VALUE1
        2983  +
        2984  +
host;my-header1
        2985  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2554   2986   
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
 2555   2987   
new file mode 100644
 2556   2988   
index 0000000..a9d3cac
 2557         -
-- /dev/null
        2989  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2558   2990   
@@ -0,0 +1 @@
        2991  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2559   2992   
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
 2560   2993   
new file mode 100644
 2561   2994   
index 0000000..cf96c7c
 2562         -
-- /dev/null
        2995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2563   2996   
@@ -0,0 +1,4 @@
        2997  +
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
        2998  +
Host:example.amazonaws.com
        2999  +
My-Header1:VALUE1
        3000  +
 2564   3001   
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
 2565   3002   
new file mode 100644
 2566   3003   
index 0000000..47ef566
 2567         -
-- /dev/null
        3004  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2568   3005   
@@ -0,0 +1,4 @@
        3006  +
AWS4-HMAC-SHA256
        3007  +
20150830T123600Z
        3008  +
20150830/us-east-1/service/aws4_request
        3009  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2569   3010   
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
 2570   3011   
similarity index 100%
 2571   3012   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2572   3013   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2573   3014   
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
 2574   3015   
similarity index 100%
 2575   3016   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2576   3017   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2577   3018   
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
 2578   3019   
similarity index 100%
 2579   3020   
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
 2580   3021   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2581   3022   
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
 2582   3023   
new file mode 100644
 2583   3024   
index 0000000..629487f
 2584         -
-- /dev/null
        3025  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2585   3026   
@@ -0,0 +1 @@
        3027  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2586   3028   
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
 2587   3029   
similarity index 67%
 2588   3030   
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
 2589   3031   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2590   3032   
index 291ed07..f96ff9e 100644
 2591         -
-- 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
        3033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2592   3034   
@@ -1,5 +1,6 @@
 2593   3035   
POST / HTTP/1.1
 2594   3036   
Host:example.amazonaws.com
 2595         -
X-Amz-Date:20150830T123600Z
 2596   3037   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2597         -
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
        3038  +
X-Amz-Date:20150830T123600Z
        3039  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3040  +
 2598   3041   
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
 2599   3042   
similarity index 100%
 2600   3043   
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
 2601   3044   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2602   3045   
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
 2603   3046   
new file mode 100644
 2604   3047   
index 0000000..d3341e7
 2605         -
-- /dev/null
        3048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2606   3049   
@@ -0,0 +1,7 @@
        3050  +
POST
        3051  +
/
        3052  +
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
        3053  +
host:example.amazonaws.com
        3054  +
        3055  +
host
        3056  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2607   3057   
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
 2608   3058   
new file mode 100644
 2609   3059   
index 0000000..79f7e0d
 2610         -
-- /dev/null
        3060  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2611   3061   
@@ -0,0 +1 @@
        3062  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2612   3063   
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
 2613   3064   
new file mode 100644
 2614   3065   
index 0000000..4983268
 2615         -
-- /dev/null
        3066  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2616   3067   
@@ -0,0 +1,3 @@
        3068  +
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
        3069  +
Host:example.amazonaws.com
        3070  +
 2617   3071   
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
 2618   3072   
new file mode 100644
 2619   3073   
index 0000000..e8f335b
 2620         -
-- /dev/null
        3074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2621   3075   
@@ -0,0 +1,4 @@
        3076  +
AWS4-HMAC-SHA256
        3077  +
20150830T123600Z
        3078  +
20150830/us-east-1/service/aws4_request
        3079  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2622   3080   
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
 2623   3081   
similarity index 100%
 2624   3082   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2625   3083   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2626   3084   
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
 2627   3085   
similarity index 100%
 2628   3086   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2629   3087   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2630   3088   
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
 2631   3089   
similarity index 100%
 2632   3090   
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
 2633   3091   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2634   3092   
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
 2635   3093   
new file mode 100644
 2636   3094   
index 0000000..85a7c29
 2637         -
-- /dev/null
        3095  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2638   3096   
@@ -0,0 +1 @@
        3097  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2639   3098   
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
 2640   3099   
similarity index 65%
 2641   3100   
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
 2642   3101   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2643   3102   
index 37b2f04..4d0b143 100644
 2644         -
-- 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
        3103  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2645   3104   
@@ -1,5 +1,6 @@
 2646   3105   
POST / HTTP/1.1
 2647   3106   
Host:example.amazonaws.com
 2648         -
X-Amz-Date:20150830T123600Z
 2649   3107   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2650         -
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
        3108  +
X-Amz-Date:20150830T123600Z
        3109  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3110  +
 2651   3111   
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
 2652   3112   
similarity index 100%
 2653   3113   
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
 2654   3114   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2655   3115   
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
 2656   3116   
new file mode 100644
 2657   3117   
index 0000000..57a7bc3
 2658         -
-- /dev/null
        3118  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2659   3119   
@@ -0,0 +1,7 @@
        3120  +
POST
        3121  +
/
        3122  +
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
        3123  +
host:example.amazonaws.com
        3124  +
        3125  +
host
        3126  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2660   3127   
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
 2661   3128   
new file mode 100644
 2662   3129   
index 0000000..eb905d2
 2663         -
-- /dev/null
        3130  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2664   3131   
@@ -0,0 +1 @@
        3132  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2665   3133   
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
 2666   3134   
new file mode 100644
 2667   3135   
index 0000000..1d80ec0
 2668         -
-- /dev/null
        3136  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2669   3137   
@@ -0,0 +1,3 @@
        3138  +
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
        3139  +
Host:example.amazonaws.com
        3140  +
 2670   3141   
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
 2671   3142   
new file mode 100644
 2672   3143   
index 0000000..bd0239a
 2673         -
-- /dev/null
        3144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2674   3145   
@@ -0,0 +1,4 @@
        3146  +
AWS4-HMAC-SHA256
        3147  +
20150830T123600Z
        3148  +
20150830/us-east-1/service/aws4_request
        3149  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2675   3150   
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
 2676   3151   
similarity index 100%
 2677   3152   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2678   3153   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2679   3154   
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
 2680   3155   
new file mode 100644
 2681   3156   
index 0000000..0468d80
 2682         -
-- /dev/null
        3157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2683   3158   
@@ -0,0 +1,12 @@
        3159  +
{
        3160  +
    "credentials": {
        3161  +
        "access_key_id": "AKIDEXAMPLE",
        3162  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3163  +
    },
        3164  +
    "expiration_in_seconds": 3600,
        3165  +
    "normalize": true,
        3166  +
    "region": "us-east-1",
        3167  +
    "service": "service",
        3168  +
    "sign_body": false,
        3169  +
    "timestamp": "2015-08-30T12:36:00Z"
        3170  +
}
              \
 No newline at end of file
 2684   3171   
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
 2685   3172   
similarity index 100%
 2686   3173   
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
 2687   3174   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2688   3175   
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
 2689   3176   
new file mode 100644
 2690   3177   
index 0000000..80ed433
 2691         -
-- /dev/null
        3178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2692   3179   
@@ -0,0 +1 @@
        3180  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2693   3181   
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
 2694   3182   
new file mode 100644
 2695   3183   
index 0000000..4e614f8
 2696         -
-- /dev/null
        3184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2697   3185   
@@ -0,0 +1,5 @@
        3186  +
POST /?Param1=value1 HTTP/1.1
        3187  +
Host:example.amazonaws.com
        3188  +
X-Amz-Date:20150830T123600Z
        3189  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3190  +
 2698   3191   
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
 2699   3192   
similarity index 100%
 2700   3193   
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
 2701   3194   
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
 2702   3195   
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
 2703   3196   
new file mode 100644
 2704   3197   
index 0000000..be66403
 2705         -
-- /dev/null
        3198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2706   3199   
@@ -0,0 +1,7 @@
        3200  +
POST
        3201  +
/
        3202  +
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
        3203  +
host:example.amazonaws.com
        3204  +
        3205  +
host
        3206  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2707   3207   
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
 2708   3208   
new file mode 100644
 2709   3209   
index 0000000..20fd32b
 2710         -
-- /dev/null
        3210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2711   3211   
@@ -0,0 +1 @@
        3212  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2712   3213   
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
 2713   3214   
new file mode 100644
 2714   3215   
index 0000000..d1148d0
 2715         -
-- /dev/null
        3216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2716   3217   
@@ -0,0 +1,3 @@
        3218  +
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
        3219  +
Host:example.amazonaws.com
        3220  +
 2717   3221   
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
 2718   3222   
new file mode 100644
 2719   3223   
index 0000000..1a77103
 2720         -
-- /dev/null
        3224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2721   3225   
@@ -0,0 +1,4 @@
        3226  +
AWS4-HMAC-SHA256
        3227  +
20150830T123600Z
        3228  +
20150830/us-east-1/service/aws4_request
        3229  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2722   3230   
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
 2723   3231   
similarity index 100%
 2724   3232   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2725   3233   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2726   3234   
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
 2727   3235   
new file mode 100644
 2728   3236   
index 0000000..0468d80
 2729         -
-- /dev/null
        3237  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2730   3238   
@@ -0,0 +1,12 @@
        3239  +
{
        3240  +
    "credentials": {
        3241  +
        "access_key_id": "AKIDEXAMPLE",
        3242  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3243  +
    },
        3244  +
    "expiration_in_seconds": 3600,
        3245  +
    "normalize": true,
        3246  +
    "region": "us-east-1",
        3247  +
    "service": "service",
        3248  +
    "sign_body": false,
        3249  +
    "timestamp": "2015-08-30T12:36:00Z"
        3250  +
}
              \
 No newline at end of file
 2731   3251   
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
 2732   3252   
similarity index 100%
 2733   3253   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2734   3254   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2735   3255   
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
 2736   3256   
new file mode 100644
 2737   3257   
index 0000000..80ed433
 2738         -
-- /dev/null
        3258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2739   3259   
@@ -0,0 +1 @@
        3260  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2740   3261   
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
 2741   3262   
new file mode 100644
 2742   3263   
index 0000000..4e614f8
 2743         -
-- /dev/null
        3264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2744   3265   
@@ -0,0 +1,5 @@
        3266  +
POST /?Param1=value1 HTTP/1.1
        3267  +
Host:example.amazonaws.com
        3268  +
X-Amz-Date:20150830T123600Z
        3269  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3270  +
 2745   3271   
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
 2746   3272   
similarity index 100%
 2747   3273   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2748   3274   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2749   3275   
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
 2750   3276   
new file mode 100644
 2751   3277   
index 0000000..be66403
 2752         -
-- /dev/null
        3278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2753   3279   
@@ -0,0 +1,7 @@
        3280  +
POST
        3281  +
/
        3282  +
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
        3283  +
host:example.amazonaws.com
        3284  +
        3285  +
host
        3286  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2754   3287   
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
 2755   3288   
new file mode 100644
 2756   3289   
index 0000000..20fd32b
 2757         -
-- /dev/null
        3290  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2758   3291   
@@ -0,0 +1 @@
        3292  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2759   3293   
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
 2760   3294   
new file mode 100644
 2761   3295   
index 0000000..d1148d0
 2762         -
-- /dev/null
        3296  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2763   3297   
@@ -0,0 +1,3 @@
        3298  +
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
        3299  +
Host:example.amazonaws.com
        3300  +
 2764   3301   
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
 2765   3302   
new file mode 100644
 2766   3303   
index 0000000..1a77103
 2767         -
-- /dev/null
        3304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2768   3305   
@@ -0,0 +1,4 @@
        3306  +
AWS4-HMAC-SHA256
        3307  +
20150830T123600Z
        3308  +
20150830/us-east-1/service/aws4_request
        3309  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2769   3310   
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
 2770   3311   
similarity index 100%
 2771   3312   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2772   3313   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2773   3314   
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
 2774   3315   
new file mode 100644
 2775   3316   
index 0000000..0468d80
 2776         -
-- /dev/null
        3317  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2777   3318   
@@ -0,0 +1,12 @@
        3319  +
{
        3320  +
    "credentials": {
        3321  +
        "access_key_id": "AKIDEXAMPLE",
        3322  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3323  +
    },
        3324  +
    "expiration_in_seconds": 3600,
        3325  +
    "normalize": true,
        3326  +
    "region": "us-east-1",
        3327  +
    "service": "service",
        3328  +
    "sign_body": false,
        3329  +
    "timestamp": "2015-08-30T12:36:00Z"
        3330  +
}
              \
 No newline at end of file
 2778   3331   
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
 2779   3332   
similarity index 100%
 2780   3333   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2781   3334   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2782   3335   
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
 2783   3336   
new file mode 100644
 2784   3337   
index 0000000..629487f
 2785         -
-- /dev/null
        3338  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2786   3339   
@@ -0,0 +1 @@
        3340  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2787   3341   
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
 2788   3342   
new file mode 100644
 2789   3343   
index 0000000..0d99b1c
 2790         -
-- /dev/null
        3344  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2791   3345   
@@ -0,0 +1,5 @@
        3346  +
POST / HTTP/1.1
        3347  +
Host:example.amazonaws.com
        3348  +
X-Amz-Date:20150830T123600Z
        3349  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3350  +
 2792   3351   
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
 2793   3352   
similarity index 100%
 2794   3353   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 2795   3354   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 2796   3355   
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
 2797   3356   
new file mode 100644
 2798   3357   
index 0000000..d3341e7
 2799         -
-- /dev/null
        3358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 2800   3359   
@@ -0,0 +1,7 @@
        3360  +
POST
        3361  +
/
        3362  +
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
        3363  +
host:example.amazonaws.com
        3364  +
        3365  +
host
        3366  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2801   3367   
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
 2802   3368   
new file mode 100644
 2803   3369   
index 0000000..79f7e0d
 2804         -
-- /dev/null
        3370  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 2805   3371   
@@ -0,0 +1 @@
        3372  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2806   3373   
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
 2807   3374   
new file mode 100644
 2808   3375   
index 0000000..94f1b21
 2809         -
-- /dev/null
        3376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 2810   3377   
@@ -0,0 +1,3 @@
        3378  +
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
        3379  +
Host:example.amazonaws.com
        3380  +
 2811   3381   
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
 2812   3382   
new file mode 100644
 2813   3383   
index 0000000..e8f335b
 2814         -
-- /dev/null
        3384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 2815   3385   
@@ -0,0 +1,4 @@
        3386  +
AWS4-HMAC-SHA256
        3387  +
20150830T123600Z
        3388  +
20150830/us-east-1/service/aws4_request
        3389  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2816   3390   
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
 2817   3391   
similarity index 100%
 2818   3392   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 2819   3393   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 2820   3394   
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
 2821   3395   
similarity index 99%
 2822   3396   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 2823   3397   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2824   3398   
index fc4bce6..0db1df1 100644
 2825         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
        3399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2826   3400   
@@ -1,12 +1,12 @@
 2827   3401   
{
 2828   3402   
    "credentials": {
 2829   3403   
        "access_key_id": "AKIDEXAMPLE",
 2830   3404   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 2831   3405   
    },
 2832   3406   
    "expiration_in_seconds": 3600,
 2833   3407   
    "normalize": true,
 2834   3408   
    "region": "us-east-1",
 2835   3409   
    "service": "service",
 2836   3410   
    "sign_body": true,
 2837   3411   
    "timestamp": "2015-08-30T12:36:00Z"
 2838         -
}
        3412  +
}
              \
 No newline at end of file
 2839   3413   
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
 2840   3414   
new file mode 100644
 2841   3415   
index 0000000..c218fdf
 2842         -
-- /dev/null
        3416  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 2843   3417   
@@ -0,0 +1,11 @@
        3418  +
POST
        3419  +
/
        3420  +
        3421  +
content-length:13
        3422  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3423  +
host:example.amazonaws.com
        3424  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3425  +
x-amz-date:20150830T123600Z
        3426  +
        3427  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3428  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2844   3429   
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
 2845   3430   
new file mode 100644
 2846   3431   
index 0000000..836aa8b
 2847         -
-- /dev/null
        3432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 2848   3433   
@@ -0,0 +1 @@
        3434  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 2849   3435   
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
 2850   3436   
new file mode 100644
 2851   3437   
index 0000000..9262d53
 2852         -
-- /dev/null
        3438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 2853   3439   
@@ -0,0 +1,9 @@
        3440  +
POST / HTTP/1.1
        3441  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3442  +
Host:example.amazonaws.com
        3443  +
Content-Length:13
        3444  +
X-Amz-Date:20150830T123600Z
        3445  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3446  +
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
        3447  +
        3448  +
Param1=value1
              \
 No newline at end of file
 2854   3449   
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
 2855   3450   
new file mode 100644
 2856   3451   
index 0000000..ddbdccc
 2857         -
-- /dev/null
        3452  +
++ 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
 2858   3453   
@@ -0,0 +1,4 @@
        3454  +
AWS4-HMAC-SHA256
        3455  +
20150830T123600Z
        3456  +
20150830/us-east-1/service/aws4_request
        3457  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 2859   3458   
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
 2860   3459   
new file mode 100644
 2861   3460   
index 0000000..596a579
 2862         -
-- /dev/null
        3461  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 2863   3462   
@@ -0,0 +1,9 @@
        3463  +
POST
        3464  +
/
        3465  +
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
        3466  +
content-length:13
        3467  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3468  +
host:example.amazonaws.com
        3469  +
        3470  +
content-length;content-type;host
        3471  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2864   3472   
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
 2865   3473   
new file mode 100644
 2866   3474   
index 0000000..bc85cd8
 2867         -
-- /dev/null
        3475  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 2868   3476   
@@ -0,0 +1 @@
        3477  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 2869   3478   
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
 2870   3479   
new file mode 100644
 2871   3480   
index 0000000..16b59e5
 2872         -
-- /dev/null
        3481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 2873   3482   
@@ -0,0 +1,6 @@
        3483  +
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
        3484  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3485  +
Host:example.amazonaws.com
        3486  +
Content-Length:13
        3487  +
        3488  +
Param1=value1
              \
 No newline at end of file
 2874   3489   
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
 2875   3490   
new file mode 100644
 2876   3491   
index 0000000..50074af
 2877         -
-- /dev/null
        3492  +
++ 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
 2878   3493   
@@ -0,0 +1,4 @@
        3494  +
AWS4-HMAC-SHA256
        3495  +
20150830T123600Z
        3496  +
20150830/us-east-1/service/aws4_request
        3497  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 2879   3498   
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
 2880   3499   
similarity index 89%
 2881   3500   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 2882   3501   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2883   3502   
index b711c25..8289eaa 100644
 2884         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
        3503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2885   3504   
@@ -1,6 +1,6 @@
 2886   3505   
POST / HTTP/1.1
 2887   3506   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 2888   3507   
Host:example.amazonaws.com
 2889   3508   
Content-Length:13
 2890   3509   
 2891         -
Param1=value1
        3510  +
Param1=value1
              \
 No newline at end of file
 2892   3511   
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
 2893   3512   
similarity index 99%
 2894   3513   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 2895   3514   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 2896   3515   
index fc4bce6..0db1df1 100644
 2897         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
        3516  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 2898   3517   
@@ -1,12 +1,12 @@
 2899   3518   
{
 2900   3519   
    "credentials": {
 2901   3520   
        "access_key_id": "AKIDEXAMPLE",
 2902   3521   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 2903   3522   
    },
 2904   3523   
    "expiration_in_seconds": 3600,
 2905   3524   
    "normalize": true,
 2906   3525   
    "region": "us-east-1",
 2907   3526   
    "service": "service",
 2908   3527   
    "sign_body": true,
 2909   3528   
    "timestamp": "2015-08-30T12:36:00Z"
 2910         -
}
        3529  +
}
              \
 No newline at end of file
 2911   3530   
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
 2912   3531   
new file mode 100644
 2913   3532   
index 0000000..4d116a5
 2914         -
-- /dev/null
        3533  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 2915   3534   
@@ -0,0 +1,11 @@
        3535  +
POST
        3536  +
/
        3537  +
        3538  +
content-length:13
        3539  +
content-type:application/x-www-form-urlencoded
        3540  +
host:example.amazonaws.com
        3541  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3542  +
x-amz-date:20150830T123600Z
        3543  +
        3544  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3545  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2916   3546   
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
 2917   3547   
new file mode 100644
 2918   3548   
index 0000000..0d2ac37
 2919         -
-- /dev/null
        3549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 2920   3550   
@@ -0,0 +1 @@
        3551  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 2921   3552   
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
 2922   3553   
new file mode 100644
 2923   3554   
index 0000000..bd5e49c
 2924         -
-- /dev/null
        3555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 2925   3556   
@@ -0,0 +1,9 @@
        3557  +
POST / HTTP/1.1
        3558  +
Content-Type:application/x-www-form-urlencoded
        3559  +
Host:example.amazonaws.com
        3560  +
Content-Length:13
        3561  +
X-Amz-Date:20150830T123600Z
        3562  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3563  +
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
        3564  +
        3565  +
Param1=value1
              \
 No newline at end of file
 2926   3566   
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
 2927   3567   
new file mode 100644
 2928   3568   
index 0000000..f1c599c
 2929         -
-- /dev/null
        3569  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 2930   3570   
@@ -0,0 +1,4 @@
        3571  +
AWS4-HMAC-SHA256
        3572  +
20150830T123600Z
        3573  +
20150830/us-east-1/service/aws4_request
        3574  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 2931   3575   
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
 2932   3576   
new file mode 100644
 2933   3577   
index 0000000..1fc1bb7
 2934         -
-- /dev/null
        3578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 2935   3579   
@@ -0,0 +1,9 @@
        3580  +
POST
        3581  +
/
        3582  +
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
        3583  +
content-length:13
        3584  +
content-type:application/x-www-form-urlencoded
        3585  +
host:example.amazonaws.com
        3586  +
        3587  +
content-length;content-type;host
        3588  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2936   3589   
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
 2937   3590   
new file mode 100644
 2938   3591   
index 0000000..98c91b3
 2939         -
-- /dev/null
        3592  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 2940   3593   
@@ -0,0 +1 @@
        3594  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 2941   3595   
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
 2942   3596   
new file mode 100644
 2943   3597   
index 0000000..055cd7a
 2944         -
-- /dev/null
        3598  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 2945   3599   
@@ -0,0 +1,6 @@
        3600  +
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
        3601  +
Content-Type:application/x-www-form-urlencoded
        3602  +
Host:example.amazonaws.com
        3603  +
Content-Length:13
        3604  +
        3605  +
Param1=value1
              \
 No newline at end of file
 2946   3606   
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
 2947   3607   
new file mode 100644
 2948   3608   
index 0000000..db7fc27
 2949         -
-- /dev/null
        3609  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 2950   3610   
@@ -0,0 +1,4 @@
        3611  +
AWS4-HMAC-SHA256
        3612  +
20150830T123600Z
        3613  +
20150830/us-east-1/service/aws4_request
        3614  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 2951   3615   
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
 2952   3616   
similarity index 88%
 2953   3617   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 2954   3618   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 2955   3619   
index 0091102..760b2d3 100644
 2956         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
        3620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 2957   3621   
@@ -1,6 +1,6 @@
 2958   3622   
POST / HTTP/1.1
 2959   3623   
Content-Type:application/x-www-form-urlencoded
 2960   3624   
Host:example.amazonaws.com
 2961   3625   
Content-Length:13
 2962   3626   
 2963         -
Param1=value1
        3627  +
Param1=value1
              \
 No newline at end of file
 2964   3628   
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
 2965   3629   
new file mode 100644
 2966   3630   
index 0000000..0468d80
 2967         -
-- /dev/null
        3631  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 2968   3632   
@@ -0,0 +1,12 @@
        3633  +
{
        3634  +
    "credentials": {
        3635  +
        "access_key_id": "AKIDEXAMPLE",
        3636  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3637  +
    },
        3638  +
    "expiration_in_seconds": 3600,
        3639  +
    "normalize": true,
        3640  +
    "region": "us-east-1",
        3641  +
    "service": "service",
        3642  +
    "sign_body": false,
        3643  +
    "timestamp": "2015-08-30T12:36:00Z"
        3644  +
}
              \
 No newline at end of file
 2969   3645   
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
 2970   3646   
similarity index 99%
 2971   3647   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 2972   3648   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 2973   3649   
index ccb5f43..1bc448e 100644
 2974         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
        3650  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 2975   3651   
@@ -1,10 +1,10 @@
 2976   3652   
GET
 2977   3653   
/
 2978   3654   
 2979   3655   
host:example.amazonaws.com
 2980   3656   
my-header1:value2,value2,value1
 2981   3657   
x-amz-date:20150830T123600Z
 2982   3658   
x-amz-region-set:us-east-1
 2983   3659   
 2984   3660   
host;my-header1;x-amz-date;x-amz-region-set
 2985         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3661  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2986   3662   
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
 2987   3663   
new file mode 100644
 2988   3664   
index 0000000..489c182
 2989         -
-- /dev/null
        3665  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 2990   3666   
@@ -0,0 +1 @@
        3667  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 2991   3668   
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
 2992   3669   
new file mode 100644
 2993   3670   
index 0000000..e1b8dbf
 2994         -
-- /dev/null
        3671  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 2995   3672   
@@ -0,0 +1,9 @@
        3673  +
GET / HTTP/1.1
        3674  +
Host:example.amazonaws.com
        3675  +
My-Header1:value2
        3676  +
My-Header1:value2
        3677  +
My-Header1:value1
        3678  +
X-Amz-Date:20150830T123600Z
        3679  +
X-Amz-Region-Set:us-east-1
        3680  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3681  +
 2996   3682   
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
 2997   3683   
similarity index 99%
 2998   3684   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 2999   3685   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3000   3686   
index 8783461..bfc4619 100644
 3001         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
        3687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3002   3688   
@@ -1,4 +1,4 @@
 3003   3689   
AWS4-ECDSA-P256-SHA256
 3004   3690   
20150830T123600Z
 3005   3691   
20150830/service/aws4_request
 3006         -
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
        3692  +
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
              \
 No newline at end of file
 3007   3693   
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
 3008   3694   
new file mode 100644
 3009   3695   
index 0000000..379dcb2
 3010         -
-- /dev/null
        3696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3011   3697   
@@ -0,0 +1,4 @@
        3698  +
{
        3699  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3700  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3701  +
}
 3012   3702   
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
 3013   3703   
similarity index 99%
 3014   3704   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3015   3705   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3016   3706   
index 9561297..c05c3f5 100644
 3017         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
        3707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3018   3708   
@@ -1,8 +1,8 @@
 3019   3709   
GET
 3020   3710   
/
 3021   3711   
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
 3022   3712   
host:example.amazonaws.com
 3023   3713   
my-header1:value2,value2,value1
 3024   3714   
 3025   3715   
host;my-header1
 3026         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3716  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3027   3717   
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
 3028   3718   
new file mode 100644
 3029   3719   
index 0000000..de9a4c3
 3030         -
-- /dev/null
        3720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3031   3721   
@@ -0,0 +1 @@
        3722  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3032   3723   
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
 3033   3724   
new file mode 100644
 3034   3725   
index 0000000..6c6b8c4
 3035         -
-- /dev/null
        3726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3036   3727   
@@ -0,0 +1,6 @@
        3728  +
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
        3729  +
Host:example.amazonaws.com
        3730  +
My-Header1:value2
        3731  +
My-Header1:value2
        3732  +
My-Header1:value1
        3733  +
 3037   3734   
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
 3038   3735   
similarity index 99%
 3039   3736   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3040   3737   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3041   3738   
index 3140f6f..4eef106 100644
 3042         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
        3739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3043   3740   
@@ -1,4 +1,4 @@
 3044   3741   
AWS4-ECDSA-P256-SHA256
 3045   3742   
20150830T123600Z
 3046   3743   
20150830/service/aws4_request
 3047         -
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
        3744  +
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
              \
 No newline at end of file
 3048   3745   
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
 3049   3746   
similarity index 78%
 3050   3747   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3051   3748   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3052   3749   
index 08a0364..40455ce 100644
 3053         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3054   3751   
@@ -1,6 +1,5 @@
 3055   3752   
GET / HTTP/1.1
 3056   3753   
Host:example.amazonaws.com
 3057   3754   
My-Header1:value2
 3058   3755   
My-Header1:value2
 3059   3756   
My-Header1:value1
 3060         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3061   3757   
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
 3062   3758   
new file mode 100644
 3063   3759   
index 0000000..0468d80
 3064         -
-- /dev/null
        3760  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3065   3761   
@@ -0,0 +1,12 @@
        3762  +
{
        3763  +
    "credentials": {
        3764  +
        "access_key_id": "AKIDEXAMPLE",
        3765  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3766  +
    },
        3767  +
    "expiration_in_seconds": 3600,
        3768  +
    "normalize": true,
        3769  +
    "region": "us-east-1",
        3770  +
    "service": "service",
        3771  +
    "sign_body": false,
        3772  +
    "timestamp": "2015-08-30T12:36:00Z"
        3773  +
}
              \
 No newline at end of file
 3066   3774   
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
 3067   3775   
new file mode 100644
 3068   3776   
index 0000000..69526cd
 3069         -
-- /dev/null
        3777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3070   3778   
@@ -0,0 +1,10 @@
        3779  +
GET
        3780  +
/
        3781  +
        3782  +
host:example.amazonaws.com
        3783  +
my-header1:value1 value2 value3
        3784  +
x-amz-date:20150830T123600Z
        3785  +
x-amz-region-set:us-east-1
        3786  +
        3787  +
host;my-header1;x-amz-date;x-amz-region-set
        3788  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3071   3789   
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
 3072   3790   
new file mode 100644
 3073   3791   
index 0000000..d51b4f3
 3074         -
-- /dev/null
        3792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3075   3793   
@@ -0,0 +1 @@
        3794  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3076   3795   
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
 3077   3796   
new file mode 100644
 3078   3797   
index 0000000..8131420
 3079         -
-- /dev/null
        3798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3080   3799   
@@ -0,0 +1,9 @@
        3800  +
GET / HTTP/1.1
        3801  +
Host:example.amazonaws.com
        3802  +
My-Header1:value1
        3803  +
  value2
        3804  +
     value3
        3805  +
X-Amz-Date:20150830T123600Z
        3806  +
X-Amz-Region-Set:us-east-1
        3807  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3808  +
 3081   3809   
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
 3082   3810   
new file mode 100644
 3083   3811   
index 0000000..e4d99fa
 3084         -
-- /dev/null
        3812  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3085   3813   
@@ -0,0 +1,4 @@
        3814  +
AWS4-ECDSA-P256-SHA256
        3815  +
20150830T123600Z
        3816  +
20150830/service/aws4_request
        3817  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3086   3818   
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
 3087   3819   
new file mode 100644
 3088   3820   
index 0000000..379dcb2
 3089         -
-- /dev/null
        3821  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3090   3822   
@@ -0,0 +1,4 @@
        3823  +
{
        3824  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3825  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3826  +
}
 3091   3827   
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
 3092   3828   
new file mode 100644
 3093   3829   
index 0000000..3c4d52f
 3094         -
-- /dev/null
        3830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3095   3831   
@@ -0,0 +1,8 @@
        3832  +
GET
        3833  +
/
        3834  +
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
        3835  +
host:example.amazonaws.com
        3836  +
my-header1:value1 value2 value3
        3837  +
        3838  +
host;my-header1
        3839  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3096   3840   
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
 3097   3841   
new file mode 100644
 3098   3842   
index 0000000..4e63f9a
 3099         -
-- /dev/null
        3843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3100   3844   
@@ -0,0 +1 @@
        3845  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3101   3846   
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
 3102   3847   
new file mode 100644
 3103   3848   
index 0000000..adf1f09
 3104         -
-- /dev/null
        3849  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3105   3850   
@@ -0,0 +1,6 @@
        3851  +
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
        3852  +
Host:example.amazonaws.com
        3853  +
My-Header1:value1
        3854  +
  value2
        3855  +
     value3
        3856  +
 3106   3857   
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
 3107   3858   
new file mode 100644
 3108   3859   
index 0000000..e085407
 3109         -
-- /dev/null
        3860  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3110   3861   
@@ -0,0 +1,4 @@
        3862  +
AWS4-ECDSA-P256-SHA256
        3863  +
20150830T123600Z
        3864  +
20150830/service/aws4_request
        3865  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3111   3866   
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
 3112   3867   
new file mode 100644
 3113   3868   
index 0000000..b5026cd
 3114         -
-- /dev/null
        3869  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3115   3870   
@@ -0,0 +1,5 @@
        3871  +
GET / HTTP/1.1
        3872  +
Host:example.amazonaws.com
        3873  +
My-Header1:value1
        3874  +
  value2
        3875  +
     value3
 3116   3876   
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
 3117   3877   
new file mode 100644
 3118   3878   
index 0000000..0468d80
 3119         -
-- /dev/null
        3879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3120   3880   
@@ -0,0 +1,12 @@
        3881  +
{
        3882  +
    "credentials": {
        3883  +
        "access_key_id": "AKIDEXAMPLE",
        3884  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3885  +
    },
        3886  +
    "expiration_in_seconds": 3600,
        3887  +
    "normalize": true,
        3888  +
    "region": "us-east-1",
        3889  +
    "service": "service",
        3890  +
    "sign_body": false,
        3891  +
    "timestamp": "2015-08-30T12:36:00Z"
        3892  +
}
              \
 No newline at end of file
 3121   3893   
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
 3122   3894   
similarity index 99%
 3123   3895   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3124   3896   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3125   3897   
index 9375193..533afdb 100644
 3126         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
        3898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3127   3899   
@@ -1,10 +1,10 @@
 3128   3900   
GET
 3129   3901   
/
 3130   3902   
 3131   3903   
host:example.amazonaws.com
 3132   3904   
my-header1:value4,value1,value3,value2
 3133   3905   
x-amz-date:20150830T123600Z
 3134   3906   
x-amz-region-set:us-east-1
 3135   3907   
 3136   3908   
host;my-header1;x-amz-date;x-amz-region-set
 3137         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3909  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3138   3910   
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
 3139   3911   
new file mode 100644
 3140   3912   
index 0000000..057b426
 3141         -
-- /dev/null
        3913  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3142   3914   
@@ -0,0 +1 @@
        3915  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3143   3916   
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
 3144   3917   
new file mode 100644
 3145   3918   
index 0000000..4e4ccf0
 3146         -
-- /dev/null
        3919  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3147   3920   
@@ -0,0 +1,10 @@
        3921  +
GET / HTTP/1.1
        3922  +
Host:example.amazonaws.com
        3923  +
My-Header1:value4
        3924  +
My-Header1:value1
        3925  +
My-Header1:value3
        3926  +
My-Header1:value2
        3927  +
X-Amz-Date:20150830T123600Z
        3928  +
X-Amz-Region-Set:us-east-1
        3929  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        3930  +
 3148   3931   
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
 3149   3932   
similarity index 99%
 3150   3933   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3151   3934   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3152   3935   
index 6400baf..e68c952 100644
 3153         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
        3936  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3154   3937   
@@ -1,4 +1,4 @@
 3155   3938   
AWS4-ECDSA-P256-SHA256
 3156   3939   
20150830T123600Z
 3157   3940   
20150830/service/aws4_request
 3158         -
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
        3941  +
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
              \
 No newline at end of file
 3159   3942   
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
 3160   3943   
new file mode 100644
 3161   3944   
index 0000000..379dcb2
 3162         -
-- /dev/null
        3945  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3163   3946   
@@ -0,0 +1,4 @@
        3947  +
{
        3948  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3949  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3950  +
}
 3164   3951   
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
 3165   3952   
similarity index 99%
 3166   3953   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3167   3954   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3168   3955   
index ecf494a..68450fe 100644
 3169         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
        3956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3170   3957   
@@ -1,8 +1,8 @@
 3171   3958   
GET
 3172   3959   
/
 3173   3960   
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
 3174   3961   
host:example.amazonaws.com
 3175   3962   
my-header1:value4,value1,value3,value2
 3176   3963   
 3177   3964   
host;my-header1
 3178         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3965  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3179   3966   
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
 3180   3967   
new file mode 100644
 3181   3968   
index 0000000..9df2eb3
 3182         -
-- /dev/null
        3969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3183   3970   
@@ -0,0 +1 @@
        3971  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3184   3972   
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
 3185   3973   
new file mode 100644
 3186   3974   
index 0000000..62f8cb7
 3187         -
-- /dev/null
        3975  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3188   3976   
@@ -0,0 +1,7 @@
        3977  +
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
        3978  +
Host:example.amazonaws.com
        3979  +
My-Header1:value4
        3980  +
My-Header1:value1
        3981  +
My-Header1:value3
        3982  +
My-Header1:value2
        3983  +
 3189   3984   
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
 3190   3985   
similarity index 99%
 3191   3986   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3192   3987   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3193   3988   
index b584179..2bcf7b1 100644
 3194         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
        3989  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3195   3990   
@@ -1,4 +1,4 @@
 3196   3991   
AWS4-ECDSA-P256-SHA256
 3197   3992   
20150830T123600Z
 3198   3993   
20150830/service/aws4_request
 3199         -
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
        3994  +
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
              \
 No newline at end of file
 3200   3995   
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
 3201   3996   
similarity index 80%
 3202   3997   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3203   3998   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3204   3999   
index f7bd9e6..2c6f49d 100644
 3205         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        4000  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3206   4001   
@@ -1,7 +1,6 @@
 3207   4002   
GET / HTTP/1.1
 3208   4003   
Host:example.amazonaws.com
 3209   4004   
My-Header1:value4
 3210   4005   
My-Header1:value1
 3211   4006   
My-Header1:value3
 3212   4007   
My-Header1:value2
 3213         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3214   4008   
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
 3215   4009   
new file mode 100644
 3216   4010   
index 0000000..0468d80
 3217         -
-- /dev/null
        4011  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3218   4012   
@@ -0,0 +1,12 @@
        4013  +
{
        4014  +
    "credentials": {
        4015  +
        "access_key_id": "AKIDEXAMPLE",
        4016  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4017  +
    },
        4018  +
    "expiration_in_seconds": 3600,
        4019  +
    "normalize": true,
        4020  +
    "region": "us-east-1",
        4021  +
    "service": "service",
        4022  +
    "sign_body": false,
        4023  +
    "timestamp": "2015-08-30T12:36:00Z"
        4024  +
}
              \
 No newline at end of file
 3219   4025   
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
 3220   4026   
similarity index 99%
 3221   4027   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3222   4028   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3223   4029   
index e91e952..94b6be5 100644
 3224         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
        4030  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3225   4031   
@@ -1,11 +1,11 @@
 3226   4032   
GET
 3227   4033   
/
 3228   4034   
 3229   4035   
host:example.amazonaws.com
 3230   4036   
my-header1:value1
 3231   4037   
my-header2:"a b c"
 3232   4038   
x-amz-date:20150830T123600Z
 3233   4039   
x-amz-region-set:us-east-1
 3234   4040   
 3235   4041   
host;my-header1;my-header2;x-amz-date;x-amz-region-set
 3236         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4042  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3237   4043   
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
 3238   4044   
new file mode 100644
 3239   4045   
index 0000000..bf8c3cb
 3240         -
-- /dev/null
        4046  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3241   4047   
@@ -0,0 +1 @@
        4048  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3242   4049   
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
 3243   4050   
new file mode 100644
 3244   4051   
index 0000000..f7f054d
 3245         -
-- /dev/null
        4052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3246   4053   
@@ -0,0 +1,8 @@
        4054  +
GET / HTTP/1.1
        4055  +
Host:example.amazonaws.com
        4056  +
My-Header1: value1
        4057  +
My-Header2: "a   b   c"
        4058  +
X-Amz-Date:20150830T123600Z
        4059  +
X-Amz-Region-Set:us-east-1
        4060  +
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
        4061  +
 3247   4062   
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
 3248   4063   
similarity index 99%
 3249   4064   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3250   4065   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3251   4066   
index 0e407d8..a2c9c05 100644
 3252         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
        4067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3253   4068   
@@ -1,4 +1,4 @@
 3254   4069   
AWS4-ECDSA-P256-SHA256
 3255   4070   
20150830T123600Z
 3256   4071   
20150830/service/aws4_request
 3257         -
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
        4072  +
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
              \
 No newline at end of file
 3258   4073   
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
 3259   4074   
new file mode 100644
 3260   4075   
index 0000000..379dcb2
 3261         -
-- /dev/null
        4076  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3262   4077   
@@ -0,0 +1,4 @@
        4078  +
{
        4079  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4080  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4081  +
}
 3263   4082   
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
 3264   4083   
similarity index 99%
 3265   4084   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3266   4085   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3267   4086   
index 8a3b042..3a51150 100644
 3268         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
        4087  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3269   4088   
@@ -1,9 +1,9 @@
 3270   4089   
GET
 3271   4090   
/
 3272   4091   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host%3Bmy-header1%3Bmy-header2
 3273   4092   
host:example.amazonaws.com
 3274   4093   
my-header1:value1
 3275   4094   
my-header2:"a b c"
 3276   4095   
 3277   4096   
host;my-header1;my-header2
 3278         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4097  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3279   4098   
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
 3280   4099   
new file mode 100644
 3281   4100   
index 0000000..0033053
 3282         -
-- /dev/null
        4101  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3283   4102   
@@ -0,0 +1 @@
        4103  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3284   4104   
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
 3285   4105   
new file mode 100644
 3286   4106   
index 0000000..1537888
 3287         -
-- /dev/null
        4107  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3288   4108   
@@ -0,0 +1,5 @@
        4109  +
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
        4110  +
Host:example.amazonaws.com
        4111  +
My-Header1: value1
        4112  +
My-Header2: "a   b   c"
        4113  +
 3289   4114   
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
 3290   4115   
similarity index 99%
 3291   4116   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3292   4117   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3293   4118   
index 5eead25..633dc1f 100644
 3294         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
        4119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3295   4120   
@@ -1,4 +1,4 @@
 3296   4121   
AWS4-ECDSA-P256-SHA256
 3297   4122   
20150830T123600Z
 3298   4123   
20150830/service/aws4_request
 3299         -
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
        4124  +
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
              \
 No newline at end of file
 3300   4125   
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
 3301   4126   
similarity index 75%
 3302   4127   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3303   4128   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3304   4129   
index 901f36c..ad1ea98 100644
 3305         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4130  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3306   4131   
@@ -1,5 +1,4 @@
 3307   4132   
GET / HTTP/1.1
 3308   4133   
Host:example.amazonaws.com
 3309   4134   
My-Header1: value1
 3310   4135   
My-Header2: "a   b   c"
 3311         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3312   4136   
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
 3313   4137   
new file mode 100644
 3314   4138   
index 0000000..0468d80
 3315         -
-- /dev/null
        4139  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3316   4140   
@@ -0,0 +1,12 @@
        4141  +
{
        4142  +
    "credentials": {
        4143  +
        "access_key_id": "AKIDEXAMPLE",
        4144  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4145  +
    },
        4146  +
    "expiration_in_seconds": 3600,
        4147  +
    "normalize": true,
        4148  +
    "region": "us-east-1",
        4149  +
    "service": "service",
        4150  +
    "sign_body": false,
        4151  +
    "timestamp": "2015-08-30T12:36:00Z"
        4152  +
}
              \
 No newline at end of file
 3317   4153   
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
 3318   4154   
similarity index 99%
 3319   4155   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3320   4156   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3321   4157   
index 47e7128..76db73d 100644
 3322         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
        4158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3323   4159   
@@ -1,9 +1,9 @@
 3324   4160   
GET
 3325   4161   
/
 3326   4162   
 3327   4163   
host:example.amazonaws.com
 3328   4164   
x-amz-date:20150830T123600Z
 3329   4165   
x-amz-region-set:us-east-1
 3330   4166   
 3331   4167   
host;x-amz-date;x-amz-region-set
 3332         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4168  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3333   4169   
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
 3334   4170   
new file mode 100644
 3335   4171   
index 0000000..cbd6ae2
 3336         -
-- /dev/null
        4172  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3337   4173   
@@ -0,0 +1 @@
        4174  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3338   4175   
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
 3339   4176   
new file mode 100644
 3340   4177   
index 0000000..a343fcf
 3341         -
-- /dev/null
        4178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3342   4179   
@@ -0,0 +1,6 @@
        4180  +
GET /example/.. HTTP/1.1
        4181  +
Host:example.amazonaws.com
        4182  +
X-Amz-Date:20150830T123600Z
        4183  +
X-Amz-Region-Set:us-east-1
        4184  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4185  +
 3343   4186   
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
 3344   4187   
similarity index 99%
 3345   4188   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3346   4189   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3347   4190   
index 95d7219..600f1d8 100644
 3348         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
        4191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3349   4192   
@@ -1,4 +1,4 @@
 3350   4193   
AWS4-ECDSA-P256-SHA256
 3351   4194   
20150830T123600Z
 3352   4195   
20150830/service/aws4_request
 3353         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4196  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3354   4197   
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
 3355   4198   
new file mode 100644
 3356   4199   
index 0000000..379dcb2
 3357         -
-- /dev/null
        4200  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3358   4201   
@@ -0,0 +1,4 @@
        4202  +
{
        4203  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4204  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4205  +
}
 3359   4206   
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
 3360   4207   
similarity index 99%
 3361   4208   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3362   4209   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3363   4210   
index a34ea26..779c51c 100644
 3364         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
        4211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3365   4212   
@@ -1,7 +1,7 @@
 3366   4213   
GET
 3367   4214   
/
 3368   4215   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 3369   4216   
host:example.amazonaws.com
 3370   4217   
 3371   4218   
host
 3372         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4219  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3373   4220   
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
 3374   4221   
new file mode 100644
 3375   4222   
index 0000000..3cc88e6
 3376         -
-- /dev/null
        4223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3377   4224   
@@ -0,0 +1 @@
        4225  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3378   4226   
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
 3379   4227   
new file mode 100644
 3380   4228   
index 0000000..f68dde8
 3381         -
-- /dev/null
        4229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3382   4230   
@@ -0,0 +1,3 @@
        4231  +
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
        4232  +
Host:example.amazonaws.com
        4233  +
 3383   4234   
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
 3384   4235   
similarity index 99%
 3385   4236   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3386   4237   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3387   4238   
index 48f855c..6e29a7e 100644
 3388         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
        4239  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3389   4240   
@@ -1,4 +1,4 @@
 3390   4241   
AWS4-ECDSA-P256-SHA256
 3391   4242   
20150830T123600Z
 3392   4243   
20150830/service/aws4_request
 3393         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4244  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3394   4245   
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
 3395   4246   
similarity index 65%
 3396   4247   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3397   4248   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3398   4249   
index 9d6d7ca..6aa9f99 100644
 3399         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3400   4251   
@@ -1,3 +1,2 @@
 3401   4252   
GET /example/.. HTTP/1.1
 3402   4253   
Host:example.amazonaws.com
 3403         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3404   4254   
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
 3405   4255   
new file mode 100644
 3406   4256   
index 0000000..0468d80
 3407         -
-- /dev/null
        4257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3408   4258   
@@ -0,0 +1,12 @@
        4259  +
{
        4260  +
    "credentials": {
        4261  +
        "access_key_id": "AKIDEXAMPLE",
        4262  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4263  +
    },
        4264  +
    "expiration_in_seconds": 3600,
        4265  +
    "normalize": true,
        4266  +
    "region": "us-east-1",
        4267  +
    "service": "service",
        4268  +
    "sign_body": false,
        4269  +
    "timestamp": "2015-08-30T12:36:00Z"
        4270  +
}
              \
 No newline at end of file
 3409   4271   
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
 3410   4272   
similarity index 99%
 3411   4273   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3412   4274   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3413   4275   
index 47e7128..76db73d 100644
 3414         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
        4276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3415   4277   
@@ -1,9 +1,9 @@
 3416   4278   
GET
 3417   4279   
/
 3418   4280   
 3419   4281   
host:example.amazonaws.com
 3420   4282   
x-amz-date:20150830T123600Z
 3421   4283   
x-amz-region-set:us-east-1
 3422   4284   
 3423   4285   
host;x-amz-date;x-amz-region-set
 3424         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4286  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3425   4287   
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
 3426   4288   
new file mode 100644
 3427   4289   
index 0000000..f7a7ebe
 3428         -
-- /dev/null
        4290  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3429   4291   
@@ -0,0 +1 @@
        4292  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3430   4293   
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
 3431   4294   
new file mode 100644
 3432   4295   
index 0000000..9d2c50d
 3433         -
-- /dev/null
        4296  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3434   4297   
@@ -0,0 +1,6 @@
        4298  +
GET /example1/example2/../.. HTTP/1.1
        4299  +
Host:example.amazonaws.com
        4300  +
X-Amz-Date:20150830T123600Z
        4301  +
X-Amz-Region-Set:us-east-1
        4302  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4303  +
 3435   4304   
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
 3436   4305   
similarity index 99%
 3437   4306   
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
 3438   4307   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3439   4308   
index 95d7219..600f1d8 100644
 3440         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-string-to-sign.txt
        4309  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3441   4310   
@@ -1,4 +1,4 @@
 3442   4311   
AWS4-ECDSA-P256-SHA256
 3443   4312   
20150830T123600Z
 3444   4313   
20150830/service/aws4_request
 3445         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4314  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3446   4315   
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
 3447   4316   
new file mode 100644
 3448   4317   
index 0000000..379dcb2
 3449         -
-- /dev/null
        4318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3450   4319   
@@ -0,0 +1,4 @@
        4320  +
{
        4321  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4322  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4323  +
}
 3451   4324   
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
 3452   4325   
similarity index 99%
 3453   4326   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3454   4327   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3455   4328   
index a34ea26..779c51c 100644
 3456         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
        4329  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3457   4330   
@@ -1,7 +1,7 @@
 3458   4331   
GET
 3459   4332   
/
 3460   4333   
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
 3461   4334   
host:example.amazonaws.com
 3462   4335   
 3463   4336   
host
 3464         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4337  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3465   4338   
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
 3466   4339   
new file mode 100644
 3467   4340   
index 0000000..45ef286
 3468         -
-- /dev/null
        4341  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3469   4342   
@@ -0,0 +1 @@
        4343  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3470   4344   
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
 3471   4345   
new file mode 100644
 3472   4346   
index 0000000..0d16f66
 3473         -
-- /dev/null
        4347  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3474   4348   
@@ -0,0 +1,3 @@
        4349  +
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
        4350  +
Host:example.amazonaws.com
        4351  +
 3475   4352   
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
 3476   4353   
similarity index 99%
 3477   4354   
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
 3478   4355   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3479   4356   
index 48f855c..6e29a7e 100644
 3480         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-string-to-sign.txt
        4357  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3481   4358   
@@ -1,4 +1,4 @@
 3482   4359   
AWS4-ECDSA-P256-SHA256
 3483   4360   
20150830T123600Z
 3484   4361   
20150830/service/aws4_request
 3485         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4362  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3486   4363   
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
 3487   4364   
similarity index 70%
 3488   4365   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3489   4366   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3490   4367   
index cfd4e8b..a856c10 100644
 3491         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3492   4369   
@@ -1,3 +1,2 @@
 3493   4370   
GET /example1/example2/../.. HTTP/1.1
 3494   4371   
Host:example.amazonaws.com
 3495         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3496   4372   
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
 3497   4373   
new file mode 100644
 3498   4374   
index 0000000..7bee5c7
 3499         -
-- /dev/null
        4375  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3500   4376   
@@ -0,0 +1,12 @@
        4377  +
{
        4378  +
    "credentials": {
        4379  +
        "access_key_id": "AKIDEXAMPLE",
        4380  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4381  +
    },
        4382  +
    "expiration_in_seconds": 3600,
        4383  +
    "normalize": false,
        4384  +
    "region": "us-east-1",
        4385  +
    "service": "service",
        4386  +
    "sign_body": false,
        4387  +
    "timestamp": "2015-08-30T12:36:00Z"
        4388  +
}
              \
 No newline at end of file
 3501   4389   
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
 3502   4390   
similarity index 99%
 3503   4391   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3504   4392   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3505   4393   
index 5e1d1cf..e4e6d57 100644
 3506         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
        4394  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3507   4395   
@@ -1,9 +1,9 @@
 3508   4396   
GET
 3509   4397   
/example1/example2/../..
 3510   4398   
 3511   4399   
host:example.amazonaws.com
 3512   4400   
x-amz-date:20150830T123600Z
 3513   4401   
x-amz-region-set:us-east-1
 3514   4402   
 3515   4403   
host;x-amz-date;x-amz-region-set
 3516         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4404  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3517   4405   
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
 3518   4406   
new file mode 100644
 3519   4407   
index 0000000..2d1b47c
 3520         -
-- /dev/null
        4408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3521   4409   
@@ -0,0 +1 @@
        4410  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3522   4411   
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
 3523   4412   
new file mode 100644
 3524   4413   
index 0000000..7158179
 3525         -
-- /dev/null
        4414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3526   4415   
@@ -0,0 +1,6 @@
        4416  +
GET /example1/example2/../.. HTTP/1.1
        4417  +
Host:example.amazonaws.com
        4418  +
X-Amz-Date:20150830T123600Z
        4419  +
X-Amz-Region-Set:us-east-1
        4420  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4421  +
 3527   4422   
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
 3528   4423   
similarity index 99%
 3529   4424   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3530   4425   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3531   4426   
index 1cca6cf..db60c8e 100644
 3532         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
        4427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3533   4428   
@@ -1,4 +1,4 @@
 3534   4429   
AWS4-ECDSA-P256-SHA256
 3535   4430   
20150830T123600Z
 3536   4431   
20150830/service/aws4_request
 3537         -
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
        4432  +
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
              \
 No newline at end of file
 3538   4433   
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
 3539   4434   
new file mode 100644
 3540   4435   
index 0000000..379dcb2
 3541         -
-- /dev/null
        4436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3542   4437   
@@ -0,0 +1,4 @@
        4438  +
{
        4439  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4440  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4441  +
}
 3543   4442   
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
 3544   4443   
similarity index 99%
 3545   4444   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3546   4445   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3547   4446   
index 95dc104..0d963ba 100644
 3548         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
        4447  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3549   4448   
@@ -1,7 +1,7 @@
 3550   4449   
GET
 3551   4450   
/example1/example2/../..
 3552   4451   
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
 3553   4452   
host:example.amazonaws.com
 3554   4453   
 3555   4454   
host
 3556         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4455  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3557   4456   
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
 3558   4457   
new file mode 100644
 3559   4458   
index 0000000..ae774e4
 3560         -
-- /dev/null
        4459  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3561   4460   
@@ -0,0 +1 @@
        4461  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3562   4462   
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
 3563   4463   
new file mode 100644
 3564   4464   
index 0000000..be6b86e
 3565         -
-- /dev/null
        4465  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3566   4466   
@@ -0,0 +1,3 @@
        4467  +
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
        4468  +
Host:example.amazonaws.com
        4469  +
 3567   4470   
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
 3568   4471   
similarity index 99%
 3569   4472   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3570   4473   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3571   4474   
index 50edce6..fcc70cd 100644
 3572         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
        4475  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3573   4476   
@@ -1,4 +1,4 @@
 3574   4477   
AWS4-ECDSA-P256-SHA256
 3575   4478   
20150830T123600Z
 3576   4479   
20150830/service/aws4_request
 3577         -
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
        4480  +
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
              \
 No newline at end of file
 3578   4481   
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
 3579   4482   
new file mode 100644
 3580   4483   
index 0000000..a856c10
 3581         -
-- /dev/null
        4484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3582   4485   
@@ -0,0 +1,2 @@
        4486  +
GET /example1/example2/../.. HTTP/1.1
        4487  +
Host:example.amazonaws.com
 3583   4488   
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
 3584   4489   
new file mode 100644
 3585   4490   
index 0000000..7bee5c7
 3586         -
-- /dev/null
        4491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3587   4492   
@@ -0,0 +1,12 @@
        4493  +
{
        4494  +
    "credentials": {
        4495  +
        "access_key_id": "AKIDEXAMPLE",
        4496  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4497  +
    },
        4498  +
    "expiration_in_seconds": 3600,
        4499  +
    "normalize": false,
        4500  +
    "region": "us-east-1",
        4501  +
    "service": "service",
        4502  +
    "sign_body": false,
        4503  +
    "timestamp": "2015-08-30T12:36:00Z"
        4504  +
}
              \
 No newline at end of file
 3588   4505   
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
 3589   4506   
similarity index 99%
 3590   4507   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3591   4508   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3592   4509   
index d6a0abe..22def1a 100644
 3593         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
        4510  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3594   4511   
@@ -1,9 +1,9 @@
 3595   4512   
GET
 3596   4513   
/example/..
 3597   4514   
 3598   4515   
host:example.amazonaws.com
 3599   4516   
x-amz-date:20150830T123600Z
 3600   4517   
x-amz-region-set:us-east-1
 3601   4518   
 3602   4519   
host;x-amz-date;x-amz-region-set
 3603         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4520  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3604   4521   
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
 3605   4522   
new file mode 100644
 3606   4523   
index 0000000..9251bad
 3607         -
-- /dev/null
        4524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3608   4525   
@@ -0,0 +1 @@
        4526  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3609   4527   
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
 3610   4528   
new file mode 100644
 3611   4529   
index 0000000..f1bb60f
 3612         -
-- /dev/null
        4530  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3613   4531   
@@ -0,0 +1,6 @@
        4532  +
GET /example/.. HTTP/1.1
        4533  +
Host:example.amazonaws.com
        4534  +
X-Amz-Date:20150830T123600Z
        4535  +
X-Amz-Region-Set:us-east-1
        4536  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4537  +
 3614   4538   
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
 3615   4539   
similarity index 99%
 3616   4540   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3617   4541   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3618   4542   
index 4a34e93..5673a20 100644
 3619         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
        4543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3620   4544   
@@ -1,4 +1,4 @@
 3621   4545   
AWS4-ECDSA-P256-SHA256
 3622   4546   
20150830T123600Z
 3623   4547   
20150830/service/aws4_request
 3624         -
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
        4548  +
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
              \
 No newline at end of file
 3625   4549   
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
 3626   4550   
new file mode 100644
 3627   4551   
index 0000000..379dcb2
 3628         -
-- /dev/null
        4552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3629   4553   
@@ -0,0 +1,4 @@
        4554  +
{
        4555  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4556  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4557  +
}
 3630   4558   
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
 3631   4559   
similarity index 99%
 3632   4560   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3633   4561   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3634   4562   
index b1d123e..a1c22e0 100644
 3635         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
        4563  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3636   4564   
@@ -1,7 +1,7 @@
 3637   4565   
GET
 3638   4566   
/example/..
 3639   4567   
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
 3640   4568   
host:example.amazonaws.com
 3641   4569   
 3642   4570   
host
 3643         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4571  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3644   4572   
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
 3645   4573   
new file mode 100644
 3646   4574   
index 0000000..9f0f686
 3647         -
-- /dev/null
        4575  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3648   4576   
@@ -0,0 +1 @@
        4577  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3649   4578   
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
 3650   4579   
new file mode 100644
 3651   4580   
index 0000000..d1d451a
 3652         -
-- /dev/null
        4581  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3653   4582   
@@ -0,0 +1,3 @@
        4583  +
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
        4584  +
Host:example.amazonaws.com
        4585  +
 3654   4586   
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
 3655   4587   
similarity index 99%
 3656   4588   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3657   4589   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3658   4590   
index a17f5ab..81b41e8 100644
 3659         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
        4591  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3660   4592   
@@ -1,4 +1,4 @@
 3661   4593   
AWS4-ECDSA-P256-SHA256
 3662   4594   
20150830T123600Z
 3663   4595   
20150830/service/aws4_request
 3664         -
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
        4596  +
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
              \
 No newline at end of file
 3665   4597   
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
 3666   4598   
new file mode 100644
 3667   4599   
index 0000000..6aa9f99
 3668         -
-- /dev/null
        4600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3669   4601   
@@ -0,0 +1,2 @@
        4602  +
GET /example/.. HTTP/1.1
        4603  +
Host:example.amazonaws.com
 3670   4604   
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
 3671   4605   
new file mode 100644
 3672   4606   
index 0000000..0468d80
 3673         -
-- /dev/null
        4607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3674   4608   
@@ -0,0 +1,12 @@
        4609  +
{
        4610  +
    "credentials": {
        4611  +
        "access_key_id": "AKIDEXAMPLE",
        4612  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4613  +
    },
        4614  +
    "expiration_in_seconds": 3600,
        4615  +
    "normalize": true,
        4616  +
    "region": "us-east-1",
        4617  +
    "service": "service",
        4618  +
    "sign_body": false,
        4619  +
    "timestamp": "2015-08-30T12:36:00Z"
        4620  +
}
              \
 No newline at end of file
 3675   4621   
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
 3676   4622   
similarity index 99%
 3677   4623   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3678   4624   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3679   4625   
index 47e7128..76db73d 100644
 3680         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
        4626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3681   4627   
@@ -1,9 +1,9 @@
 3682   4628   
GET
 3683   4629   
/
 3684   4630   
 3685   4631   
host:example.amazonaws.com
 3686   4632   
x-amz-date:20150830T123600Z
 3687   4633   
x-amz-region-set:us-east-1
 3688   4634   
 3689   4635   
host;x-amz-date;x-amz-region-set
 3690         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4636  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3691   4637   
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
 3692   4638   
new file mode 100644
 3693   4639   
index 0000000..ca6e84e
 3694         -
-- /dev/null
        4640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3695   4641   
@@ -0,0 +1 @@
        4642  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3696   4643   
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
 3697   4644   
new file mode 100644
 3698   4645   
index 0000000..a7c764c
 3699         -
-- /dev/null
        4646  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3700   4647   
@@ -0,0 +1,6 @@
        4648  +
GET /./ HTTP/1.1
        4649  +
Host:example.amazonaws.com
        4650  +
X-Amz-Date:20150830T123600Z
        4651  +
X-Amz-Region-Set:us-east-1
        4652  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4653  +
 3701   4654   
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
 3702   4655   
similarity index 99%
 3703   4656   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3704   4657   
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
 3705   4658   
index 95d7219..600f1d8 100644
 3706         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
        4659  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-string-to-sign.txt
 3707   4660   
@@ -1,4 +1,4 @@
 3708   4661   
AWS4-ECDSA-P256-SHA256
 3709   4662   
20150830T123600Z
 3710   4663   
20150830/service/aws4_request
 3711         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4664  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3712   4665   
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
 3713   4666   
new file mode 100644
 3714   4667   
index 0000000..379dcb2
 3715         -
-- /dev/null
        4668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3716   4669   
@@ -0,0 +1,4 @@
        4670  +
{
        4671  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4672  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4673  +
}
 3717   4674   
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
 3718   4675   
similarity index 99%
 3719   4676   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3720   4677   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3721   4678   
index a34ea26..779c51c 100644
 3722         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
        4679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3723   4680   
@@ -1,7 +1,7 @@
 3724   4681   
GET
 3725   4682   
/
 3726   4683   
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
 3727   4684   
host:example.amazonaws.com
 3728   4685   
 3729   4686   
host
 3730         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4687  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3731   4688   
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
 3732   4689   
new file mode 100644
 3733   4690   
index 0000000..4b6ed09
 3734         -
-- /dev/null
        4691  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3735   4692   
@@ -0,0 +1 @@
        4693  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3736   4694   
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
 3737   4695   
new file mode 100644
 3738   4696   
index 0000000..d6c7176
 3739         -
-- /dev/null
        4697  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3740   4698   
@@ -0,0 +1,3 @@
        4699  +
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
        4700  +
Host:example.amazonaws.com
        4701  +
 3741   4702   
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
 3742   4703   
similarity index 99%
 3743   4704   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3744   4705   
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
 3745   4706   
index 48f855c..6e29a7e 100644
 3746         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
        4707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-string-to-sign.txt
 3747   4708   
@@ -1,4 +1,4 @@
 3748   4709   
AWS4-ECDSA-P256-SHA256
 3749   4710   
20150830T123600Z
 3750   4711   
20150830/service/aws4_request
 3751         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4712  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3752   4713   
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
 3753   4714   
similarity index 61%
 3754   4715   
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
 3755   4716   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3756   4717   
index f3537b7..2c5ff38 100644
 3757         -
-- 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
        4718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3758   4719   
@@ -1,3 +1,2 @@
 3759   4720   
GET /./ HTTP/1.1
 3760   4721   
Host:example.amazonaws.com
 3761         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3762   4722   
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
 3763   4723   
new file mode 100644
 3764   4724   
index 0000000..7bee5c7
 3765         -
-- /dev/null
        4725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3766   4726   
@@ -0,0 +1,12 @@
        4727  +
{
        4728  +
    "credentials": {
        4729  +
        "access_key_id": "AKIDEXAMPLE",
        4730  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4731  +
    },
        4732  +
    "expiration_in_seconds": 3600,
        4733  +
    "normalize": false,
        4734  +
    "region": "us-east-1",
        4735  +
    "service": "service",
        4736  +
    "sign_body": false,
        4737  +
    "timestamp": "2015-08-30T12:36:00Z"
        4738  +
}
              \
 No newline at end of file
 3767   4739   
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
 3768   4740   
similarity index 99%
 3769   4741   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3770   4742   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3771   4743   
index d05303d..9257ac4 100644
 3772         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
        4744  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3773   4745   
@@ -1,9 +1,9 @@
 3774   4746   
GET
 3775   4747   
/./
 3776   4748   
 3777   4749   
host:example.amazonaws.com
 3778   4750   
x-amz-date:20150830T123600Z
 3779   4751   
x-amz-region-set:us-east-1
 3780   4752   
 3781   4753   
host;x-amz-date;x-amz-region-set
 3782         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4754  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3783   4755   
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
 3784   4756   
new file mode 100644
 3785   4757   
index 0000000..2eb1aa5
 3786         -
-- /dev/null
        4758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3787   4759   
@@ -0,0 +1 @@
        4760  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3788   4761   
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
 3789   4762   
new file mode 100644
 3790   4763   
index 0000000..df3b1da
 3791         -
-- /dev/null
        4764  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3792   4765   
@@ -0,0 +1,6 @@
        4766  +
GET /./ HTTP/1.1
        4767  +
Host:example.amazonaws.com
        4768  +
X-Amz-Date:20150830T123600Z
        4769  +
X-Amz-Region-Set:us-east-1
        4770  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4771  +
 3793   4772   
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
 3794   4773   
similarity index 99%
 3795   4774   
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
 3796   4775   
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
 3797   4776   
index e1bfb39..754b3ed 100644
 3798         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
        4777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 3799   4778   
@@ -1,4 +1,4 @@
 3800   4779   
AWS4-ECDSA-P256-SHA256
 3801   4780   
20150830T123600Z
 3802   4781   
20150830/service/aws4_request
 3803         -
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
        4782  +
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
              \
 No newline at end of file
 3804   4783   
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
 3805   4784   
new file mode 100644
 3806   4785   
index 0000000..379dcb2
 3807         -
-- /dev/null
        4786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3808   4787   
@@ -0,0 +1,4 @@
        4788  +
{
        4789  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4790  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4791  +
}
 3809   4792   
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
 3810   4793   
similarity index 99%
 3811   4794   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3812   4795   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3813   4796   
index f048d0f..c8edce3 100644
 3814         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
        4797  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3815   4798   
@@ -1,7 +1,7 @@
 3816   4799   
GET
 3817   4800   
/./
 3818   4801   
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
 3819   4802   
host:example.amazonaws.com
 3820   4803   
 3821   4804   
host
 3822         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4805  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3823   4806   
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
 3824   4807   
new file mode 100644
 3825   4808   
index 0000000..d3af3b8
 3826         -
-- /dev/null
        4809  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3827   4810   
@@ -0,0 +1 @@
        4811  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3828   4812   
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
 3829   4813   
new file mode 100644
 3830   4814   
index 0000000..eb38155
 3831         -
-- /dev/null
        4815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3832   4816   
@@ -0,0 +1,3 @@
        4817  +
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
        4818  +
Host:example.amazonaws.com
        4819  +
 3833   4820   
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
 3834   4821   
similarity index 99%
 3835   4822   
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
 3836   4823   
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
 3837   4824   
index bfcf245..4f20b8f 100644
 3838         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
        4825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 3839   4826   
@@ -1,4 +1,4 @@
 3840   4827   
AWS4-ECDSA-P256-SHA256
 3841   4828   
20150830T123600Z
 3842   4829   
20150830/service/aws4_request
 3843         -
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
        4830  +
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
              \
 No newline at end of file
 3844   4831   
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
 3845   4832   
new file mode 100644
 3846   4833   
index 0000000..2c5ff38
 3847         -
-- /dev/null
        4834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3848   4835   
@@ -0,0 +1,2 @@
        4836  +
GET /./ HTTP/1.1
        4837  +
Host:example.amazonaws.com
 3849   4838   
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
 3850   4839   
new file mode 100644
 3851   4840   
index 0000000..0468d80
 3852         -
-- /dev/null
        4841  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3853   4842   
@@ -0,0 +1,12 @@
        4843  +
{
        4844  +
    "credentials": {
        4845  +
        "access_key_id": "AKIDEXAMPLE",
        4846  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4847  +
    },
        4848  +
    "expiration_in_seconds": 3600,
        4849  +
    "normalize": true,
        4850  +
    "region": "us-east-1",
        4851  +
    "service": "service",
        4852  +
    "sign_body": false,
        4853  +
    "timestamp": "2015-08-30T12:36:00Z"
        4854  +
}
              \
 No newline at end of file
 3854   4855   
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
 3855   4856   
similarity index 99%
 3856   4857   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 3857   4858   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3858   4859   
index 47e7128..76db73d 100644
 3859         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
        4860  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3860   4861   
@@ -1,9 +1,9 @@
 3861   4862   
GET
 3862   4863   
/
 3863   4864   
 3864   4865   
host:example.amazonaws.com
 3865   4866   
x-amz-date:20150830T123600Z
 3866   4867   
x-amz-region-set:us-east-1
 3867   4868   
 3868   4869   
host;x-amz-date;x-amz-region-set
 3869         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4870  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3870   4871   
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
 3871   4872   
new file mode 100644
 3872   4873   
index 0000000..0c049ca
 3873         -
-- /dev/null
        4874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 3874   4875   
@@ -0,0 +1 @@
        4876  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 3875   4877   
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
 3876   4878   
new file mode 100644
 3877   4879   
index 0000000..f4bb1e1
 3878         -
-- /dev/null
        4880  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 3879   4881   
@@ -0,0 +1,6 @@
        4882  +
GET // HTTP/1.1
        4883  +
Host:example.amazonaws.com
        4884  +
X-Amz-Date:20150830T123600Z
        4885  +
X-Amz-Region-Set:us-east-1
        4886  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4887  +
 3880   4888   
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
 3881   4889   
similarity index 99%
 3882   4890   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 3883   4891   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3884   4892   
index 95d7219..600f1d8 100644
 3885         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
        4893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3886   4894   
@@ -1,4 +1,4 @@
 3887   4895   
AWS4-ECDSA-P256-SHA256
 3888   4896   
20150830T123600Z
 3889   4897   
20150830/service/aws4_request
 3890         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4898  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3891   4899   
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
 3892   4900   
new file mode 100644
 3893   4901   
index 0000000..379dcb2
 3894         -
-- /dev/null
        4902  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 3895   4903   
@@ -0,0 +1,4 @@
        4904  +
{
        4905  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4906  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4907  +
}
 3896   4908   
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
 3897   4909   
similarity index 99%
 3898   4910   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 3899   4911   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3900   4912   
index a34ea26..779c51c 100644
 3901         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
        4913  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3902   4914   
@@ -1,7 +1,7 @@
 3903   4915   
GET
 3904   4916   
/
 3905   4917   
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
 3906   4918   
host:example.amazonaws.com
 3907   4919   
 3908   4920   
host
 3909         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4921  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3910   4922   
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
 3911   4923   
new file mode 100644
 3912   4924   
index 0000000..ca52293
 3913         -
-- /dev/null
        4925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 3914   4926   
@@ -0,0 +1 @@
        4927  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 3915   4928   
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
 3916   4929   
new file mode 100644
 3917   4930   
index 0000000..4a212a9
 3918         -
-- /dev/null
        4931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 3919   4932   
@@ -0,0 +1,3 @@
        4933  +
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
        4934  +
Host:example.amazonaws.com
        4935  +
 3920   4936   
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
 3921   4937   
similarity index 99%
 3922   4938   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 3923   4939   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3924   4940   
index 48f855c..6e29a7e 100644
 3925         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
        4941  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3926   4942   
@@ -1,4 +1,4 @@
 3927   4943   
AWS4-ECDSA-P256-SHA256
 3928   4944   
20150830T123600Z
 3929   4945   
20150830/service/aws4_request
 3930         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4946  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3931   4947   
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
 3932   4948   
similarity index 61%
 3933   4949   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 3934   4950   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3935   4951   
index ede8e3c..25bc21e 100644
 3936         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        4952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3937   4953   
@@ -1,3 +1,2 @@
 3938   4954   
GET // HTTP/1.1
 3939   4955   
Host:example.amazonaws.com
 3940         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3941   4956   
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
 3942   4957   
new file mode 100644
 3943   4958   
index 0000000..0468d80
 3944         -
-- /dev/null
        4959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 3945   4960   
@@ -0,0 +1,12 @@
        4961  +
{
        4962  +
    "credentials": {
        4963  +
        "access_key_id": "AKIDEXAMPLE",
        4964  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4965  +
    },
        4966  +
    "expiration_in_seconds": 3600,
        4967  +
    "normalize": true,
        4968  +
    "region": "us-east-1",
        4969  +
    "service": "service",
        4970  +
    "sign_body": false,
        4971  +
    "timestamp": "2015-08-30T12:36:00Z"
        4972  +
}
              \
 No newline at end of file
 3946   4973   
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
 3947   4974   
similarity index 99%
 3948   4975   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3949   4976   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3950   4977   
index 2e36c20..a51f1ba 100644
 3951         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
        4978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3952   4979   
@@ -1,9 +1,9 @@
 3953   4980   
GET
 3954   4981   
/example
 3955   4982   
 3956   4983   
host:example.amazonaws.com
 3957   4984   
x-amz-date:20150830T123600Z
 3958   4985   
x-amz-region-set:us-east-1
 3959   4986   
 3960   4987   
host;x-amz-date;x-amz-region-set
 3961         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4988  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3962   4989   
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
 3963   4990   
new file mode 100644
 3964   4991   
index 0000000..f5c871f
 3965         -
-- /dev/null
        4992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 3966   4993   
@@ -0,0 +1 @@
        4994  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 3967   4995   
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
 3968   4996   
new file mode 100644
 3969   4997   
index 0000000..bda4718
 3970         -
-- /dev/null
        4998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 3971   4999   
@@ -0,0 +1,6 @@
        5000  +
GET /./example HTTP/1.1
        5001  +
Host:example.amazonaws.com
        5002  +
X-Amz-Date:20150830T123600Z
        5003  +
X-Amz-Region-Set:us-east-1
        5004  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        5005  +
 3972   5006   
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
 3973   5007   
similarity index 99%
 3974   5008   
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
 3975   5009   
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
 3976   5010   
index cd30e8b..2ffe879 100644
 3977         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-string-to-sign.txt
        5011  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 3978   5012   
@@ -1,4 +1,4 @@
 3979   5013   
AWS4-ECDSA-P256-SHA256
 3980   5014   
20150830T123600Z
 3981   5015   
20150830/service/aws4_request
 3982         -
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
        5016  +
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
              \
 No newline at end of file
 3983   5017   
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
 3984   5018   
new file mode 100644
 3985   5019   
index 0000000..379dcb2
 3986         -
-- /dev/null
        5020  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 3987   5021   
@@ -0,0 +1,4 @@
        5022  +
{
        5023  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5024  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5025  +
}
 3988   5026   
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
 3989   5027   
similarity index 99%
 3990   5028   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3991   5029   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3992   5030   
index 77cf28d..45151ea 100644
 3993         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
        5031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3994   5032   
@@ -1,7 +1,7 @@
 3995   5033   
GET
 3996   5034   
/example
 3997   5035   
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
 3998   5036   
host:example.amazonaws.com
 3999   5037   
 4000   5038   
host
 4001         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5039  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4002   5040   
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
 4003   5041   
new file mode 100644
 4004   5042   
index 0000000..11ad7bf
 4005         -
-- /dev/null
        5043  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 4006   5044   
@@ -0,0 +1 @@
        5045  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 4007   5046   
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
 4008   5047   
new file mode 100644
 4009   5048   
index 0000000..a7537b1
 4010         -
-- /dev/null
        5049  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 4011   5050   
@@ -0,0 +1,3 @@
        5051  +
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
        5052  +
Host:example.amazonaws.com
        5053  +
 4012   5054   
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
 4013   5055   
similarity index 99%
 4014   5056   
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
 4015   5057   
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
 4016   5058   
index 49d9b24..b486672 100644
 4017         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-string-to-sign.txt
        5059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 4018   5060   
@@ -1,4 +1,4 @@
 4019   5061   
AWS4-ECDSA-P256-SHA256
 4020   5062   
20150830T123600Z
 4021   5063   
20150830/service/aws4_request
 4022         -
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
        5064  +
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
              \
 No newline at end of file
 4023   5065   
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
 4024   5066   
similarity index 65%
 4025   5067   
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
 4026   5068   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4027   5069   
index 3c91071..5d919c9 100644
 4028         -
-- 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
        5070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4029   5071   
@@ -1,3 +1,2 @@
 4030   5072   
GET /./example HTTP/1.1
 4031   5073   
Host:example.amazonaws.com
 4032         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4033   5074   
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
 4034   5075   
new file mode 100644
 4035   5076   
index 0000000..7bee5c7
 4036         -
-- /dev/null
        5077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 4037   5078   
@@ -0,0 +1,12 @@
        5079  +
{
        5080  +
    "credentials": {
        5081  +
        "access_key_id": "AKIDEXAMPLE",
        5082  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5083  +
    },
        5084  +
    "expiration_in_seconds": 3600,
        5085  +
    "normalize": false,
        5086  +
    "region": "us-east-1",
        5087  +
    "service": "service",
        5088  +
    "sign_body": false,
        5089  +
    "timestamp": "2015-08-30T12:36:00Z"
        5090  +
}
              \
 No newline at end of file
 4038   5091   
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
 4039   5092   
similarity index 99%
 4040   5093   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4041   5094   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4042   5095   
index 4444842..2355a69 100644
 4043         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
        5096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4044   5097   
@@ -1,9 +1,9 @@
 4045   5098   
GET
 4046   5099   
/./example
 4047   5100   
 4048   5101   
host:example.amazonaws.com
 4049   5102   
x-amz-date:20150830T123600Z
 4050   5103   
x-amz-region-set:us-east-1
 4051   5104   
 4052   5105   
host;x-amz-date;x-amz-region-set
 4053         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5106  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4054   5107   
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
 4055   5108   
new file mode 100644
 4056   5109   
index 0000000..9c8f737
 4057         -
-- /dev/null
        5110  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 4058   5111   
@@ -0,0 +1 @@
        5112  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 4059   5113   
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
 4060   5114   
new file mode 100644
 4061   5115   
index 0000000..aa5980d
 4062         -
-- /dev/null
        5116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 4063   5117   
@@ -0,0 +1,6 @@
        5118  +
GET /./example HTTP/1.1
        5119  +
Host:example.amazonaws.com
        5120  +
X-Amz-Date:20150830T123600Z
        5121  +
X-Amz-Region-Set:us-east-1
        5122  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        5123  +
 4064   5124   
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
 4065   5125   
similarity index 99%
 4066   5126   
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
 4067   5127   
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
 4068   5128   
index cc63510..d056816 100644
 4069         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
        5129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 4070   5130   
@@ -1,4 +1,4 @@
 4071   5131   
AWS4-ECDSA-P256-SHA256
 4072   5132   
20150830T123600Z
 4073   5133   
20150830/service/aws4_request
 4074         -
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
        5134  +
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
              \
 No newline at end of file
 4075   5135   
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
 4076   5136   
new file mode 100644
 4077   5137   
index 0000000..379dcb2
 4078         -
-- /dev/null
        5138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 4079   5139   
@@ -0,0 +1,4 @@
        5140  +
{
        5141  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5142  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5143  +
}
 4080   5144   
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
 4081   5145   
similarity index 99%
 4082   5146   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4083   5147   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4084   5148   
index ed2cb2d..df9928e 100644
 4085         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
        5149  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4086   5150   
@@ -1,7 +1,7 @@
 4087   5151   
GET
 4088   5152   
/./example
 4089   5153   
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
 4090   5154   
host:example.amazonaws.com
 4091   5155   
 4092   5156   
host
 4093         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5157  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4094   5158   
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
 4095   5159   
new file mode 100644
 4096   5160   
index 0000000..bb4d86b
 4097         -
-- /dev/null
        5161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 4098   5162   
@@ -0,0 +1 @@
        5163  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 4099   5164   
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
 4100   5165   
new file mode 100644
 4101   5166   
index 0000000..0061136
 4102         -
-- /dev/null
        5167  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 4103   5168   
@@ -0,0 +1,3 @@
        5169  +
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
        5170  +
Host:example.amazonaws.com
        5171  +
 4104   5172   
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
 4105   5173   
similarity index 99%
 4106   5174   
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
 4107   5175   
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
 4108   5176   
index c9f3b6d..418f2d6 100644
 4109         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
        5177  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 4110   5178   
@@ -1,4 +1,4 @@
 4111   5179   
AWS4-ECDSA-P256-SHA256
 4112   5180   
20150830T123600Z
 4113   5181   
20150830/service/aws4_request
 4114         -
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
        5182  +
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
              \
 No newline at end of file
 4115   5183   
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
 4116   5184   
new file mode 100644
 4117   5185   
index 0000000..5d919c9
 4118         -
-- /dev/null
        5186  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 4119   5187   
@@ -0,0 +1,2 @@
        5188  +
GET /./example HTTP/1.1
        5189  +
Host:example.amazonaws.com
 4120   5190   
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
 4121   5191   
new file mode 100644
 4122   5192   
index 0000000..7bee5c7
 4123         -
-- /dev/null
        5193  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 4124   5194   
@@ -0,0 +1,12 @@
        5195  +
{
        5196  +
    "credentials": {
        5197  +
        "access_key_id": "AKIDEXAMPLE",
        5198  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5199  +
    },
        5200  +
    "expiration_in_seconds": 3600,
        5201  +
    "normalize": false,
        5202  +
    "region": "us-east-1",
        5203  +
    "service": "service",
        5204  +
    "sign_body": false,
        5205  +
    "timestamp": "2015-08-30T12:36:00Z"
        5206  +
}
              \
 No newline at end of file
 4125   5207   
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
 4126   5208   
similarity index 99%
 4127   5209   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 4128   5210   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4129   5211   
index 8a4d33b..5f809da 100644
 4130         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
        5212  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4131   5213   
@@ -1,9 +1,9 @@
 4132   5214   
GET
 4133   5215   
//
 4134   5216   
 4135   5217   
host:example.amazonaws.com
 4136   5218   
x-amz-date:20150830T123600Z
 4137   5219   
x-amz-region-set:us-east-1
 4138   5220   
 4139   5221   
host;x-amz-date;x-amz-region-set
 4140         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5222  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4141   5223   
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
 4142   5224   
new file mode 100644
 4143   5225   
index 0000000..60179e9
 4144         -
-- /dev/null
        5226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 4145   5227   
@@ -0,0 +1 @@
        5228  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 4146   5229   
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
 4147   5230   
new file mode 100644
 4148   5231   
index 0000000..72bf1b7
 4149         -
-- /dev/null
        5232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 4150   5233   
@@ -0,0 +1,6 @@
        5234  +
GET // HTTP/1.1
        5235  +
Host:example.amazonaws.com
        5236  +
X-Amz-Date:20150830T123600Z
        5237  +
X-Amz-Region-Set:us-east-1
        5238  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        5239  +
 4151   5240   
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
 4152   5241   
similarity index 99%
 4153   5242   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 4154   5243   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4155   5244   
index 874c01c..2b3bf67 100644
 4156         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
        5245  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4157   5246   
@@ -1,4 +1,4 @@
 4158   5247   
AWS4-ECDSA-P256-SHA256
 4159   5248   
20150830T123600Z
 4160   5249   
20150830/service/aws4_request
 4161         -
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
        5250  +
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
              \
 No newline at end of file
 4162   5251   
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
 4163   5252   
new file mode 100644
 4164   5253   
index 0000000..379dcb2
 4165         -
-- /dev/null
        5254  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 4166   5255   
@@ -0,0 +1,4 @@
        5256  +
{
        5257  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5258  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5259  +
}
 4167   5260   
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
 4168   5261   
similarity index 99%
 4169   5262   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 4170   5263   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4171   5264   
index 81d7b0b..d10ad29 100644
 4172         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
        5265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4173   5266   
@@ -1,7 +1,7 @@
 4174   5267   
GET
 4175   5268   
//
 4176   5269   
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
 4177   5270   
host:example.amazonaws.com
 4178   5271   
 4179   5272   
host
 4180         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5273  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4181   5274   
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
 4182   5275   
new file mode 100644
 4183   5276   
index 0000000..d9bd824
 4184         -
-- /dev/null
        5277  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 4185   5278   
@@ -0,0 +1 @@
        5279  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 4186   5280   
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
 4187   5281   
new file mode 100644
 4188   5282   
index 0000000..19d1d46
 4189         -
-- /dev/null
        5283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 4190   5284   
@@ -0,0 +1,3 @@
        5285  +
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
        5286  +
Host:example.amazonaws.com
        5287  +
 4191   5288   
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
 4192   5289   
similarity index 99%
 4193   5290   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 4194   5291   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4195   5292   
index 17e5279..24c8a5e 100644
 4196         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
        5293  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4197   5294   
@@ -1,4 +1,4 @@
 4198   5295   
AWS4-ECDSA-P256-SHA256
 4199   5296   
20150830T123600Z
 4200   5297   
20150830/service/aws4_request
 4201         -
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
        5298  +
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
              \
 No newline at end of file
 4202   5299   
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
 4203   5300   
new file mode 100644
 4204   5301   
index 0000000..25bc21e
 4205         -
-- /dev/null
        5302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 4206   5303   
@@ -0,0 +1,2 @@
        5304  +
GET // HTTP/1.1
        5305  +
Host:example.amazonaws.com
 4207   5306   
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
 4208   5307   
new file mode 100644
 4209   5308   
index 0000000..0468d80
 4210         -
-- /dev/null
        5309  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 4211   5310   
@@ -0,0 +1,12 @@
        5311  +
{
        5312  +
    "credentials": {
        5313  +
        "access_key_id": "AKIDEXAMPLE",
        5314  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5315  +
    },
        5316  +
    "expiration_in_seconds": 3600,
        5317  +
    "normalize": true,
        5318  +
    "region": "us-east-1",
        5319  +
    "service": "service",
        5320  +
    "sign_body": false,
        5321  +
    "timestamp": "2015-08-30T12:36:00Z"
        5322  +
}
              \
 No newline at end of file
 4212   5323   
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
 4213   5324   
similarity index 99%
 4214   5325   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 4215   5326   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4216   5327   
index fdf9c48..a8e9e02 100644
 4217         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
        5328  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4218   5329   
@@ -1,9 +1,9 @@
 4219   5330   
GET
 4220   5331   
/example/
 4221   5332   
 4222   5333   
host:example.amazonaws.com
 4223   5334   
x-amz-date:20150830T123600Z
 4224   5335   
x-amz-region-set:us-east-1
 4225   5336   
 4226   5337   
host;x-amz-date;x-amz-region-set
 4227         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5338  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4228   5339   
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
 4229   5340   
new file mode 100644
 4230   5341   
index 0000000..ffe1b60
 4231         -
-- /dev/null
        5342  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 4232   5343   
@@ -0,0 +1 @@
        5344  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 4233   5345   
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
 4234   5346   
new file mode 100644
 4235   5347   
index 0000000..3189f55
 4236         -
-- /dev/null
        5348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 4237   5349   
@@ -0,0 +1,6 @@
        5350  +
GET //example// HTTP/1.1
        5351  +
Host:example.amazonaws.com
        5352  +
X-Amz-Date:20150830T123600Z
        5353  +
X-Amz-Region-Set:us-east-1
        5354  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        5355  +
 4238   5356   
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
 4239   5357   
similarity index 99%
 4240   5358   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 4241   5359   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4242   5360   
index 8f9c95e..430020e 100644
 4243         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
        5361  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4244   5362   
@@ -1,4 +1,4 @@
 4245   5363   
AWS4-ECDSA-P256-SHA256
 4246   5364   
20150830T123600Z
 4247   5365   
20150830/service/aws4_request
 4248         -
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
        5366  +
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
              \
 No newline at end of file
 4249   5367   
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
 4250   5368   
new file mode 100644
 4251   5369   
index 0000000..379dcb2
 4252         -
-- /dev/null
        5370  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 4253   5371   
@@ -0,0 +1,4 @@
        5372  +
{
        5373  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5374  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5375  +
}
 4254   5376   
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
 4255   5377   
similarity index 99%
 4256   5378   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 4257   5379   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4258   5380   
index 1046735..8d41e37 100644
 4259         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
        5381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4260   5382   
@@ -1,7 +1,7 @@
 4261   5383   
GET
 4262   5384   
/example/
 4263   5385   
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
 4264   5386   
host:example.amazonaws.com
 4265   5387   
 4266   5388   
host
 4267         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5389  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4268   5390   
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
 4269   5391   
new file mode 100644
 4270   5392   
index 0000000..93a0fa4
 4271         -
-- /dev/null
        5393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 4272   5394   
@@ -0,0 +1 @@
        5395  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 4273   5396   
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
 4274   5397   
new file mode 100644
 4275   5398   
index 0000000..65c8cb6
 4276         -
-- /dev/null
        5399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 4277   5400   
@@ -0,0 +1,3 @@
        5401  +
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
        5402  +
Host:example.amazonaws.com
        5403  +
 4278   5404   
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
 4279   5405   
similarity index 99%
 4280   5406   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 4281   5407   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4282   5408   
index b293cc2..0f4c4c5 100644
 4283         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
        5409  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4284   5410   
@@ -1,4 +1,4 @@
 4285   5411   
AWS4-ECDSA-P256-SHA256
 4286   5412   
20150830T123600Z
 4287   5413   
20150830/service/aws4_request
 4288         -
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
        5414  +
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
              \
 No newline at end of file
 4289   5415   
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
 4290   5416   
similarity index 65%
 4291   5417   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 4292   5418   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4293   5419   
index a4307ce..12e0931 100644
 4294         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        5420  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4295   5421   
@@ -1,3 +1,2 @@
 4296   5422   
GET //example// HTTP/1.1
 4297   5423   
Host:example.amazonaws.com
 4298         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4299   5424   
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
 4300   5425   
new file mode 100644
 4301   5426   
index 0000000..7bee5c7
 4302         -
-- /dev/null
        5427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 4303   5428   
@@ -0,0 +1,12 @@
        5429  +
{
        5430  +
    "credentials": {
        5431  +
        "access_key_id": "AKIDEXAMPLE",
        5432  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5433  +
    },
        5434  +
    "expiration_in_seconds": 3600,
        5435  +
    "normalize": false,
        5436  +
    "region": "us-east-1",
        5437  +
    "service": "service",
        5438  +
    "sign_body": false,
        5439  +
    "timestamp": "2015-08-30T12:36:00Z"
        5440  +
}
              \
 No newline at end of file
 4304   5441   
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
 4305   5442   
similarity index 99%
 4306   5443   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 4307   5444   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4308   5445   
index a9c55f6..76f55ed 100644
 4309         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
        5446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4310   5447   
@@ -1,9 +1,9 @@
 4311   5448   
GET
 4312   5449   
//example//
 4313   5450   
 4314   5451   
host:example.amazonaws.com
 4315   5452   
x-amz-date:20150830T123600Z
 4316   5453   
x-amz-region-set:us-east-1
 4317   5454   
 4318   5455   
host;x-amz-date;x-amz-region-set
 4319         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5456  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4320   5457   
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
 4321   5458   
new file mode 100644
 4322   5459   
index 0000000..de333b2
 4323         -
-- /dev/null
        5460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 4324   5461   
@@ -0,0 +1 @@
        5462  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 4325   5463   
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
 4326   5464   
new file mode 100644
 4327   5465   
index 0000000..773ce63
 4328         -
-- /dev/null
        5466  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 4329   5467   
@@ -0,0 +1,6 @@
        5468  +
GET //example// HTTP/1.1
        5469  +
Host:example.amazonaws.com
        5470  +
X-Amz-Date:20150830T123600Z
        5471  +
X-Amz-Region-Set:us-east-1
        5472  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        5473  +
 4330   5474   
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
 4331   5475   
similarity index 99%
 4332   5476   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 4333   5477   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4334   5478   
index 5c4c2cd..46c3265 100644
 4335         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
        5479  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4336   5480   
@@ -1,4 +1,4 @@
 4337   5481   
AWS4-ECDSA-P256-SHA256
 4338   5482   
20150830T123600Z
 4339   5483   
20150830/service/aws4_request
 4340         -
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
        5484  +
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
              \
 No newline at end of file
 4341   5485   
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
 4342   5486   
new file mode 100644
 4343   5487   
index 0000000..379dcb2
 4344         -
-- /dev/null
        5488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 4345   5489   
@@ -0,0 +1,4 @@
        5490  +
{
        5491  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5492  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5493  +
}
 4346   5494   
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
 4347   5495   
similarity index 99%
 4348   5496   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 4349   5497   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4350   5498   
index c878ab4..6047ccf 100644
 4351         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
        5499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4352   5500   
@@ -1,7 +1,7 @@
 4353   5501   
GET
 4354   5502   
//example//
 4355   5503   
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
 4356   5504   
host:example.amazonaws.com
 4357   5505   
 4358   5506   
host
 4359         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5507  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4360   5508   
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
 4361   5509   
new file mode 100644
 4362   5510   
index 0000000..d61fcd0
 4363         -
-- /dev/null
        5511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 4364   5512   
@@ -0,0 +1 @@
        5513  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 4365   5514   
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
 4366   5515   
new file mode 100644
 4367   5516   
index 0000000..3e37b5b
 4368         -
-- /dev/null
        5517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 4369   5518   
@@ -0,0 +1,3 @@
        5519  +
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
        5520  +
Host:example.amazonaws.com
        5521  +
 4370   5522   
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
 4371   5523   
similarity index 99%
 4372   5524   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 4373   5525   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4374   5526   
index 5f59645..2537d28 100644
 4375         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
        5527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4376   5528   
@@ -1,4 +1,4 @@
 4377   5529   
AWS4-ECDSA-P256-SHA256
 4378   5530   
20150830T123600Z
 4379   5531   
20150830/service/aws4_request
 4380         -
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
        5532  +
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
              \
 No newline at end of file
 4381   5533   
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
 4382   5534   
new file mode 100644
 4383   5535   
index 0000000..12e0931
 4384         -
-- /dev/null
        5536  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 4385   5537   
@@ -0,0 +1,2 @@
        5538  +
GET //example// HTTP/1.1
        5539  +
Host:example.amazonaws.com
 4386   5540   
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
 4387   5541   
new file mode 100644
 4388   5542   
index 0000000..0468d80
 4389         -
-- /dev/null
        5543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 4390   5544   
@@ -0,0 +1,12 @@
        5545  +
{
        5546  +
    "credentials": {
        5547  +
        "access_key_id": "AKIDEXAMPLE",
        5548  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5549  +
    },
        5550  +
    "expiration_in_seconds": 3600,
        5551  +
    "normalize": true,
        5552  +
    "region": "us-east-1",
        5553  +
    "service": "service",
        5554  +
    "sign_body": false,
        5555  +
    "timestamp": "2015-08-30T12:36:00Z"
        5556  +
}
              \
 No newline at end of file
 4391   5557   
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
 4392   5558   
new file mode 100644
 4393   5559   
index 0000000..0b2b616
 4394         -
-- /dev/null
        5560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 4395   5561   
@@ -0,0 +1,9 @@
        5562  +
GET
        5563  +
/example%20space/
        5564  +
        5565  +
host:example.amazonaws.com
        5566  +
x-amz-date:20150830T123600Z
        5567  +
x-amz-region-set:us-east-1
        5568  +
        5569  +
host;x-amz-date;x-amz-region-set
        5570  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4396   5571   
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
 4397   5572   
new file mode 100644
 4398   5573   
index 0000000..6e7841d
 4399         -
-- /dev/null
        5574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 4400   5575   
@@ -0,0 +1 @@
        5576  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 4401   5577   
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
 4402   5578   
new file mode 100644
 4403   5579   
index 0000000..0969cd3
 4404         -
-- /dev/null
        5580  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 4405   5581   
@@ -0,0 +1,6 @@
        5582  +
GET /example space/ HTTP/1.1
        5583  +
Host:example.amazonaws.com
        5584  +
X-Amz-Date:20150830T123600Z
        5585  +
X-Amz-Region-Set:us-east-1
        5586  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5587  +
 4406   5588   
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
 4407   5589   
new file mode 100644
 4408   5590   
index 0000000..ddae6e2
 4409         -
-- /dev/null
        5591  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4410   5592   
@@ -0,0 +1,4 @@
        5593  +
AWS4-ECDSA-P256-SHA256
        5594  +
20150830T123600Z
        5595  +
20150830/service/aws4_request
        5596  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4411   5597   
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
 4412   5598   
new file mode 100644
 4413   5599   
index 0000000..379dcb2
 4414         -
-- /dev/null
        5600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4415   5601   
@@ -0,0 +1,4 @@
        5602  +
{
        5603  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5604  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5605  +
}
 4416   5606   
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
 4417   5607   
new file mode 100644
 4418   5608   
index 0000000..a66b3cb
 4419         -
-- /dev/null
        5609  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4420   5610   
@@ -0,0 +1,7 @@
        5611  +
GET
        5612  +
/example%20space/
        5613  +
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
        5614  +
host:example.amazonaws.com
        5615  +
        5616  +
host
        5617  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4421   5618   
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
 4422   5619   
new file mode 100644
 4423   5620   
index 0000000..b3253ae
 4424         -
-- /dev/null
        5621  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4425   5622   
@@ -0,0 +1 @@
        5623  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 4426   5624   
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
 4427   5625   
new file mode 100644
 4428   5626   
index 0000000..9e335b2
 4429         -
-- /dev/null
        5627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4430   5628   
@@ -0,0 +1,3 @@
        5629  +
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
        5630  +
Host:example.amazonaws.com
        5631  +
 4431   5632   
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
 4432   5633   
new file mode 100644
 4433   5634   
index 0000000..b6ff6fb
 4434         -
-- /dev/null
        5635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4435   5636   
@@ -0,0 +1,4 @@
        5637  +
AWS4-ECDSA-P256-SHA256
        5638  +
20150830T123600Z
        5639  +
20150830/service/aws4_request
        5640  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4436   5641   
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
 4437   5642   
new file mode 100644
 4438   5643   
index 0000000..ab509ab
 4439         -
-- /dev/null
        5644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4440   5645   
@@ -0,0 +1,2 @@
        5646  +
GET /example space/ HTTP/1.1
        5647  +
Host:example.amazonaws.com
 4441   5648   
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
 4442   5649   
new file mode 100644
 4443   5650   
index 0000000..7bee5c7
 4444         -
-- /dev/null
        5651  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4445   5652   
@@ -0,0 +1,12 @@
        5653  +
{
        5654  +
    "credentials": {
        5655  +
        "access_key_id": "AKIDEXAMPLE",
        5656  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5657  +
    },
        5658  +
    "expiration_in_seconds": 3600,
        5659  +
    "normalize": false,
        5660  +
    "region": "us-east-1",
        5661  +
    "service": "service",
        5662  +
    "sign_body": false,
        5663  +
    "timestamp": "2015-08-30T12:36:00Z"
        5664  +
}
              \
 No newline at end of file
 4446   5665   
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
 4447   5666   
new file mode 100644
 4448   5667   
index 0000000..0b2b616
 4449         -
-- /dev/null
        5668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4450   5669   
@@ -0,0 +1,9 @@
        5670  +
GET
        5671  +
/example%20space/
        5672  +
        5673  +
host:example.amazonaws.com
        5674  +
x-amz-date:20150830T123600Z
        5675  +
x-amz-region-set:us-east-1
        5676  +
        5677  +
host;x-amz-date;x-amz-region-set
        5678  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4451   5679   
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
 4452   5680   
new file mode 100644
 4453   5681   
index 0000000..e75ae08
 4454         -
-- /dev/null
        5682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4455   5683   
@@ -0,0 +1 @@
        5684  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4456   5685   
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
 4457   5686   
new file mode 100644
 4458   5687   
index 0000000..cb089db
 4459         -
-- /dev/null
        5688  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4460   5689   
@@ -0,0 +1,6 @@
        5690  +
GET /example space/ HTTP/1.1
        5691  +
Host:example.amazonaws.com
        5692  +
X-Amz-Date:20150830T123600Z
        5693  +
X-Amz-Region-Set:us-east-1
        5694  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5695  +
 4461   5696   
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
 4462   5697   
new file mode 100644
 4463   5698   
index 0000000..ddae6e2
 4464         -
-- /dev/null
        5699  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4465   5700   
@@ -0,0 +1,4 @@
        5701  +
AWS4-ECDSA-P256-SHA256
        5702  +
20150830T123600Z
        5703  +
20150830/service/aws4_request
        5704  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4466   5705   
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
 4467   5706   
new file mode 100644
 4468   5707   
index 0000000..379dcb2
 4469         -
-- /dev/null
        5708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4470   5709   
@@ -0,0 +1,4 @@
        5710  +
{
        5711  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5712  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5713  +
}
 4471   5714   
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
 4472   5715   
new file mode 100644
 4473   5716   
index 0000000..a66b3cb
 4474         -
-- /dev/null
        5717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4475   5718   
@@ -0,0 +1,7 @@
        5719  +
GET
        5720  +
/example%20space/
        5721  +
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
        5722  +
host:example.amazonaws.com
        5723  +
        5724  +
host
        5725  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4476   5726   
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
 4477   5727   
new file mode 100644
 4478   5728   
index 0000000..66a80c3
 4479         -
-- /dev/null
        5729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4480   5730   
@@ -0,0 +1 @@
        5731  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4481   5732   
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
 4482   5733   
new file mode 100644
 4483   5734   
index 0000000..7d1b9d9
 4484         -
-- /dev/null
        5735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4485   5736   
@@ -0,0 +1,3 @@
        5737  +
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
        5738  +
Host:example.amazonaws.com
        5739  +
 4486   5740   
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
 4487   5741   
new file mode 100644
 4488   5742   
index 0000000..b6ff6fb
 4489         -
-- /dev/null
        5743  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4490   5744   
@@ -0,0 +1,4 @@
        5745  +
AWS4-ECDSA-P256-SHA256
        5746  +
20150830T123600Z
        5747  +
20150830/service/aws4_request
        5748  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4491   5749   
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
 4492   5750   
new file mode 100644
 4493   5751   
index 0000000..ab509ab
 4494         -
-- /dev/null
        5752  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4495   5753   
@@ -0,0 +1,2 @@
        5754  +
GET /example space/ HTTP/1.1
        5755  +
Host:example.amazonaws.com
 4496   5756   
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
 4497   5757   
new file mode 100644
 4498   5758   
index 0000000..0468d80
 4499         -
-- /dev/null
        5759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4500   5760   
@@ -0,0 +1,12 @@
        5761  +
{
        5762  +
    "credentials": {
        5763  +
        "access_key_id": "AKIDEXAMPLE",
        5764  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5765  +
    },
        5766  +
    "expiration_in_seconds": 3600,
        5767  +
    "normalize": true,
        5768  +
    "region": "us-east-1",
        5769  +
    "service": "service",
        5770  +
    "sign_body": false,
        5771  +
    "timestamp": "2015-08-30T12:36:00Z"
        5772  +
}
              \
 No newline at end of file
 4501   5773   
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
 4502   5774   
similarity index 99%
 4503   5775   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4504   5776   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4505   5777   
index b0db648..46d76bb 100644
 4506         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
        5778  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4507   5779   
@@ -1,9 +1,9 @@
 4508   5780   
GET
 4509   5781   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4510   5782   
 4511   5783   
host:example.amazonaws.com
 4512   5784   
x-amz-date:20150830T123600Z
 4513   5785   
x-amz-region-set:us-east-1
 4514   5786   
 4515   5787   
host;x-amz-date;x-amz-region-set
 4516         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5788  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4517   5789   
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
 4518   5790   
new file mode 100644
 4519   5791   
index 0000000..53c0cb6
 4520         -
-- /dev/null
        5792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4521   5793   
@@ -0,0 +1 @@
        5794  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4522   5795   
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
 4523   5796   
new file mode 100644
 4524   5797   
index 0000000..3bdb653
 4525         -
-- /dev/null
        5798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4526   5799   
@@ -0,0 +1,6 @@
        5800  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5801  +
Host:example.amazonaws.com
        5802  +
X-Amz-Date:20150830T123600Z
        5803  +
X-Amz-Region-Set:us-east-1
        5804  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5805  +
 4527   5806   
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
 4528   5807   
similarity index 99%
 4529   5808   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4530   5809   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4531   5810   
index 20c7cd6..3b30173 100644
 4532         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
        5811  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4533   5812   
@@ -1,4 +1,4 @@
 4534   5813   
AWS4-ECDSA-P256-SHA256
 4535   5814   
20150830T123600Z
 4536   5815   
20150830/service/aws4_request
 4537         -
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
        5816  +
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
              \
 No newline at end of file
 4538   5817   
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
 4539   5818   
new file mode 100644
 4540   5819   
index 0000000..379dcb2
 4541         -
-- /dev/null
        5820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4542   5821   
@@ -0,0 +1,4 @@
        5822  +
{
        5823  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5824  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5825  +
}
 4543   5826   
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
 4544   5827   
similarity index 99%
 4545   5828   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4546   5829   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4547   5830   
index f9fb726..7e93f58 100644
 4548         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
        5831  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4549   5832   
@@ -1,7 +1,7 @@
 4550   5833   
GET
 4551   5834   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4552   5835   
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
 4553   5836   
host:example.amazonaws.com
 4554   5837   
 4555   5838   
host
 4556         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5839  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4557   5840   
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
 4558   5841   
new file mode 100644
 4559   5842   
index 0000000..48311a8
 4560         -
-- /dev/null
        5843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4561   5844   
@@ -0,0 +1 @@
        5845  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4562   5846   
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
 4563   5847   
new file mode 100644
 4564   5848   
index 0000000..82da9be
 4565         -
-- /dev/null
        5849  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4566   5850   
@@ -0,0 +1,3 @@
        5851  +
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
        5852  +
Host:example.amazonaws.com
        5853  +
 4567   5854   
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
 4568   5855   
similarity index 99%
 4569   5856   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4570   5857   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4571   5858   
index ef06e89..4aab9a2 100644
 4572         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
        5859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4573   5860   
@@ -1,4 +1,4 @@
 4574   5861   
AWS4-ECDSA-P256-SHA256
 4575   5862   
20150830T123600Z
 4576   5863   
20150830/service/aws4_request
 4577         -
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
        5864  +
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
              \
 No newline at end of file
 4578   5865   
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
 4579   5866   
similarity index 80%
 4580   5867   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4581   5868   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4582   5869   
index da760cd..a149694 100644
 4583         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5870  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4584   5871   
@@ -1,3 +1,2 @@
 4585   5872   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4586   5873   
Host:example.amazonaws.com
 4587         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4588   5874   
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
 4589   5875   
new file mode 100644
 4590   5876   
index 0000000..0468d80
 4591         -
-- /dev/null
        5877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4592   5878   
@@ -0,0 +1,12 @@
        5879  +
{
        5880  +
    "credentials": {
        5881  +
        "access_key_id": "AKIDEXAMPLE",
        5882  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5883  +
    },
        5884  +
    "expiration_in_seconds": 3600,
        5885  +
    "normalize": true,
        5886  +
    "region": "us-east-1",
        5887  +
    "service": "service",
        5888  +
    "sign_body": false,
        5889  +
    "timestamp": "2015-08-30T12:36:00Z"
        5890  +
}
              \
 No newline at end of file
 4593   5891   
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
 4594   5892   
new file mode 100644
 4595   5893   
index 0000000..0f1afe7
 4596         -
-- /dev/null
        5894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4597   5895   
@@ -0,0 +1,9 @@
        5896  +
GET
        5897  +
/%E1%88%B4
        5898  +
        5899  +
host:example.amazonaws.com
        5900  +
x-amz-date:20150830T123600Z
        5901  +
x-amz-region-set:us-east-1
        5902  +
        5903  +
host;x-amz-date;x-amz-region-set
        5904  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4598   5905   
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
 4599   5906   
new file mode 100644
 4600   5907   
index 0000000..4b9af6c
 4601         -
-- /dev/null
        5908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4602   5909   
@@ -0,0 +1 @@
        5910  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4603   5911   
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
 4604   5912   
new file mode 100644
 4605   5913   
index 0000000..d42d7b3
 4606         -
-- /dev/null
        5914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4607   5915   
@@ -0,0 +1,6 @@
        5916  +
GET /ሴ HTTP/1.1
        5917  +
Host:example.amazonaws.com
        5918  +
X-Amz-Date:20150830T123600Z
        5919  +
X-Amz-Region-Set:us-east-1
        5920  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        5921  +
 4608   5922   
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
 4609   5923   
new file mode 100644
 4610   5924   
index 0000000..0827f62
 4611         -
-- /dev/null
        5925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4612   5926   
@@ -0,0 +1,4 @@
        5927  +
AWS4-ECDSA-P256-SHA256
        5928  +
20150830T123600Z
        5929  +
20150830/service/aws4_request
        5930  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4613   5931   
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
 4614   5932   
new file mode 100644
 4615   5933   
index 0000000..379dcb2
 4616         -
-- /dev/null
        5934  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4617   5935   
@@ -0,0 +1,4 @@
        5936  +
{
        5937  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5938  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5939  +
}
 4618   5940   
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
 4619   5941   
new file mode 100644
 4620   5942   
index 0000000..a41a2f8
 4621         -
-- /dev/null
        5943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4622   5944   
@@ -0,0 +1,7 @@
        5945  +
GET
        5946  +
/%E1%88%B4
        5947  +
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
        5948  +
host:example.amazonaws.com
        5949  +
        5950  +
host
        5951  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4623   5952   
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
 4624   5953   
new file mode 100644
 4625   5954   
index 0000000..a5c7f4f
 4626         -
-- /dev/null
        5955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4627   5956   
@@ -0,0 +1 @@
        5957  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4628   5958   
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
 4629   5959   
new file mode 100644
 4630   5960   
index 0000000..492ed33
 4631         -
-- /dev/null
        5961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4632   5962   
@@ -0,0 +1,3 @@
        5963  +
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
        5964  +
Host:example.amazonaws.com
        5965  +
 4633   5966   
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
 4634   5967   
new file mode 100644
 4635   5968   
index 0000000..a93108f
 4636         -
-- /dev/null
        5969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4637   5970   
@@ -0,0 +1,4 @@
        5971  +
AWS4-ECDSA-P256-SHA256
        5972  +
20150830T123600Z
        5973  +
20150830/service/aws4_request
        5974  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4638   5975   
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
 4639   5976   
new file mode 100644
 4640   5977   
index 0000000..9e273f6
 4641         -
-- /dev/null
        5978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4642   5979   
@@ -0,0 +1,2 @@
        5980  +
GET /ሴ HTTP/1.1
        5981  +
Host:example.amazonaws.com
 4643   5982   
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
 4644   5983   
new file mode 100644
 4645   5984   
index 0000000..0468d80
 4646         -
-- /dev/null
        5985  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4647   5986   
@@ -0,0 +1,12 @@
        5987  +
{
        5988  +
    "credentials": {
        5989  +
        "access_key_id": "AKIDEXAMPLE",
        5990  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5991  +
    },
        5992  +
    "expiration_in_seconds": 3600,
        5993  +
    "normalize": true,
        5994  +
    "region": "us-east-1",
        5995  +
    "service": "service",
        5996  +
    "sign_body": false,
        5997  +
    "timestamp": "2015-08-30T12:36:00Z"
        5998  +
}
              \
 No newline at end of file
 4648   5999   
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
 4649   6000   
similarity index 99%
 4650   6001   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4651   6002   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4652   6003   
index bb9d4bf..edc0bb4 100644
 4653         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
        6004  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4654   6005   
@@ -1,9 +1,9 @@
 4655   6006   
GET
 4656   6007   
/
 4657   6008   
Param1=value1
 4658   6009   
host:example.amazonaws.com
 4659   6010   
x-amz-date:20150830T123600Z
 4660   6011   
x-amz-region-set:us-east-1
 4661   6012   
 4662   6013   
host;x-amz-date;x-amz-region-set
 4663         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6014  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4664   6015   
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
 4665   6016   
new file mode 100644
 4666   6017   
index 0000000..ee9a272
 4667         -
-- /dev/null
        6018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4668   6019   
@@ -0,0 +1 @@
        6020  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4669   6021   
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
 4670   6022   
new file mode 100644
 4671   6023   
index 0000000..2090343
 4672         -
-- /dev/null
        6024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4673   6025   
@@ -0,0 +1,6 @@
        6026  +
GET /?Param1=value1 HTTP/1.1
        6027  +
Host:example.amazonaws.com
        6028  +
X-Amz-Date:20150830T123600Z
        6029  +
X-Amz-Region-Set:us-east-1
        6030  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        6031  +
 4674   6032   
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
 4675   6033   
similarity index 99%
 4676   6034   
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
 4677   6035   
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
 4678   6036   
index a176f1d..06ed74f 100644
 4679         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-string-to-sign.txt
        6037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-string-to-sign.txt
 4680   6038   
@@ -1,4 +1,4 @@
 4681   6039   
AWS4-ECDSA-P256-SHA256
 4682   6040   
20150830T123600Z
 4683   6041   
20150830/service/aws4_request
 4684         -
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
        6042  +
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
              \
 No newline at end of file
 4685   6043   
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
 4686   6044   
new file mode 100644
 4687   6045   
index 0000000..379dcb2
 4688         -
-- /dev/null
        6046  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4689   6047   
@@ -0,0 +1,4 @@
        6048  +
{
        6049  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6050  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6051  +
}
 4690   6052   
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
 4691   6053   
similarity index 99%
 4692   6054   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4693   6055   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4694   6056   
index 344384b..a875d70 100644
 4695         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
        6057  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4696   6058   
@@ -1,7 +1,7 @@
 4697   6059   
GET
 4698   6060   
/
 4699   6061   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4700   6062   
host:example.amazonaws.com
 4701   6063   
 4702   6064   
host
 4703         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6065  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4704   6066   
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
 4705   6067   
new file mode 100644
 4706   6068   
index 0000000..ef93624
 4707         -
-- /dev/null
        6069  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4708   6070   
@@ -0,0 +1 @@
        6071  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4709   6072   
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
 4710   6073   
new file mode 100644
 4711   6074   
index 0000000..92829f7
 4712         -
-- /dev/null
        6075  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4713   6076   
@@ -0,0 +1,3 @@
        6077  +
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
        6078  +
Host:example.amazonaws.com
        6079  +
 4714   6080   
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
 4715   6081   
similarity index 99%
 4716   6082   
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
 4717   6083   
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
 4718   6084   
index b625052..4ff9191 100644
 4719         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-string-to-sign.txt
        6085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-string-to-sign.txt
 4720   6086   
@@ -1,4 +1,4 @@
 4721   6087   
AWS4-ECDSA-P256-SHA256
 4722   6088   
20150830T123600Z
 4723   6089   
20150830/service/aws4_request
 4724         -
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
        6090  +
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
              \
 No newline at end of file
 4725   6091   
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
 4726   6092   
similarity index 67%
 4727   6093   
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
 4728   6094   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4729   6095   
index 970d0a0..f4a03bb 100644
 4730         -
-- 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
        6096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4731   6097   
@@ -1,3 +1,2 @@
 4732   6098   
GET /?Param1=value1 HTTP/1.1
 4733   6099   
Host:example.amazonaws.com
 4734         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4735   6100   
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
 4736   6101   
new file mode 100644
 4737   6102   
index 0000000..0468d80
 4738         -
-- /dev/null
        6103  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4739   6104   
@@ -0,0 +1,12 @@
        6105  +
{
        6106  +
    "credentials": {
        6107  +
        "access_key_id": "AKIDEXAMPLE",
        6108  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6109  +
    },
        6110  +
    "expiration_in_seconds": 3600,
        6111  +
    "normalize": true,
        6112  +
    "region": "us-east-1",
        6113  +
    "service": "service",
        6114  +
    "sign_body": false,
        6115  +
    "timestamp": "2015-08-30T12:36:00Z"
        6116  +
}
              \
 No newline at end of file
 4740   6117   
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
 4741   6118   
new file mode 100644
 4742   6119   
index 0000000..da07537
 4743         -
-- /dev/null
        6120  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4744   6121   
@@ -0,0 +1,9 @@
        6122  +
GET
        6123  +
/
        6124  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        6125  +
host:example.amazonaws.com
        6126  +
x-amz-date:20150830T123600Z
        6127  +
x-amz-region-set:us-east-1
        6128  +
        6129  +
host;x-amz-date;x-amz-region-set
        6130  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4745   6131   
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
 4746   6132   
new file mode 100644
 4747   6133   
index 0000000..edb21e5
 4748         -
-- /dev/null
        6134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4749   6135   
@@ -0,0 +1 @@
        6136  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4750   6137   
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
 4751   6138   
new file mode 100644
 4752   6139   
index 0000000..e60394c
 4753         -
-- /dev/null
        6140  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4754   6141   
@@ -0,0 +1,6 @@
        6142  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6143  +
Host:example.amazonaws.com
        6144  +
X-Amz-Date:20150830T123600Z
        6145  +
X-Amz-Region-Set:us-east-1
        6146  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        6147  +
 4755   6148   
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
 4756   6149   
new file mode 100644
 4757   6150   
index 0000000..1dfc886
 4758         -
-- /dev/null
        6151  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4759   6152   
@@ -0,0 +1,4 @@
        6153  +
AWS4-ECDSA-P256-SHA256
        6154  +
20150830T123600Z
        6155  +
20150830/service/aws4_request
        6156  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4760   6157   
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
 4761   6158   
new file mode 100644
 4762   6159   
index 0000000..379dcb2
 4763         -
-- /dev/null
        6160  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4764   6161   
@@ -0,0 +1,4 @@
        6162  +
{
        6163  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6164  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6165  +
}
 4765   6166   
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
 4766   6167   
new file mode 100644
 4767   6168   
index 0000000..e94dc0c
 4768         -
-- /dev/null
        6169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4769   6170   
@@ -0,0 +1,7 @@
        6171  +
GET
        6172  +
/
        6173  +
%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
        6174  +
host:example.amazonaws.com
        6175  +
        6176  +
host
        6177  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4770   6178   
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
 4771   6179   
new file mode 100644
 4772   6180   
index 0000000..7489437
 4773         -
-- /dev/null
        6181  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4774   6182   
@@ -0,0 +1 @@
        6183  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4775   6184   
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
 4776   6185   
new file mode 100644
 4777   6186   
index 0000000..90c0e73
 4778         -
-- /dev/null
        6187  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4779   6188   
@@ -0,0 +1,3 @@
        6189  +
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
        6190  +
Host:example.amazonaws.com
        6191  +
 4780   6192   
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
 4781   6193   
new file mode 100644
 4782   6194   
index 0000000..ab8a711
 4783         -
-- /dev/null
        6195  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4784   6196   
@@ -0,0 +1,4 @@
        6197  +
AWS4-ECDSA-P256-SHA256
        6198  +
20150830T123600Z
        6199  +
20150830/service/aws4_request
        6200  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4785   6201   
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
 4786   6202   
new file mode 100644
 4787   6203   
index 0000000..368c6e3
 4788         -
-- /dev/null
        6204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4789   6205   
@@ -0,0 +1,2 @@
        6206  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6207  +
Host:example.amazonaws.com
 4790   6208   
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
 4791   6209   
new file mode 100644
 4792   6210   
index 0000000..0468d80
 4793         -
-- /dev/null
        6211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4794   6212   
@@ -0,0 +1,12 @@
        6213  +
{
        6214  +
    "credentials": {
        6215  +
        "access_key_id": "AKIDEXAMPLE",
        6216  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6217  +
    },
        6218  +
    "expiration_in_seconds": 3600,
        6219  +
    "normalize": true,
        6220  +
    "region": "us-east-1",
        6221  +
    "service": "service",
        6222  +
    "sign_body": false,
        6223  +
    "timestamp": "2015-08-30T12:36:00Z"
        6224  +
}
              \
 No newline at end of file
 4795   6225   
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
 4796   6226   
similarity index 99%
 4797   6227   
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
 4798   6228   
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
 4799   6229   
index 74f625a..3db56f7 100644
 4800         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-canonical-request.txt
        6230  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-canonical-request.txt
 4801   6231   
@@ -1,9 +1,9 @@
 4802   6232   
GET
 4803   6233   
/
 4804   6234   
Param1=value1&Param2=value2
 4805   6235   
host:example.amazonaws.com
 4806   6236   
x-amz-date:20150830T123600Z
 4807   6237   
x-amz-region-set:us-east-1
 4808   6238   
 4809   6239   
host;x-amz-date;x-amz-region-set
 4810         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6240  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4811   6241   
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
 4812   6242   
new file mode 100644
 4813   6243   
index 0000000..e6042bc
 4814         -
-- /dev/null
        6244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4815   6245   
@@ -0,0 +1 @@
        6246  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4816   6247   
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
 4817   6248   
new file mode 100644
 4818   6249   
index 0000000..5505969
 4819         -
-- /dev/null
        6250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4820   6251   
@@ -0,0 +1,6 @@
        6252  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        6253  +
Host:example.amazonaws.com
        6254  +
X-Amz-Date:20150830T123600Z
        6255  +
X-Amz-Region-Set:us-east-1
        6256  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        6257  +
 4821   6258   
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
 4822   6259   
similarity index 99%
 4823   6260   
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
 4824   6261   
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
 4825   6262   
index 44873b7..e8f5e31 100644
 4826         -
-- 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
        6263  +
++ 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
 4827   6264   
@@ -1,4 +1,4 @@
 4828   6265   
AWS4-ECDSA-P256-SHA256
 4829   6266   
20150830T123600Z
 4830   6267   
20150830/service/aws4_request
 4831         -
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
        6268  +
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
              \
 No newline at end of file
 4832   6269   
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
 4833   6270   
new file mode 100644
 4834   6271   
index 0000000..379dcb2
 4835         -
-- /dev/null
        6272  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4836   6273   
@@ -0,0 +1,4 @@
        6274  +
{
        6275  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6276  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6277  +
}
 4837   6278   
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
 4838   6279   
similarity index 99%
 4839   6280   
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
 4840   6281   
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
 4841   6282   
index 6d30727..3fe6a9f 100644
 4842         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-canonical-request.txt
        6283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-canonical-request.txt
 4843   6284   
@@ -1,7 +1,7 @@
 4844   6285   
GET
 4845   6286   
/
 4846   6287   
Param1=value1&Param2=value2&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4847   6288   
host:example.amazonaws.com
 4848   6289   
 4849   6290   
host
 4850         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6291  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4851   6292   
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
 4852   6293   
new file mode 100644
 4853   6294   
index 0000000..3f35de8
 4854         -
-- /dev/null
        6295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4855   6296   
@@ -0,0 +1 @@
        6297  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 4856   6298   
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
 4857   6299   
new file mode 100644
 4858   6300   
index 0000000..30b336b
 4859         -
-- /dev/null
        6301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 4860   6302   
@@ -0,0 +1,3 @@
        6303  +
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
        6304  +
Host:example.amazonaws.com
        6305  +
 4861   6306   
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
 4862   6307   
similarity index 99%
 4863   6308   
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
 4864   6309   
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
 4865   6310   
index 99d0510..7f0565f 100644
 4866         -
-- 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
        6311  +
++ 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
 4867   6312   
@@ -1,4 +1,4 @@
 4868   6313   
AWS4-ECDSA-P256-SHA256
 4869   6314   
20150830T123600Z
 4870   6315   
20150830/service/aws4_request
 4871         -
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
        6316  +
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
              \
 No newline at end of file
 4872   6317   
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
 4873   6318   
similarity index 100%
 4874   6319   
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
 4875   6320   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 4876   6321   
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
 4877   6322   
new file mode 100644
 4878   6323   
index 0000000..0468d80
 4879         -
-- /dev/null
        6324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 4880   6325   
@@ -0,0 +1,12 @@
        6326  +
{
        6327  +
    "credentials": {
        6328  +
        "access_key_id": "AKIDEXAMPLE",
        6329  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6330  +
    },
        6331  +
    "expiration_in_seconds": 3600,
        6332  +
    "normalize": true,
        6333  +
    "region": "us-east-1",
        6334  +
    "service": "service",
        6335  +
    "sign_body": false,
        6336  +
    "timestamp": "2015-08-30T12:36:00Z"
        6337  +
}
              \
 No newline at end of file
 4881   6338   
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
 4882   6339   
similarity index 99%
 4883   6340   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 4884   6341   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4885   6342   
index 816c862..cc4537a 100644
 4886         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
        6343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4887   6344   
@@ -1,9 +1,9 @@
 4888   6345   
GET
 4889   6346   
/
 4890   6347   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4891   6348   
host:example.amazonaws.com
 4892   6349   
x-amz-date:20150830T123600Z
 4893   6350   
x-amz-region-set:us-east-1
 4894   6351   
 4895   6352   
host;x-amz-date;x-amz-region-set
 4896         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6353  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4897   6354   
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
 4898   6355   
new file mode 100644
 4899   6356   
index 0000000..70d38c1
 4900         -
-- /dev/null
        6357  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 4901   6358   
@@ -0,0 +1 @@
        6359  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 4902   6360   
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
 4903   6361   
new file mode 100644
 4904   6362   
index 0000000..0647eea
 4905         -
-- /dev/null
        6363  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 4906   6364   
@@ -0,0 +1,6 @@
        6365  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        6366  +
Host:example.amazonaws.com
        6367  +
X-Amz-Date:20150830T123600Z
        6368  +
X-Amz-Region-Set:us-east-1
        6369  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        6370  +
 4907   6371   
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
 4908   6372   
similarity index 99%
 4909   6373   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 4910   6374   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4911   6375   
index 6129fc5..cc19d14 100644
 4912         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
        6376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4913   6377   
@@ -1,4 +1,4 @@
 4914   6378   
AWS4-ECDSA-P256-SHA256
 4915   6379   
20150830T123600Z
 4916   6380   
20150830/service/aws4_request
 4917         -
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
        6381  +
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
              \
 No newline at end of file
 4918   6382   
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
 4919   6383   
new file mode 100644
 4920   6384   
index 0000000..379dcb2
 4921         -
-- /dev/null
        6385  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 4922   6386   
@@ -0,0 +1,4 @@
        6387  +
{
        6388  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6389  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6390  +
}
 4923   6391   
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
 4924   6392   
similarity index 99%
 4925   6393   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 4926   6394   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4927   6395   
index b77ee9f..ed6a10e 100644
 4928         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
        6396  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4929   6397   
@@ -1,7 +1,7 @@
 4930   6398   
GET
 4931   6399   
/
 4932   6400   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4933   6401   
host:example.amazonaws.com
 4934   6402   
 4935   6403   
host
 4936         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6404  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4937   6405   
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
 4938   6406   
new file mode 100644
 4939   6407   
index 0000000..2ceba7b
 4940         -
-- /dev/null
        6408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 4941   6409   
@@ -0,0 +1 @@
        6410  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 4942   6411   
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
 4943   6412   
new file mode 100644
 4944   6413   
index 0000000..0cd6d0a
 4945         -
-- /dev/null
        6414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 4946   6415   
@@ -0,0 +1,3 @@
        6416  +
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
        6417  +
Host:example.amazonaws.com
        6418  +
 4947   6419   
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
 4948   6420   
similarity index 99%
 4949   6421   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 4950   6422   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4951   6423   
index 1cfed7a..aad1421 100644
 4952         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
        6424  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4953   6425   
@@ -1,4 +1,4 @@
 4954   6426   
AWS4-ECDSA-P256-SHA256
 4955   6427   
20150830T123600Z
 4956   6428   
20150830/service/aws4_request
 4957         -
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
        6429  +
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
              \
 No newline at end of file
 4958   6430   
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
 4959   6431   
similarity index 86%
 4960   6432   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 4961   6433   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4962   6434   
index d2833b3..36b2fe3 100644
 4963         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        6435  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4964   6436   
@@ -1,3 +1,2 @@
 4965   6437   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4966   6438   
Host:example.amazonaws.com
 4967         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4968   6439   
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
 4969   6440   
new file mode 100644
 4970   6441   
index 0000000..0468d80
 4971         -
-- /dev/null
        6442  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 4972   6443   
@@ -0,0 +1,12 @@
        6444  +
{
        6445  +
    "credentials": {
        6446  +
        "access_key_id": "AKIDEXAMPLE",
        6447  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6448  +
    },
        6449  +
    "expiration_in_seconds": 3600,
        6450  +
    "normalize": true,
        6451  +
    "region": "us-east-1",
        6452  +
    "service": "service",
        6453  +
    "sign_body": false,
        6454  +
    "timestamp": "2015-08-30T12:36:00Z"
        6455  +
}
              \
 No newline at end of file
 4973   6456   
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
 4974   6457   
new file mode 100644
 4975   6458   
index 0000000..76db73d
 4976         -
-- /dev/null
        6459  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 4977   6460   
@@ -0,0 +1,9 @@
        6461  +
GET
        6462  +
/
        6463  +
        6464  +
host:example.amazonaws.com
        6465  +
x-amz-date:20150830T123600Z
        6466  +
x-amz-region-set:us-east-1
        6467  +
        6468  +
host;x-amz-date;x-amz-region-set
        6469  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4978   6470   
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
 4979   6471   
new file mode 100644
 4980   6472   
index 0000000..281cc62
 4981         -
-- /dev/null
        6473  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 4982   6474   
@@ -0,0 +1 @@
        6475  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 4983   6476   
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
 4984   6477   
new file mode 100644
 4985   6478   
index 0000000..cce9925
 4986         -
-- /dev/null
        6479  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 4987   6480   
@@ -0,0 +1,6 @@
        6481  +
GET / HTTP/1.1
        6482  +
Host:example.amazonaws.com
        6483  +
X-Amz-Date:20150830T123600Z
        6484  +
X-Amz-Region-Set:us-east-1
        6485  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        6486  +
 4988   6487   
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
 4989   6488   
new file mode 100644
 4990   6489   
index 0000000..600f1d8
 4991         -
-- /dev/null
        6490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 4992   6491   
@@ -0,0 +1,4 @@
        6492  +
AWS4-ECDSA-P256-SHA256
        6493  +
20150830T123600Z
        6494  +
20150830/service/aws4_request
        6495  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4993   6496   
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
 4994   6497   
new file mode 100644
 4995   6498   
index 0000000..379dcb2
 4996         -
-- /dev/null
        6499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 4997   6500   
@@ -0,0 +1,4 @@
        6501  +
{
        6502  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6503  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6504  +
}
 4998   6505   
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
 4999   6506   
new file mode 100644
 5000   6507   
index 0000000..779c51c
 5001         -
-- /dev/null
        6508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 5002   6509   
@@ -0,0 +1,7 @@
        6510  +
GET
        6511  +
/
        6512  +
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
        6513  +
host:example.amazonaws.com
        6514  +
        6515  +
host
        6516  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5003   6517   
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
 5004   6518   
new file mode 100644
 5005   6519   
index 0000000..2979e5e
 5006         -
-- /dev/null
        6520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 5007   6521   
@@ -0,0 +1 @@
        6522  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 5008   6523   
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
 5009   6524   
new file mode 100644
 5010   6525   
index 0000000..1b3179c
 5011         -
-- /dev/null
        6526  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 5012   6527   
@@ -0,0 +1,3 @@
        6528  +
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
        6529  +
Host:example.amazonaws.com
        6530  +
 5013   6531   
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
 5014   6532   
new file mode 100644
 5015   6533   
index 0000000..6e29a7e
 5016         -
-- /dev/null
        6534  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 5017   6535   
@@ -0,0 +1,4 @@
        6536  +
AWS4-ECDSA-P256-SHA256
        6537  +
20150830T123600Z
        6538  +
20150830/service/aws4_request
        6539  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5018   6540   
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
 5019   6541   
similarity index 60%
 5020   6542   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 5021   6543   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5022   6544   
index 0f7a9bf..e659c3b 100644
 5023         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        6545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5024   6546   
@@ -1,3 +1,2 @@
 5025   6547   
GET / HTTP/1.1
 5026   6548   
Host:example.amazonaws.com
 5027         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5028   6549   
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
 5029   6550   
new file mode 100644
 5030   6551   
index 0000000..0468d80
 5031         -
-- /dev/null
        6552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 5032   6553   
@@ -0,0 +1,12 @@
        6554  +
{
        6555  +
    "credentials": {
        6556  +
        "access_key_id": "AKIDEXAMPLE",
        6557  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6558  +
    },
        6559  +
    "expiration_in_seconds": 3600,
        6560  +
    "normalize": true,
        6561  +
    "region": "us-east-1",
        6562  +
    "service": "service",
        6563  +
    "sign_body": false,
        6564  +
    "timestamp": "2015-08-30T12:36:00Z"
        6565  +
}
              \
 No newline at end of file
 5033   6566   
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
 5034   6567   
new file mode 100644
 5035   6568   
index 0000000..8841ddf
 5036         -
-- /dev/null
        6569  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 5037   6570   
@@ -0,0 +1,9 @@
        6571  +
GET
        6572  +
/
        6573  +
%E1%88%B4=bar
        6574  +
host:example.amazonaws.com
        6575  +
x-amz-date:20150830T123600Z
        6576  +
x-amz-region-set:us-east-1
        6577  +
        6578  +
host;x-amz-date;x-amz-region-set
        6579  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5038   6580   
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
 5039   6581   
new file mode 100644
 5040   6582   
index 0000000..1497add
 5041         -
-- /dev/null
        6583  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 5042   6584   
@@ -0,0 +1 @@
        6585  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 5043   6586   
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
 5044   6587   
new file mode 100644
 5045   6588   
index 0000000..961bc10
 5046         -
-- /dev/null
        6589  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 5047   6590   
@@ -0,0 +1,6 @@
        6591  +
GET /?ሴ=bar HTTP/1.1
        6592  +
Host:example.amazonaws.com
        6593  +
X-Amz-Date:20150830T123600Z
        6594  +
X-Amz-Region-Set:us-east-1
        6595  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        6596  +
 5048   6597   
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
 5049   6598   
new file mode 100644
 5050   6599   
index 0000000..e78ed70
 5051         -
-- /dev/null
        6600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 5052   6601   
@@ -0,0 +1,4 @@
        6602  +
AWS4-ECDSA-P256-SHA256
        6603  +
20150830T123600Z
        6604  +
20150830/service/aws4_request
        6605  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 5053   6606   
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
 5054   6607   
new file mode 100644
 5055   6608   
index 0000000..379dcb2
 5056         -
-- /dev/null
        6609  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 5057   6610   
@@ -0,0 +1,4 @@
        6611  +
{
        6612  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6613  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6614  +
}
 5058   6615   
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
 5059   6616   
new file mode 100644
 5060   6617   
index 0000000..6d5ae93
 5061         -
-- /dev/null
        6618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 5062   6619   
@@ -0,0 +1,7 @@
        6620  +
GET
        6621  +
/
        6622  +
%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
        6623  +
host:example.amazonaws.com
        6624  +
        6625  +
host
        6626  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5063   6627   
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
 5064   6628   
new file mode 100644
 5065   6629   
index 0000000..92107f2
 5066         -
-- /dev/null
        6630  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 5067   6631   
@@ -0,0 +1 @@
        6632  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 5068   6633   
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
 5069   6634   
new file mode 100644
 5070   6635   
index 0000000..bb8a75b
 5071         -
-- /dev/null
        6636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 5072   6637   
@@ -0,0 +1,3 @@
        6638  +
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
        6639  +
Host:example.amazonaws.com
        6640  +
 5073   6641   
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
 5074   6642   
new file mode 100644
 5075   6643   
index 0000000..9fa94c7
 5076         -
-- /dev/null
        6644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 5077   6645   
@@ -0,0 +1,4 @@
        6646  +
AWS4-ECDSA-P256-SHA256
        6647  +
20150830T123600Z
        6648  +
20150830/service/aws4_request
        6649  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 5078   6650   
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
 5079   6651   
new file mode 100644
 5080   6652   
index 0000000..aff333a
 5081         -
-- /dev/null
        6653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 5082   6654   
@@ -0,0 +1,2 @@
        6655  +
GET /?ሴ=bar HTTP/1.1
        6656  +
Host:example.amazonaws.com
 5083   6657   
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
 5084   6658   
new file mode 100644
 5085   6659   
index 0000000..a334e18
 5086         -
-- /dev/null
        6660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 5087   6661   
@@ -0,0 +1,13 @@
        6662  +
{
        6663  +
    "credentials": {
        6664  +
        "access_key_id": "AKIDEXAMPLE",
        6665  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6666  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6667  +
    },
        6668  +
    "expiration_in_seconds": 3600,
        6669  +
    "normalize": true,
        6670  +
    "region": "us-east-1",
        6671  +
    "service": "service",
        6672  +
    "sign_body": false,
        6673  +
    "timestamp": "2015-08-30T12:36:00Z"
        6674  +
}
              \
 No newline at end of file
 5088   6675   
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
 5089   6676   
similarity index 99%
 5090   6677   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 5091   6678   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5092   6679   
index f14defd..0e9ad42 100644
 5093         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
        6680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5094   6681   
@@ -1,10 +1,10 @@
 5095   6682   
GET
 5096   6683   
/
 5097   6684   
 5098   6685   
host:example.amazonaws.com
 5099   6686   
x-amz-date:20150830T123600Z
 5100   6687   
x-amz-region-set:us-east-1
 5101   6688   
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
 5102   6689   
 5103   6690   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5104         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6691  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5105   6692   
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
 5106   6693   
new file mode 100644
 5107   6694   
index 0000000..a7673b5
 5108         -
-- /dev/null
        6695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 5109   6696   
@@ -0,0 +1 @@
        6697  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 5110   6698   
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
 5111   6699   
new file mode 100644
 5112   6700   
index 0000000..ed16e76
 5113         -
-- /dev/null
        6701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 5114   6702   
@@ -0,0 +1,7 @@
        6703  +
GET / HTTP/1.1
        6704  +
Host:example.amazonaws.com
        6705  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6706  +
X-Amz-Date:20150830T123600Z
        6707  +
X-Amz-Region-Set:us-east-1
        6708  +
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
        6709  +
 5115   6710   
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
 5116   6711   
similarity index 99%
 5117   6712   
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
 5118   6713   
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
 5119   6714   
index 4edece5..6c1ec65 100644
 5120         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-string-to-sign.txt
        6715  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-string-to-sign.txt
 5121   6716   
@@ -1,4 +1,4 @@
 5122   6717   
AWS4-ECDSA-P256-SHA256
 5123   6718   
20150830T123600Z
 5124   6719   
20150830/service/aws4_request
 5125         -
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
        6720  +
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
              \
 No newline at end of file
 5126   6721   
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
 5127   6722   
new file mode 100644
 5128   6723   
index 0000000..379dcb2
 5129         -
-- /dev/null
        6724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 5130   6725   
@@ -0,0 +1,4 @@
        6726  +
{
        6727  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6728  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6729  +
}
 5131   6730   
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
 5132   6731   
similarity index 99%
 5133   6732   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 5134   6733   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5135   6734   
index 7c042af..1876b42 100644
 5136         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
        6735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5137   6736   
@@ -1,7 +1,7 @@
 5138   6737   
GET
 5139   6738   
/
 5140   6739   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Security-Token=6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267&X-Amz-SignedHeaders=host
 5141   6740   
host:example.amazonaws.com
 5142   6741   
 5143   6742   
host
 5144         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6743  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5145   6744   
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
 5146   6745   
new file mode 100644
 5147   6746   
index 0000000..903dfb4
 5148         -
-- /dev/null
        6747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 5149   6748   
@@ -0,0 +1 @@
        6749  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 5150   6750   
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
 5151   6751   
new file mode 100644
 5152   6752   
index 0000000..bf1d246
 5153         -
-- /dev/null
        6753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 5154   6754   
@@ -0,0 +1,3 @@
        6755  +
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
        6756  +
Host:example.amazonaws.com
        6757  +
 5155   6758   
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
 5156   6759   
similarity index 99%
 5157   6760   
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
 5158   6761   
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
 5159   6762   
index 0fd066a..f1b1790 100644
 5160         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-string-to-sign.txt
        6763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-string-to-sign.txt
 5161   6764   
@@ -1,4 +1,4 @@
 5162   6765   
AWS4-ECDSA-P256-SHA256
 5163   6766   
20150830T123600Z
 5164   6767   
20150830/service/aws4_request
 5165         -
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
        6768  +
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
              \
 No newline at end of file
 5166   6769   
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
 5167   6770   
similarity index 60%
 5168   6771   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 5169   6772   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5170   6773   
index 0f7a9bf..e659c3b 100644
 5171         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6774  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5172   6775   
@@ -1,3 +1,2 @@
 5173   6776   
GET / HTTP/1.1
 5174   6777   
Host:example.amazonaws.com
 5175         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5176   6778   
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
 5177   6779   
new file mode 100644
 5178   6780   
index 0000000..76db73d
 5179         -
-- /dev/null
        6781  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 5180   6782   
@@ -0,0 +1,9 @@
        6783  +
GET
        6784  +
/
        6785  +
        6786  +
host:example.amazonaws.com
        6787  +
x-amz-date:20150830T123600Z
        6788  +
x-amz-region-set:us-east-1
        6789  +
        6790  +
host;x-amz-date;x-amz-region-set
        6791  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5181   6792   
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
 5182   6793   
new file mode 100644
 5183   6794   
index 0000000..0468d80
 5184         -
-- /dev/null
        6795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 5185   6796   
@@ -0,0 +1,12 @@
        6797  +
{
        6798  +
    "credentials": {
        6799  +
        "access_key_id": "AKIDEXAMPLE",
        6800  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6801  +
    },
        6802  +
    "expiration_in_seconds": 3600,
        6803  +
    "normalize": true,
        6804  +
    "region": "us-east-1",
        6805  +
    "service": "service",
        6806  +
    "sign_body": false,
        6807  +
    "timestamp": "2015-08-30T12:36:00Z"
        6808  +
}
              \
 No newline at end of file
 5186   6809   
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
 5187   6810   
new file mode 100644
 5188   6811   
index 0000000..76db73d
 5189         -
-- /dev/null
        6812  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 5190   6813   
@@ -0,0 +1,9 @@
        6814  +
GET
        6815  +
/
        6816  +
        6817  +
host:example.amazonaws.com
        6818  +
x-amz-date:20150830T123600Z
        6819  +
x-amz-region-set:us-east-1
        6820  +
        6821  +
host;x-amz-date;x-amz-region-set
        6822  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5191   6823   
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
 5192   6824   
new file mode 100644
 5193   6825   
index 0000000..a96ff24
 5194         -
-- /dev/null
        6826  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 5195   6827   
@@ -0,0 +1 @@
        6828  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 5196   6829   
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
 5197   6830   
new file mode 100644
 5198   6831   
index 0000000..689078b
 5199         -
-- /dev/null
        6832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 5200   6833   
@@ -0,0 +1,6 @@
        6834  +
GET / HTTP/1.1
        6835  +
Host:example.amazonaws.com
        6836  +
X-Amz-Date:20150830T123600Z
        6837  +
X-Amz-Region-Set:us-east-1
        6838  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6839  +
 5201   6840   
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
 5202   6841   
new file mode 100644
 5203   6842   
index 0000000..600f1d8
 5204         -
-- /dev/null
        6843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 5205   6844   
@@ -0,0 +1,4 @@
        6845  +
AWS4-ECDSA-P256-SHA256
        6846  +
20150830T123600Z
        6847  +
20150830/service/aws4_request
        6848  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5206   6849   
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
 5207   6850   
new file mode 100644
 5208   6851   
index 0000000..379dcb2
 5209         -
-- /dev/null
        6852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 5210   6853   
@@ -0,0 +1,4 @@
        6854  +
{
        6855  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6856  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6857  +
}
 5211   6858   
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
 5212   6859   
new file mode 100644
 5213   6860   
index 0000000..779c51c
 5214         -
-- /dev/null
        6861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 5215   6862   
@@ -0,0 +1,7 @@
        6863  +
GET
        6864  +
/
        6865  +
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
        6866  +
host:example.amazonaws.com
        6867  +
        6868  +
host
        6869  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5216   6870   
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
 5217   6871   
new file mode 100644
 5218   6872   
index 0000000..cc42158
 5219         -
-- /dev/null
        6873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 5220   6874   
@@ -0,0 +1 @@
        6875  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 5221   6876   
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
 5222   6877   
new file mode 100644
 5223   6878   
index 0000000..dc6d01d
 5224         -
-- /dev/null
        6879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 5225   6880   
@@ -0,0 +1,3 @@
        6881  +
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
        6882  +
Host:example.amazonaws.com
        6883  +
 5226   6884   
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
 5227   6885   
new file mode 100644
 5228   6886   
index 0000000..6e29a7e
 5229         -
-- /dev/null
        6887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 5230   6888   
@@ -0,0 +1,4 @@
        6889  +
AWS4-ECDSA-P256-SHA256
        6890  +
20150830T123600Z
        6891  +
20150830/service/aws4_request
        6892  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5231   6893   
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
 5232   6894   
new file mode 100644
 5233   6895   
index 0000000..e659c3b
 5234         -
-- /dev/null
        6896  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 5235   6897   
@@ -0,0 +1,2 @@
        6898  +
GET / HTTP/1.1
        6899  +
Host:example.amazonaws.com
 5236   6900   
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
 5237   6901   
new file mode 100644
 5238   6902   
index 0000000..600f1d8
 5239         -
-- /dev/null
        6903  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 5240   6904   
@@ -0,0 +1,4 @@
        6905  +
AWS4-ECDSA-P256-SHA256
        6906  +
20150830T123600Z
        6907  +
20150830/service/aws4_request
        6908  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5241   6909   
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
 5242   6910   
new file mode 100644
 5243   6911   
index 0000000..0468d80
 5244         -
-- /dev/null
        6912  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 5245   6913   
@@ -0,0 +1,12 @@
        6914  +
{
        6915  +
    "credentials": {
        6916  +
        "access_key_id": "AKIDEXAMPLE",
        6917  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6918  +
    },
        6919  +
    "expiration_in_seconds": 3600,
        6920  +
    "normalize": true,
        6921  +
    "region": "us-east-1",
        6922  +
    "service": "service",
        6923  +
    "sign_body": false,
        6924  +
    "timestamp": "2015-08-30T12:36:00Z"
        6925  +
}
              \
 No newline at end of file
 5246   6926   
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
 5247   6927   
similarity index 99%
 5248   6928   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 5249   6929   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5250   6930   
index a6942c1..e881ac7 100644
 5251         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
        6931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5252   6932   
@@ -1,9 +1,9 @@
 5253   6933   
POST
 5254   6934   
/
 5255   6935   
 5256   6936   
host:example.amazonaws.com
 5257   6937   
x-amz-date:20150830T123600Z
 5258   6938   
x-amz-region-set:us-east-1
 5259   6939   
 5260   6940   
host;x-amz-date;x-amz-region-set
 5261         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6941  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5262   6942   
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
 5263   6943   
new file mode 100644
 5264   6944   
index 0000000..4210210
 5265         -
-- /dev/null
        6945  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 5266   6946   
@@ -0,0 +1 @@
        6947  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 5267   6948   
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
 5268   6949   
new file mode 100644
 5269   6950   
index 0000000..257b110
 5270         -
-- /dev/null
        6951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 5271   6952   
@@ -0,0 +1,6 @@
        6953  +
POST / HTTP/1.1
        6954  +
Host:example.amazonaws.com
        6955  +
X-Amz-Date:20150830T123600Z
        6956  +
X-Amz-Region-Set:us-east-1
        6957  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        6958  +
 5272   6959   
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
 5273   6960   
similarity index 99%
 5274   6961   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 5275   6962   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5276   6963   
index d5650cb..f8adf13 100644
 5277         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
        6964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5278   6965   
@@ -1,4 +1,4 @@
 5279   6966   
AWS4-ECDSA-P256-SHA256
 5280   6967   
20150830T123600Z
 5281   6968   
20150830/service/aws4_request
 5282         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        6969  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5283   6970   
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
 5284   6971   
new file mode 100644
 5285   6972   
index 0000000..379dcb2
 5286         -
-- /dev/null
        6973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 5287   6974   
@@ -0,0 +1,4 @@
        6975  +
{
        6976  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6977  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6978  +
}
 5288   6979   
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
 5289   6980   
similarity index 99%
 5290   6981   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 5291   6982   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5292   6983   
index e48ce07..5ea8e3c 100644
 5293         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
        6984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5294   6985   
@@ -1,7 +1,7 @@
 5295   6986   
POST
 5296   6987   
/
 5297   6988   
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
 5298   6989   
host:example.amazonaws.com
 5299   6990   
 5300   6991   
host
 5301         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6992  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5302   6993   
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
 5303   6994   
new file mode 100644
 5304   6995   
index 0000000..9e2069e
 5305         -
-- /dev/null
        6996  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 5306   6997   
@@ -0,0 +1 @@
        6998  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 5307   6999   
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
 5308   7000   
new file mode 100644
 5309   7001   
index 0000000..67f5d29
 5310         -
-- /dev/null
        7002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 5311   7003   
@@ -0,0 +1,3 @@
        7004  +
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
        7005  +
Host:example.amazonaws.com
        7006  +
 5312   7007   
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
 5313   7008   
similarity index 99%
 5314   7009   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 5315   7010   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5316   7011   
index 34e3382..711c162 100644
 5317         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
        7012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5318   7013   
@@ -1,4 +1,4 @@
 5319   7014   
AWS4-ECDSA-P256-SHA256
 5320   7015   
20150830T123600Z
 5321   7016   
20150830/service/aws4_request
 5322         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7017  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5323   7018   
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
 5324   7019   
similarity index 61%
 5325   7020   
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
 5326   7021   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5327   7022   
index 3dc4179..3f0a82a 100644
 5328         -
-- 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
        7023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5329   7024   
@@ -1,3 +1,2 @@
 5330   7025   
POST / HTTP/1.1
 5331   7026   
Host:example.amazonaws.com
 5332         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5333   7027   
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
 5334   7028   
new file mode 100644
 5335   7029   
index 0000000..0468d80
 5336         -
-- /dev/null
        7030  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 5337   7031   
@@ -0,0 +1,12 @@
        7032  +
{
        7033  +
    "credentials": {
        7034  +
        "access_key_id": "AKIDEXAMPLE",
        7035  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7036  +
    },
        7037  +
    "expiration_in_seconds": 3600,
        7038  +
    "normalize": true,
        7039  +
    "region": "us-east-1",
        7040  +
    "service": "service",
        7041  +
    "sign_body": false,
        7042  +
    "timestamp": "2015-08-30T12:36:00Z"
        7043  +
}
              \
 No newline at end of file
 5338   7044   
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
 5339   7045   
similarity index 99%
 5340   7046   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 5341   7047   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5342   7048   
index a8e1727..2883822 100644
 5343         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
        7049  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5344   7050   
@@ -1,10 +1,10 @@
 5345   7051   
POST
 5346   7052   
/
 5347   7053   
 5348   7054   
host:example.amazonaws.com
 5349   7055   
my-header1:value1
 5350   7056   
x-amz-date:20150830T123600Z
 5351   7057   
x-amz-region-set:us-east-1
 5352   7058   
 5353   7059   
host;my-header1;x-amz-date;x-amz-region-set
 5354         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7060  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5355   7061   
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
 5356   7062   
new file mode 100644
 5357   7063   
index 0000000..e3c2e6e
 5358         -
-- /dev/null
        7064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 5359   7065   
@@ -0,0 +1 @@
        7066  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 5360   7067   
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
 5361   7068   
new file mode 100644
 5362   7069   
index 0000000..1d6e288
 5363         -
-- /dev/null
        7070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 5364   7071   
@@ -0,0 +1,7 @@
        7072  +
POST / HTTP/1.1
        7073  +
Host:example.amazonaws.com
        7074  +
My-Header1:value1
        7075  +
X-Amz-Date:20150830T123600Z
        7076  +
X-Amz-Region-Set:us-east-1
        7077  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        7078  +
 5365   7079   
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
 5366   7080   
similarity index 99%
 5367   7081   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 5368   7082   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5369   7083   
index f6e3e9b..7c5236a 100644
 5370         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
        7084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5371   7085   
@@ -1,4 +1,4 @@
 5372   7086   
AWS4-ECDSA-P256-SHA256
 5373   7087   
20150830T123600Z
 5374   7088   
20150830/service/aws4_request
 5375         -
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
        7089  +
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
              \
 No newline at end of file
 5376   7090   
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
 5377   7091   
new file mode 100644
 5378   7092   
index 0000000..379dcb2
 5379         -
-- /dev/null
        7093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 5380   7094   
@@ -0,0 +1,4 @@
        7095  +
{
        7096  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7097  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7098  +
}
 5381   7099   
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
 5382   7100   
similarity index 99%
 5383   7101   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 5384   7102   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5385   7103   
index 0ae73e1..2cf3f29 100644
 5386         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
        7104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5387   7105   
@@ -1,8 +1,8 @@
 5388   7106   
POST
 5389   7107   
/
 5390   7108   
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
 5391   7109   
host:example.amazonaws.com
 5392   7110   
my-header1:value1
 5393   7111   
 5394   7112   
host;my-header1
 5395         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7113  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5396   7114   
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
 5397   7115   
new file mode 100644
 5398   7116   
index 0000000..2a08401
 5399         -
-- /dev/null
        7117  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 5400   7118   
@@ -0,0 +1 @@
        7119  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 5401   7120   
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
 5402   7121   
new file mode 100644
 5403   7122   
index 0000000..8d2343f
 5404         -
-- /dev/null
        7123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 5405   7124   
@@ -0,0 +1,4 @@
        7125  +
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
        7126  +
Host:example.amazonaws.com
        7127  +
My-Header1:value1
        7128  +
 5406   7129   
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
 5407   7130   
similarity index 99%
 5408   7131   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 5409   7132   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5410   7133   
index 8cb96bf..2c4db7a 100644
 5411         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
        7134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5412   7135   
@@ -1,4 +1,4 @@
 5413   7136   
AWS4-ECDSA-P256-SHA256
 5414   7137   
20150830T123600Z
 5415   7138   
20150830/service/aws4_request
 5416         -
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
        7139  +
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
              \
 No newline at end of file
 5417   7140   
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
 5418   7141   
similarity index 69%
 5419   7142   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 5420   7143   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5421   7144   
index 0253f19..917720e 100644
 5422         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        7145  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5423   7146   
@@ -1,4 +1,3 @@
 5424   7147   
POST / HTTP/1.1
 5425   7148   
Host:example.amazonaws.com
 5426   7149   
My-Header1:value1
 5427         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5428   7150   
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
 5429   7151   
new file mode 100644
 5430   7152   
index 0000000..0468d80
 5431         -
-- /dev/null
        7153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 5432   7154   
@@ -0,0 +1,12 @@
        7155  +
{
        7156  +
    "credentials": {
        7157  +
        "access_key_id": "AKIDEXAMPLE",
        7158  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7159  +
    },
        7160  +
    "expiration_in_seconds": 3600,
        7161  +
    "normalize": true,
        7162  +
    "region": "us-east-1",
        7163  +
    "service": "service",
        7164  +
    "sign_body": false,
        7165  +
    "timestamp": "2015-08-30T12:36:00Z"
        7166  +
}
              \
 No newline at end of file
 5433   7167   
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
 5434   7168   
similarity index 99%
 5435   7169   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 5436   7170   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5437   7171   
index 1dc3ef8..164e65c 100644
 5438         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
        7172  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5439   7173   
@@ -1,10 +1,10 @@
 5440   7174   
POST
 5441   7175   
/
 5442   7176   
 5443   7177   
host:example.amazonaws.com
 5444   7178   
my-header1:VALUE1
 5445   7179   
x-amz-date:20150830T123600Z
 5446   7180   
x-amz-region-set:us-east-1
 5447   7181   
 5448   7182   
host;my-header1;x-amz-date;x-amz-region-set
 5449         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7183  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5450   7184   
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
 5451   7185   
new file mode 100644
 5452   7186   
index 0000000..7072b0e
 5453         -
-- /dev/null
        7187  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 5454   7188   
@@ -0,0 +1 @@
        7189  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 5455   7190   
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
 5456   7191   
new file mode 100644
 5457   7192   
index 0000000..17f5e3e
 5458         -
-- /dev/null
        7193  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 5459   7194   
@@ -0,0 +1,7 @@
        7195  +
POST / HTTP/1.1
        7196  +
Host:example.amazonaws.com
        7197  +
My-Header1:VALUE1
        7198  +
X-Amz-Date:20150830T123600Z
        7199  +
X-Amz-Region-Set:us-east-1
        7200  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        7201  +
 5460   7202   
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
 5461   7203   
similarity index 99%
 5462   7204   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 5463   7205   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5464   7206   
index 59c7e45..620f54e 100644
 5465         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
        7207  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5466   7208   
@@ -1,4 +1,4 @@
 5467   7209   
AWS4-ECDSA-P256-SHA256
 5468   7210   
20150830T123600Z
 5469   7211   
20150830/service/aws4_request
 5470         -
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
        7212  +
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
              \
 No newline at end of file
 5471   7213   
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
 5472   7214   
new file mode 100644
 5473   7215   
index 0000000..379dcb2
 5474         -
-- /dev/null
        7216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 5475   7217   
@@ -0,0 +1,4 @@
        7218  +
{
        7219  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7220  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7221  +
}
 5476   7222   
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
 5477   7223   
similarity index 99%
 5478   7224   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 5479   7225   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5480   7226   
index 377e6f3..23e0da3 100644
 5481         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
        7227  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5482   7228   
@@ -1,8 +1,8 @@
 5483   7229   
POST
 5484   7230   
/
 5485   7231   
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
 5486   7232   
host:example.amazonaws.com
 5487   7233   
my-header1:VALUE1
 5488   7234   
 5489   7235   
host;my-header1
 5490         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7236  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5491   7237   
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
 5492   7238   
new file mode 100644
 5493   7239   
index 0000000..a18acb8
 5494         -
-- /dev/null
        7240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 5495   7241   
@@ -0,0 +1 @@
        7242  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 5496   7243   
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
 5497   7244   
new file mode 100644
 5498   7245   
index 0000000..7cbdcfa
 5499         -
-- /dev/null
        7246  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 5500   7247   
@@ -0,0 +1,4 @@
        7248  +
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
        7249  +
Host:example.amazonaws.com
        7250  +
My-Header1:VALUE1
        7251  +
 5501   7252   
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
 5502   7253   
similarity index 99%
 5503   7254   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 5504   7255   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5505   7256   
index 84a7afd..0c90627 100644
 5506         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
        7257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5507   7258   
@@ -1,4 +1,4 @@
 5508   7259   
AWS4-ECDSA-P256-SHA256
 5509   7260   
20150830T123600Z
 5510   7261   
20150830/service/aws4_request
 5511         -
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
        7262  +
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
              \
 No newline at end of file
 5512   7263   
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
 5513   7264   
similarity index 69%
 5514   7265   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 5515   7266   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5516   7267   
index 3f9987a..5f14c91 100644
 5517         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        7268  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5518   7269   
@@ -1,4 +1,3 @@
 5519   7270   
POST / HTTP/1.1
 5520   7271   
Host:example.amazonaws.com
 5521   7272   
My-Header1:VALUE1
 5522         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5523   7273   
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
 5524   7274   
new file mode 100644
 5525   7275   
index 0000000..8f1d5ce
 5526         -
-- /dev/null
        7276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 5527   7277   
@@ -0,0 +1,14 @@
        7278  +
{
        7279  +
    "credentials": {
        7280  +
        "access_key_id": "AKIDEXAMPLE",
        7281  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7282  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7283  +
    },
        7284  +
    "expiration_in_seconds": 3600,
        7285  +
    "normalize": true,
        7286  +
    "region": "us-east-1",
        7287  +
    "service": "service",
        7288  +
    "sign_body": false,
        7289  +
    "timestamp": "2015-08-30T12:36:00Z",
        7290  +
    "omit_session_token": true
        7291  +
}
 5528   7292   
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
 5529   7293   
similarity index 99%
 5530   7294   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 5531   7295   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5532   7296   
index a6942c1..e881ac7 100644
 5533         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
        7297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5534   7298   
@@ -1,9 +1,9 @@
 5535   7299   
POST
 5536   7300   
/
 5537   7301   
 5538   7302   
host:example.amazonaws.com
 5539   7303   
x-amz-date:20150830T123600Z
 5540   7304   
x-amz-region-set:us-east-1
 5541   7305   
 5542   7306   
host;x-amz-date;x-amz-region-set
 5543         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7307  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5544   7308   
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
 5545   7309   
new file mode 100644
 5546   7310   
index 0000000..9c5ecb9
 5547         -
-- /dev/null
        7311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 5548   7312   
@@ -0,0 +1 @@
        7313  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 5549   7314   
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
 5550   7315   
similarity index 52%
 5551   7316   
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
 5552   7317   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5553   7318   
index 9d91775..61b6527 100644
 5554         -
-- 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
        7319  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5555   7320   
@@ -1,4 +1,7 @@
 5556   7321   
POST / HTTP/1.1
 5557   7322   
Host:example.amazonaws.com
        7323  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5558   7324   
X-Amz-Date:20150830T123600Z
 5559         -
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
        7325  +
X-Amz-Region-Set:us-east-1
        7326  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        7327  +
 5560   7328   
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
 5561   7329   
similarity index 99%
 5562   7330   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 5563   7331   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5564   7332   
index d5650cb..f8adf13 100644
 5565         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
        7333  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5566   7334   
@@ -1,4 +1,4 @@
 5567   7335   
AWS4-ECDSA-P256-SHA256
 5568   7336   
20150830T123600Z
 5569   7337   
20150830/service/aws4_request
 5570         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7338  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5571   7339   
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
 5572   7340   
new file mode 100644
 5573   7341   
index 0000000..379dcb2
 5574         -
-- /dev/null
        7342  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 5575   7343   
@@ -0,0 +1,4 @@
        7344  +
{
        7345  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7346  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7347  +
}
 5576   7348   
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
 5577   7349   
similarity index 99%
 5578   7350   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 5579   7351   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5580   7352   
index e48ce07..5ea8e3c 100644
 5581         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
        7353  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5582   7354   
@@ -1,7 +1,7 @@
 5583   7355   
POST
 5584   7356   
/
 5585   7357   
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
 5586   7358   
host:example.amazonaws.com
 5587   7359   
 5588   7360   
host
 5589         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7361  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5590   7362   
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
 5591   7363   
new file mode 100644
 5592   7364   
index 0000000..ff8823a
 5593         -
-- /dev/null
        7365  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 5594   7366   
@@ -0,0 +1 @@
        7367  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 5595   7368   
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
 5596   7369   
new file mode 100644
 5597   7370   
index 0000000..cfac41b
 5598         -
-- /dev/null
        7371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 5599   7372   
@@ -0,0 +1,3 @@
        7373  +
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
        7374  +
Host:example.amazonaws.com
        7375  +
 5600   7376   
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
 5601   7377   
similarity index 99%
 5602   7378   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 5603   7379   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5604   7380   
index 34e3382..711c162 100644
 5605         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
        7381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5606   7382   
@@ -1,4 +1,4 @@
 5607   7383   
AWS4-ECDSA-P256-SHA256
 5608   7384   
20150830T123600Z
 5609   7385   
20150830/service/aws4_request
 5610         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7386  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5611   7387   
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
 5612   7388   
similarity index 61%
 5613   7389   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 5614   7390   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5615   7391   
index 3dc4179..3f0a82a 100644
 5616         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        7392  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5617   7393   
@@ -1,3 +1,2 @@
 5618   7394   
POST / HTTP/1.1
 5619   7395   
Host:example.amazonaws.com
 5620         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5621   7396   
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
 5622   7397   
new file mode 100644
 5623   7398   
index 0000000..5187392
 5624         -
-- /dev/null
        7399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 5625   7400   
@@ -0,0 +1,14 @@
        7401  +
{
        7402  +
    "credentials": {
        7403  +
        "access_key_id": "AKIDEXAMPLE",
        7404  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7405  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7406  +
    },
        7407  +
    "expiration_in_seconds": 3600,
        7408  +
    "normalize": true,
        7409  +
    "region": "us-east-1",
        7410  +
    "service": "service",
        7411  +
    "sign_body": false,
        7412  +
    "timestamp": "2015-08-30T12:36:00Z",
        7413  +
    "omit_session_token": false
        7414  +
}
 5626   7415   
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
 5627   7416   
similarity index 99%
 5628   7417   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 5629   7418   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5630   7419   
index dd408c8..e95924e 100644
 5631         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
        7420  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5632   7421   
@@ -1,10 +1,10 @@
 5633   7422   
POST
 5634   7423   
/
 5635   7424   
 5636   7425   
host:example.amazonaws.com
 5637   7426   
x-amz-date:20150830T123600Z
 5638   7427   
x-amz-region-set:us-east-1
 5639   7428   
x-amz-security-token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5640   7429   
 5641   7430   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5642         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7431  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5643   7432   
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
 5644   7433   
new file mode 100644
 5645   7434   
index 0000000..1573f07
 5646         -
-- /dev/null
        7435  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 5647   7436   
@@ -0,0 +1 @@
        7437  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 5648   7438   
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
 5649   7439   
new file mode 100644
 5650   7440   
index 0000000..6ef9a08
 5651         -
-- /dev/null
        7441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 5652   7442   
@@ -0,0 +1,7 @@
        7443  +
POST / HTTP/1.1
        7444  +
Host:example.amazonaws.com
        7445  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        7446  +
X-Amz-Date:20150830T123600Z
        7447  +
X-Amz-Region-Set:us-east-1
        7448  +
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
        7449  +
 5653   7450   
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
 5654   7451   
similarity index 99%
 5655   7452   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 5656   7453   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5657   7454   
index f352b54..3c3235f 100644
 5658         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
        7455  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5659   7456   
@@ -1,4 +1,4 @@
 5660   7457   
AWS4-ECDSA-P256-SHA256
 5661   7458   
20150830T123600Z
 5662   7459   
20150830/service/aws4_request
 5663         -
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
        7460  +
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
              \
 No newline at end of file
 5664   7461   
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
 5665   7462   
new file mode 100644
 5666   7463   
index 0000000..379dcb2
 5667         -
-- /dev/null
        7464  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 5668   7465   
@@ -0,0 +1,4 @@
        7466  +
{
        7467  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7468  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7469  +
}
 5669   7470   
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
 5670   7471   
similarity index 99%
 5671   7472   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 5672   7473   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5673   7474   
index 832cdc0..63b7de5 100644
 5674         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
        7475  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5675   7476   
@@ -1,7 +1,7 @@
 5676   7477   
POST
 5677   7478   
/
 5678   7479   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-SignedHeaders=host
 5679   7480   
host:example.amazonaws.com
 5680   7481   
 5681   7482   
host
 5682         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7483  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5683   7484   
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
 5684   7485   
new file mode 100644
 5685   7486   
index 0000000..713f57c
 5686         -
-- /dev/null
        7487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 5687   7488   
@@ -0,0 +1 @@
        7489  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 5688   7490   
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
 5689   7491   
new file mode 100644
 5690   7492   
index 0000000..32c3bb3
 5691         -
-- /dev/null
        7493  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 5692   7494   
@@ -0,0 +1,3 @@
        7495  +
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
        7496  +
Host:example.amazonaws.com
        7497  +
 5693   7498   
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
 5694   7499   
similarity index 99%
 5695   7500   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 5696   7501   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5697   7502   
index d7f3668..b46cd8c 100644
 5698         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
        7503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5699   7504   
@@ -1,4 +1,4 @@
 5700   7505   
AWS4-ECDSA-P256-SHA256
 5701   7506   
20150830T123600Z
 5702   7507   
20150830/service/aws4_request
 5703         -
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
        7508  +
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
              \
 No newline at end of file
 5704   7509   
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
 5705   7510   
similarity index 60%
 5706   7511   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 5707   7512   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5708   7513   
index 8b5efc8..3f0a82a 100644
 5709         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        7514  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5710   7515   
@@ -1,3 +1,2 @@
 5711   7516   
POST / HTTP/1.1
 5712   7517   
Host:example.amazonaws.com
 5713         -
X-Amz-Date:20150830T123600Z
 5714   7518   
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
 5715   7519   
new file mode 100644
 5716   7520   
index 0000000..0468d80
 5717         -
-- /dev/null
        7521  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 5718   7522   
@@ -0,0 +1,12 @@
        7523  +
{
        7524  +
    "credentials": {
        7525  +
        "access_key_id": "AKIDEXAMPLE",
        7526  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7527  +
    },
        7528  +
    "expiration_in_seconds": 3600,
        7529  +
    "normalize": true,
        7530  +
    "region": "us-east-1",
        7531  +
    "service": "service",
        7532  +
    "sign_body": false,
        7533  +
    "timestamp": "2015-08-30T12:36:00Z"
        7534  +
}
              \
 No newline at end of file
 5719   7535   
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
 5720   7536   
similarity index 99%
 5721   7537   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 5722   7538   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5723   7539   
index 02af60f..34b8c11 100644
 5724         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
        7540  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5725   7541   
@@ -1,9 +1,9 @@
 5726   7542   
POST
 5727   7543   
/
 5728   7544   
Param1=value1
 5729   7545   
host:example.amazonaws.com
 5730   7546   
x-amz-date:20150830T123600Z
 5731   7547   
x-amz-region-set:us-east-1
 5732   7548   
 5733   7549   
host;x-amz-date;x-amz-region-set
 5734         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7550  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5735   7551   
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
 5736   7552   
new file mode 100644
 5737   7553   
index 0000000..aac6427
 5738         -
-- /dev/null
        7554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 5739   7555   
@@ -0,0 +1 @@
        7556  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 5740   7557   
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
 5741   7558   
new file mode 100644
 5742   7559   
index 0000000..a611436
 5743         -
-- /dev/null
        7560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 5744   7561   
@@ -0,0 +1,6 @@
        7562  +
POST /?Param1=value1 HTTP/1.1
        7563  +
Host:example.amazonaws.com
        7564  +
X-Amz-Date:20150830T123600Z
        7565  +
X-Amz-Region-Set:us-east-1
        7566  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        7567  +
 5745   7568   
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
 5746   7569   
similarity index 99%
 5747   7570   
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
 5748   7571   
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
 5749   7572   
index 4256b4f..ad88dff 100644
 5750         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt
        7573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
 5751   7574   
@@ -1,4 +1,4 @@
 5752   7575   
AWS4-ECDSA-P256-SHA256
 5753   7576   
20150830T123600Z
 5754   7577   
20150830/service/aws4_request
 5755         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7578  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 5756   7579   
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
 5757   7580   
new file mode 100644
 5758   7581   
index 0000000..379dcb2
 5759         -
-- /dev/null
        7582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 5760   7583   
@@ -0,0 +1,4 @@
        7584  +
{
        7585  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7586  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7587  +
}
 5761   7588   
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
 5762   7589   
similarity index 99%
 5763   7590   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 5764   7591   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5765   7592   
index fa84bbd..76d5ad6 100644
 5766         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
        7593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5767   7594   
@@ -1,7 +1,7 @@
 5768   7595   
POST
 5769   7596   
/
 5770   7597   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5771   7598   
host:example.amazonaws.com
 5772   7599   
 5773   7600   
host
 5774         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7601  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5775   7602   
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
 5776   7603   
new file mode 100644
 5777   7604   
index 0000000..4cb1c94
 5778         -
-- /dev/null
        7605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 5779   7606   
@@ -0,0 +1 @@
        7607  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 5780   7608   
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
 5781   7609   
new file mode 100644
 5782   7610   
index 0000000..bd22b97
 5783         -
-- /dev/null
        7611  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 5784   7612   
@@ -0,0 +1,3 @@
        7613  +
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
        7614  +
Host:example.amazonaws.com
        7615  +
 5785   7616   
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
 5786   7617   
similarity index 99%
 5787   7618   
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
 5788   7619   
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
 5789   7620   
index de270ef..8c9d319 100644
 5790         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt
        7621  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
 5791   7622   
@@ -1,4 +1,4 @@
 5792   7623   
AWS4-ECDSA-P256-SHA256
 5793   7624   
20150830T123600Z
 5794   7625   
20150830/service/aws4_request
 5795         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7626  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 5796   7627   
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
 5797   7628   
similarity index 67%
 5798   7629   
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
 5799   7630   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5800   7631   
index 9157bc7..c9d6e5d 100644
 5801         -
-- 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
        7632  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5802   7633   
@@ -1,3 +1,2 @@
 5803   7634   
POST /?Param1=value1 HTTP/1.1
 5804   7635   
Host:example.amazonaws.com
 5805         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5806   7636   
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
 5807   7637   
new file mode 100644
 5808   7638   
index 0000000..0468d80
 5809         -
-- /dev/null
        7639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 5810   7640   
@@ -0,0 +1,12 @@
        7641  +
{
        7642  +
    "credentials": {
        7643  +
        "access_key_id": "AKIDEXAMPLE",
        7644  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7645  +
    },
        7646  +
    "expiration_in_seconds": 3600,
        7647  +
    "normalize": true,
        7648  +
    "region": "us-east-1",
        7649  +
    "service": "service",
        7650  +
    "sign_body": false,
        7651  +
    "timestamp": "2015-08-30T12:36:00Z"
        7652  +
}
              \
 No newline at end of file
 5811   7653   
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
 5812   7654   
similarity index 99%
 5813   7655   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 5814   7656   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5815   7657   
index 02af60f..34b8c11 100644
 5816         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
        7658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5817   7659   
@@ -1,9 +1,9 @@
 5818   7660   
POST
 5819   7661   
/
 5820   7662   
Param1=value1
 5821   7663   
host:example.amazonaws.com
 5822   7664   
x-amz-date:20150830T123600Z
 5823   7665   
x-amz-region-set:us-east-1
 5824   7666   
 5825   7667   
host;x-amz-date;x-amz-region-set
 5826         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7668  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5827   7669   
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
 5828   7670   
new file mode 100644
 5829   7671   
index 0000000..34f75c8
 5830         -
-- /dev/null
        7672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 5831   7673   
@@ -0,0 +1 @@
        7674  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 5832   7675   
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
 5833   7676   
new file mode 100644
 5834   7677   
index 0000000..c731408
 5835         -
-- /dev/null
        7678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 5836   7679   
@@ -0,0 +1,6 @@
        7680  +
POST /?Param1=value1 HTTP/1.1
        7681  +
Host:example.amazonaws.com
        7682  +
X-Amz-Date:20150830T123600Z
        7683  +
X-Amz-Region-Set:us-east-1
        7684  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        7685  +
 5837   7686   
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
 5838   7687   
similarity index 99%
 5839   7688   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 5840   7689   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5841   7690   
index 4256b4f..ad88dff 100644
 5842         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
        7691  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5843   7692   
@@ -1,4 +1,4 @@
 5844   7693   
AWS4-ECDSA-P256-SHA256
 5845   7694   
20150830T123600Z
 5846   7695   
20150830/service/aws4_request
 5847         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7696  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 5848   7697   
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
 5849   7698   
new file mode 100644
 5850   7699   
index 0000000..379dcb2
 5851         -
-- /dev/null
        7700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 5852   7701   
@@ -0,0 +1,4 @@
        7702  +
{
        7703  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7704  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7705  +
}
 5853   7706   
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
 5854   7707   
similarity index 99%
 5855   7708   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 5856   7709   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 5857   7710   
index fa84bbd..76d5ad6 100644
 5858         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
        7711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 5859   7712   
@@ -1,7 +1,7 @@
 5860   7713   
POST
 5861   7714   
/
 5862   7715   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5863   7716   
host:example.amazonaws.com
 5864   7717   
 5865   7718   
host
 5866         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7719  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5867   7720   
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
 5868   7721   
new file mode 100644
 5869   7722   
index 0000000..ae000d6
 5870         -
-- /dev/null
        7723  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 5871   7724   
@@ -0,0 +1 @@
        7725  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 5872   7726   
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
 5873   7727   
new file mode 100644
 5874   7728   
index 0000000..a868f7d
 5875         -
-- /dev/null
        7729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 5876   7730   
@@ -0,0 +1,3 @@
        7731  +
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
        7732  +
Host:example.amazonaws.com
        7733  +
 5877   7734   
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
 5878   7735   
similarity index 99%
 5879   7736   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 5880   7737   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 5881   7738   
index de270ef..8c9d319 100644
 5882         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
        7739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 5883   7740   
@@ -1,4 +1,4 @@
 5884   7741   
AWS4-ECDSA-P256-SHA256
 5885   7742   
20150830T123600Z
 5886   7743   
20150830/service/aws4_request
 5887         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7744  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 5888   7745   
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
 5889   7746   
similarity index 67%
 5890   7747   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 5891   7748   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5892   7749   
index 9157bc7..c9d6e5d 100644
 5893         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        7750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5894   7751   
@@ -1,3 +1,2 @@
 5895   7752   
POST /?Param1=value1 HTTP/1.1
 5896   7753   
Host:example.amazonaws.com
 5897         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5898   7754   
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
 5899   7755   
new file mode 100644
 5900   7756   
index 0000000..0468d80
 5901         -
-- /dev/null
        7757  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 5902   7758   
@@ -0,0 +1,12 @@
        7759  +
{
        7760  +
    "credentials": {
        7761  +
        "access_key_id": "AKIDEXAMPLE",
        7762  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7763  +
    },
        7764  +
    "expiration_in_seconds": 3600,
        7765  +
    "normalize": true,
        7766  +
    "region": "us-east-1",
        7767  +
    "service": "service",
        7768  +
    "sign_body": false,
        7769  +
    "timestamp": "2015-08-30T12:36:00Z"
        7770  +
}
              \
 No newline at end of file
 5903   7771   
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
 5904   7772   
similarity index 99%
 5905   7773   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 5906   7774   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 5907   7775   
index a6942c1..e881ac7 100644
 5908         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
        7776  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 5909   7777   
@@ -1,9 +1,9 @@
 5910   7778   
POST
 5911   7779   
/
 5912   7780   
 5913   7781   
host:example.amazonaws.com
 5914   7782   
x-amz-date:20150830T123600Z
 5915   7783   
x-amz-region-set:us-east-1
 5916   7784   
 5917   7785   
host;x-amz-date;x-amz-region-set
 5918         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7786  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5919   7787   
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
 5920   7788   
new file mode 100644
 5921   7789   
index 0000000..7c5e47b
 5922         -
-- /dev/null
        7790  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 5923   7791   
@@ -0,0 +1 @@
        7792  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 5924   7793   
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
 5925   7794   
new file mode 100644
 5926   7795   
index 0000000..c0e50a0
 5927         -
-- /dev/null
        7796  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 5928   7797   
@@ -0,0 +1,6 @@
        7798  +
POST / HTTP/1.1
        7799  +
Host:example.amazonaws.com
        7800  +
X-Amz-Date:20150830T123600Z
        7801  +
X-Amz-Region-Set:us-east-1
        7802  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        7803  +
 5929   7804   
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
 5930   7805   
similarity index 99%
 5931   7806   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 5932   7807   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 5933   7808   
index d5650cb..f8adf13 100644
 5934         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
        7809  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 5935   7810   
@@ -1,4 +1,4 @@
 5936   7811   
AWS4-ECDSA-P256-SHA256
 5937   7812   
20150830T123600Z
 5938   7813   
20150830/service/aws4_request
 5939         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7814  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5940   7815   
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
 5941   7816   
new file mode 100644
 5942   7817   
index 0000000..379dcb2
 5943         -
-- /dev/null
        7818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 5944   7819   
@@ -0,0 +1,4 @@
        7820  +
{
        7821  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7822  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7823  +
}
 5945   7824   
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
 5946   7825   
similarity index 99%
 5947   7826   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 5948   7827   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 5949   7828   
index e48ce07..5ea8e3c 100644
 5950         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
        7829  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 5951   7830   
@@ -1,7 +1,7 @@
 5952   7831   
POST
 5953   7832   
/
 5954   7833   
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
 5955   7834   
host:example.amazonaws.com
 5956   7835   
 5957   7836   
host
 5958         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7837  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5959   7838   
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
 5960   7839   
new file mode 100644
 5961   7840   
index 0000000..ea8e3b4
 5962         -
-- /dev/null
        7841  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 5963   7842   
@@ -0,0 +1 @@
        7843  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 5964   7844   
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
 5965   7845   
new file mode 100644
 5966   7846   
index 0000000..616973f
 5967         -
-- /dev/null
        7847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 5968   7848   
@@ -0,0 +1,3 @@
        7849  +
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
        7850  +
Host:example.amazonaws.com
        7851  +
 5969   7852   
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
 5970   7853   
similarity index 99%
 5971   7854   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 5972   7855   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 5973   7856   
index 34e3382..711c162 100644
 5974         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
        7857  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 5975   7858   
@@ -1,4 +1,4 @@
 5976   7859   
AWS4-ECDSA-P256-SHA256
 5977   7860   
20150830T123600Z
 5978   7861   
20150830/service/aws4_request
 5979         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7862  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5980   7863   
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
 5981   7864   
new file mode 100644
 5982   7865   
index 0000000..3f0a82a
 5983         -
-- /dev/null
        7866  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 5984   7867   
@@ -0,0 +1,2 @@
        7868  +
POST / HTTP/1.1
        7869  +
Host:example.amazonaws.com
 5985   7870   
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
 5986   7871   
new file mode 100644
 5987   7872   
index 0000000..0db1df1
 5988         -
-- /dev/null
        7873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 5989   7874   
@@ -0,0 +1,12 @@
        7875  +
{
        7876  +
    "credentials": {
        7877  +
        "access_key_id": "AKIDEXAMPLE",
        7878  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7879  +
    },
        7880  +
    "expiration_in_seconds": 3600,
        7881  +
    "normalize": true,
        7882  +
    "region": "us-east-1",
        7883  +
    "service": "service",
        7884  +
    "sign_body": true,
        7885  +
    "timestamp": "2015-08-30T12:36:00Z"
        7886  +
}
              \
 No newline at end of file
 5990   7887   
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
 5991   7888   
similarity index 62%
 5992   7889   
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
 5993   7890   
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
 5994   7891   
index 05ab787..62639b2 100644
 5995         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        7892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 5996   7893   
@@ -1,12 +1,12 @@
 5997   7894   
POST
 5998   7895   
/
 5999   7896   
 6000   7897   
content-length:13
 6001   7898   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6002   7899   
host:example.amazonaws.com
 6003         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7900  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6004   7901   
x-amz-date:20150830T123600Z
 6005   7902   
x-amz-region-set:us-east-1
 6006   7903   
 6007   7904   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6008         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7905  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6009   7906   
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
 6010   7907   
new file mode 100644
 6011   7908   
index 0000000..006ec2e
 6012         -
-- /dev/null
        7909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 6013   7910   
@@ -0,0 +1 @@
        7911  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 6014   7912   
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
 6015   7913   
new file mode 100644
 6016   7914   
index 0000000..87a11f2
 6017         -
-- /dev/null
        7915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 6018   7916   
@@ -0,0 +1,10 @@
        7917  +
POST / HTTP/1.1
        7918  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7919  +
Host:example.amazonaws.com
        7920  +
Content-Length:13
        7921  +
X-Amz-Date:20150830T123600Z
        7922  +
X-Amz-Region-Set:us-east-1
        7923  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7924  +
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
        7925  +
        7926  +
Param1=value1
              \
 No newline at end of file
 6019   7927   
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
 6020   7928   
new file mode 100644
 6021   7929   
index 0000000..c047afb
 6022         -
-- /dev/null
        7930  +
++ 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
 6023   7931   
@@ -0,0 +1,4 @@
        7932  +
AWS4-ECDSA-P256-SHA256
        7933  +
20150830T123600Z
        7934  +
20150830/service/aws4_request
        7935  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 6024   7936   
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
 6025   7937   
new file mode 100644
 6026   7938   
index 0000000..379dcb2
 6027         -
-- /dev/null
        7939  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 6028   7940   
@@ -0,0 +1,4 @@
        7941  +
{
        7942  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7943  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7944  +
}
 6029   7945   
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
 6030   7946   
similarity index 85%
 6031   7947   
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
 6032   7948   
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
 6033   7949   
index fcc454f..6933a8c 100644
 6034         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        7950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 6035   7951   
@@ -1,9 +1,9 @@
 6036   7952   
POST
 6037   7953   
/
 6038   7954   
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
 6039   7955   
content-length:13
 6040   7956   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6041   7957   
host:example.amazonaws.com
 6042   7958   
 6043   7959   
content-length;content-type;host
 6044         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7960  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6045   7961   
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
 6046   7962   
new file mode 100644
 6047   7963   
index 0000000..34a2e12
 6048         -
-- /dev/null
        7964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 6049   7965   
@@ -0,0 +1 @@
        7966  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 6050   7967   
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
 6051   7968   
new file mode 100644
 6052   7969   
index 0000000..197b99e
 6053         -
-- /dev/null
        7970  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 6054   7971   
@@ -0,0 +1,6 @@
        7972  +
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
        7973  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7974  +
Host:example.amazonaws.com
        7975  +
Content-Length:13
        7976  +
        7977  +
Param1=value1
              \
 No newline at end of file
 6055   7978   
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
 6056   7979   
new file mode 100644
 6057   7980   
index 0000000..9d2bc74
 6058         -
-- /dev/null
        7981  +
++ 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
 6059   7982   
@@ -0,0 +1,4 @@
        7983  +
AWS4-ECDSA-P256-SHA256
        7984  +
20150830T123600Z
        7985  +
20150830/service/aws4_request
        7986  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 6060   7987   
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
 6061   7988   
similarity index 80%
 6062   7989   
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
 6063   7990   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6064   7991   
index 36015f1..8289eaa 100644
 6065         -
-- 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
        7992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6066   7993   
@@ -1,6 +1,6 @@
 6067   7994   
POST / HTTP/1.1
 6068   7995   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 6069   7996   
Host:example.amazonaws.com
 6070         -
X-Amz-Date:20150830T123600Z
        7997  +
Content-Length:13
 6071   7998   
 6072   7999   
Param1=value1
              \
 No newline at end of file
 6073   8000   
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
 6074   8001   
new file mode 100644
 6075   8002   
index 0000000..0db1df1
 6076         -
-- /dev/null
        8003  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 6077   8004   
@@ -0,0 +1,12 @@
        8005  +
{
        8006  +
    "credentials": {
        8007  +
        "access_key_id": "AKIDEXAMPLE",
        8008  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8009  +
    },
        8010  +
    "expiration_in_seconds": 3600,
        8011  +
    "normalize": true,
        8012  +
    "region": "us-east-1",
        8013  +
    "service": "service",
        8014  +
    "sign_body": true,
        8015  +
    "timestamp": "2015-08-30T12:36:00Z"
        8016  +
}
              \
 No newline at end of file
 6078   8017   
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
 6079   8018   
similarity index 61%
 6080   8019   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 6081   8020   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6082   8021   
index 69009dc..797632b 100644
 6083         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        8022  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6084   8023   
@@ -1,12 +1,12 @@
 6085   8024   
POST
 6086   8025   
/
 6087   8026   
 6088   8027   
content-length:13
 6089   8028   
content-type:application/x-www-form-urlencoded
 6090   8029   
host:example.amazonaws.com
 6091         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8030  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6092   8031   
x-amz-date:20150830T123600Z
 6093   8032   
x-amz-region-set:us-east-1
 6094   8033   
 6095   8034   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6096         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8035  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6097   8036   
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
 6098   8037   
new file mode 100644
 6099   8038   
index 0000000..f5a641c
 6100         -
-- /dev/null
        8039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 6101   8040   
@@ -0,0 +1 @@
        8041  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 6102   8042   
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
 6103   8043   
new file mode 100644
 6104   8044   
index 0000000..7bd94a7
 6105         -
-- /dev/null
        8045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 6106   8046   
@@ -0,0 +1,10 @@
        8047  +
POST / HTTP/1.1
        8048  +
Content-Type:application/x-www-form-urlencoded
        8049  +
Host:example.amazonaws.com
        8050  +
Content-Length:13
        8051  +
X-Amz-Date:20150830T123600Z
        8052  +
X-Amz-Region-Set:us-east-1
        8053  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8054  +
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
        8055  +
        8056  +
Param1=value1
              \
 No newline at end of file
 6107   8057   
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
 6108   8058   
new file mode 100644
 6109   8059   
index 0000000..8d25ba9
 6110         -
-- /dev/null
        8060  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 6111   8061   
@@ -0,0 +1,4 @@
        8062  +
AWS4-ECDSA-P256-SHA256
        8063  +
20150830T123600Z
        8064  +
20150830/service/aws4_request
        8065  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 6112   8066   
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
 6113   8067   
new file mode 100644
 6114   8068   
index 0000000..379dcb2
 6115         -
-- /dev/null
        8069  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 6116   8070   
@@ -0,0 +1,4 @@
        8071  +
{
        8072  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8073  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8074  +
}
 6117   8075   
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
 6118   8076   
similarity index 99%
 6119   8077   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 6120   8078   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6121   8079   
index 9ed065b..563ff58 100644
 6122         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
        8080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6123   8081   
@@ -1,9 +1,9 @@
 6124   8082   
POST
 6125   8083   
/
 6126   8084   
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
 6127   8085   
content-length:13
 6128   8086   
content-type:application/x-www-form-urlencoded
 6129   8087   
host:example.amazonaws.com
 6130   8088   
 6131   8089   
content-length;content-type;host
 6132         -
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8090  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6133   8091   
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
 6134   8092   
new file mode 100644
 6135   8093   
index 0000000..0c77daf
 6136         -
-- /dev/null
        8094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 6137   8095   
@@ -0,0 +1 @@
        8096  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 6138   8097   
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
 6139   8098   
new file mode 100644
 6140   8099   
index 0000000..71d6de9
 6141         -
-- /dev/null
        8100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 6142   8101   
@@ -0,0 +1,6 @@
        8102  +
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
        8103  +
Content-Type:application/x-www-form-urlencoded
        8104  +
Host:example.amazonaws.com
        8105  +
Content-Length:13
        8106  +
        8107  +
Param1=value1
              \
 No newline at end of file
 6143   8108   
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
 6144   8109   
similarity index 99%
 6145   8110   
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
 6146   8111   
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
 6147   8112   
index bef3143..cc7a224 100644
 6148         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt
        8113  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
 6149   8114   
@@ -1,4 +1,4 @@
 6150   8115   
AWS4-ECDSA-P256-SHA256
 6151   8116   
20150830T123600Z
 6152   8117   
20150830/service/aws4_request
 6153         -
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
        8118  +
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
              \
 No newline at end of file
 6154   8119   
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
 6155   8120   
new file mode 100644
 6156   8121   
index 0000000..760b2d3
 6157         -
-- /dev/null
        8122  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 6158   8123   
@@ -0,0 +1,6 @@
        8124  +
POST / HTTP/1.1
        8125  +
Content-Type:application/x-www-form-urlencoded
        8126  +
Host:example.amazonaws.com
        8127  +
Content-Length:13
        8128  +
        8129  +
Param1=value1
              \
 No newline at end of file
 6159   8130   
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
 6160   8131   
index 9bd636f..b53f33f 100644
 6161         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        8132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 6162   8133   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 6163   8134   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 6164   8135   
        }
 6165   8136   
 6166   8137   
        if let SignatureValues::QueryParams(values) = values {
 6167   8138   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 6168   8139   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 6169   8140   
 6170   8141   
            #[cfg(feature = "sigv4a")]
 6171   8142   
            if let Some(regions) = values.region_set {
 6172   8143   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 6173   8144   
            }
 6174   8145   
 6175   8146   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 6176   8147   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 6177   8148   
            add_param(
 6178   8149   
                &mut params,
 6179   8150   
                param::X_AMZ_SIGNED_HEADERS,
 6180   8151   
                values.signed_headers.as_str(),
 6181   8152   
            );
 6182   8153   
 6183   8154   
            if let Some(security_token) = values.security_token {
 6184   8155   
                add_param(
 6185   8156   
                    &mut params,
 6186   8157   
                    settings
 6187   8158   
                        .session_token_name_override
 6188   8159   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 6189   8160   
                    security_token,
 6190   8161   
                );
 6191   8162   
            }
 6192   8163   
        }
 6193         -
        // Sort by param name, and then by param value
        8164  +
        8165  +
        // Sort on the _encoded_ key/value pairs
        8166  +
        let mut params: Vec<(String, String)> = params
        8167  +
            .into_iter()
        8168  +
            .map(|x| {
        8169  +
                use aws_smithy_http::query::fmt_string;
        8170  +
                let enc_k = fmt_string(&x.0);
        8171  +
                let enc_v = fmt_string(&x.1);
        8172  +
                (enc_k, enc_v)
        8173  +
            })
        8174  +
            .collect();
        8175  +
 6194   8176   
        params.sort();
 6195   8177   
 6196   8178   
        let mut query = QueryWriter::new(uri);
 6197   8179   
        query.clear_params();
 6198   8180   
        for (key, value) in params {
 6199         -
            query.insert(&key, &value);
        8181  +
            query.insert_encoded(&key, &value);
 6200   8182   
        }
 6201   8183   
 6202   8184   
        let query = query.build_query();
 6203   8185   
        if query.is_empty() {
 6204   8186   
            None
 6205   8187   
        } else {
 6206   8188   
            Some(query)
 6207   8189   
        }
 6208   8190   
    }
 6209   8191   
 6210   8192   
    fn insert_host_header(
 6211   8193   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 6212   8194   
        uri: &Uri,
 6213   8195   
    ) -> HeaderValue {
 6214   8196   
        match canonical_headers.get(&HOST) {
 6215   8197   
            Some(header) => header.clone(),
 6216   8198   
            None => {
 6217   8199   
                let port = uri.port();
 6218   8200   
                let scheme = uri.scheme();
 6219   8201   
                let authority = uri
 6220   8202   
                    .authority()
 6221   8203   
                    .expect("request uri authority must be set for signing")
 6222   8204   
                    .as_str();
 6223   8205   
                let host = uri
 6224   8206   
                    .host()
 6225   8207   
                    .expect("request uri host must be set for signing");
 6226   8208   
 6227   8209   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 6228   8210   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 6229   8211   
                // sent in the Host header (and Hyper strips default ports if they are present)
 6230   8212   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 6231   8213   
            service,
 6232   8214   
            hashed_creq,
 6233   8215   
            signature_version: SignatureVersion::V4a,
 6234   8216   
        }
 6235   8217   
    }
 6236   8218   
}
 6237   8219   
 6238   8220   
impl fmt::Display for StringToSign<'_> {
 6239   8221   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 6240   8222   
        write!(
 6241   8223   
            f,
 6242   8224   
            "{}\n{}\n{}\n{}",
 6243   8225   
            self.algorithm,
 6244   8226   
            format_date_time(self.time),
 6245   8227   
            match self.signature_version {
 6246   8228   
                SignatureVersion::V4 => self.scope.to_string(),
 6247   8229   
                SignatureVersion::V4a => self.scope.v4a_display(),
 6248   8230   
            },
 6249   8231   
            self.hashed_creq
 6250   8232   
        )
 6251   8233   
    }
 6252   8234   
}
 6253   8235   
 6254   8236   
#[cfg(test)]
 6255   8237   
mod tests {
 6256   8238   
    use crate::date_time::test_parsers::parse_date_time;
 6257   8239   
    use crate::http_request::canonical_request::{
 6258   8240   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 6259   8241   
    };
 6260   8242   
    use crate::http_request::test;
        8243  +
    use crate::http_request::test::SigningSuiteTest;
 6261   8244   
    use crate::http_request::{
 6262   8245   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 6263   8246   
        SigningParams, SigningSettings,
 6264   8247   
    };
 6265   8248   
    use crate::sign::v4;
 6266   8249   
    use crate::sign::v4::sha256_hex_string;
 6267   8250   
    use aws_credential_types::Credentials;
 6268   8251   
    use aws_smithy_http::query_writer::QueryWriter;
 6269   8252   
    use aws_smithy_runtime_api::client::identity::Identity;
 6270   8253   
    use http0::{HeaderValue, Uri};
 6271   8254   
    use pretty_assertions::assert_eq;
 6272   8255   
    use proptest::{prelude::*, proptest};
 6273   8256   
    use std::borrow::Cow;
 6274   8257   
    use std::time::Duration;
 6275   8258   
 6276   8259   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 6277   8260   
        v4::signing_params::Builder::default()
 6278   8261   
            .identity(identity)
 6279   8262   
            .region("test-region")
 6280   8263   
            .name("testservicename")
 6281   8264   
            .time(parse_date_time("20210511T154045Z").unwrap())
 6282   8265   
            .settings(settings)
 6283   8266   
            .build()
 6284   8267   
            .unwrap()
 6285   8268   
            .into()
 6286   8269   
    }
 6287   8270   
 6288   8271   
    #[test]
 6289   8272   
    fn test_repeated_header() {
 6290         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8273  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8274  +
        let mut req = test.request();
 6291   8275   
        req.headers.push((
 6292   8276   
            "x-amz-object-attributes".to_string(),
 6293   8277   
            "Checksum".to_string(),
 6294   8278   
        ));
 6295   8279   
        req.headers.push((
 6296   8280   
            "x-amz-object-attributes".to_string(),
 6297   8281   
            "ObjectSize".to_string(),
 6298   8282   
        ));
 6299   8283   
        let req = SignableRequest::from(&req);
 6300   8284   
        let settings = SigningSettings {
 6301   8285   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6302   8286   
            session_token_mode: SessionTokenMode::Exclude,
 6303   8287   
            ..Default::default()
 6304   8288   
        };
 6305   8289   
        let identity = Credentials::for_tests().into();
 6306   8290   
        let signing_params = signing_params(&identity, settings);
 6307   8291   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6308   8292   
 6309   8293   
        assert_eq!(
 6310   8294   
            creq.values.signed_headers().to_string(),
 6311   8295   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 6312   8296   
        );
 6313   8297   
        assert_eq!(
 6314   8298   
            creq.header_values_for("x-amz-object-attributes"),
 6315   8299   
            "Checksum,ObjectSize",
 6316   8300   
        );
 6317   8301   
    }
 6318   8302   
 6319   8303   
    #[test]
 6320   8304   
    fn test_host_header_properly_handles_ports() {
 6321   8305   
        fn host_header_test_setup(endpoint: String) -> String {
 6322         -
            let mut req = test::v4::test_request("get-vanilla");
        8306  +
            let test = SigningSuiteTest::v4("get-vanilla");
        8307  +
            let mut req = test.request();
 6323   8308   
            req.uri = endpoint;
 6324   8309   
            let req = SignableRequest::from(&req);
 6325   8310   
            let settings = SigningSettings {
 6326   8311   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6327   8312   
                session_token_mode: SessionTokenMode::Exclude,
 6328   8313   
                ..Default::default()
 6329   8314   
            };
 6330   8315   
            let identity = Credentials::for_tests().into();
 6331   8316   
            let signing_params = signing_params(&identity, settings);
 6332   8317   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6333   8318   
            creq.header_values_for("host")
 6334   8319   
        }
 6335   8320   
 6336   8321   
        // HTTP request with 80 port should not be signed with that port
 6337   8322   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 6338   8323   
        assert_eq!(http_80_host_header, "localhost",);
 6339   8324   
 6340   8325   
        // HTTP request with non-80 port should be signed with that port
 6341   8326   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 6342   8327   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 6343   8328   
 6344   8329   
        // HTTPS request with 443 port should not be signed with that port
 6345   8330   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 6346   8331   
        assert_eq!(https_443_host_header, "localhost",);
 6347   8332   
 6348   8333   
        // HTTPS request with non-443 port should be signed with that port
 6349   8334   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 6350   8335   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 6351   8336   
    }
 6352   8337   
 6353   8338   
    #[test]
 6354   8339   
    fn test_set_xamz_sha_256() {
 6355         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8340  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8341  +
        let req = test.request();
 6356   8342   
        let req = SignableRequest::from(&req);
 6357   8343   
        let settings = SigningSettings {
 6358   8344   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6359   8345   
            session_token_mode: SessionTokenMode::Exclude,
 6360   8346   
            ..Default::default()
 6361   8347   
        };
 6362   8348   
        let identity = Credentials::for_tests().into();
 6363   8349   
        let mut signing_params = signing_params(&identity, settings);
 6364   8350   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6365   8351   
        assert_eq!(
 6366   8352   
            creq.values.content_sha256(),
 6367   8353   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 6368   8354   
        );
 6369   8355   
        // assert that the sha256 header was added
 6370   8356   
        assert_eq!(
 6371   8357   
            creq.values.signed_headers().as_str(),
 6372   8358   
            "host;x-amz-content-sha256;x-amz-date"
 6373   8359   
        );
 6374   8360   
 6375   8361   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 6376   8362   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6377   8363   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6378   8364   
    }
 6379   8365   
 6380   8366   
    #[test]
 6381   8367   
    fn test_unsigned_payload() {
 6382         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8368  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8369  +
        let mut req = test.request();
 6383   8370   
        req.set_body(SignableBody::UnsignedPayload);
 6384   8371   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 6385   8372   
 6386   8373   
        let settings = SigningSettings {
 6387   8374   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6388   8375   
            ..Default::default()
 6389   8376   
        };
 6390   8377   
        let identity = Credentials::for_tests().into();
 6391   8378   
        let signing_params = signing_params(&identity, settings);
 6392   8379   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6393   8380   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 6394   8381   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 6395   8382   
    }
 6396   8383   
 6397   8384   
    #[test]
 6398   8385   
    fn test_precomputed_payload() {
 6399   8386   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 6400         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8387  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8388  +
        let mut req = test.request();
 6401   8389   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 6402   8390   
        let req = SignableRequest::from(&req);
 6403   8391   
        let settings = SigningSettings {
 6404   8392   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6405   8393   
            ..Default::default()
 6406   8394   
        };
 6407   8395   
        let identity = Credentials::for_tests().into();
 6408   8396   
        let signing_params = signing_params(&identity, settings);
 6409   8397   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6410   8398   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 6411   8399   
        assert!(creq.to_string().ends_with(payload_hash));
 6412   8400   
    }
 6413   8401   
 6414   8402   
    #[test]
 6415   8403   
    fn test_generate_scope() {
 6416   8404   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 6417   8405   
        let scope = SigningScope {
 6418   8406   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6419   8407   
            region: "us-east-1",
 6420   8408   
            service: "iam",
 6421   8409   
        };
 6422   8410   
        assert_eq!(format!("{}\n", scope), expected);
 6423   8411   
    }
 6424   8412   
 6425   8413   
    #[test]
 6426   8414   
    fn test_string_to_sign() {
 6427   8415   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6428         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 6429         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        8416  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8417  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        8418  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 6430   8419   
        let encoded = sha256_hex_string(creq.as_bytes());
 6431   8420   
 6432   8421   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 6433   8422   
        assert_eq!(expected_sts, actual.to_string());
 6434   8423   
    }
 6435   8424   
 6436   8425   
    #[test]
 6437   8426   
    fn test_digest_of_canonical_request() {
 6438         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        8427  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8428  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 6439   8429   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 6440   8430   
        let actual = sha256_hex_string(creq.as_bytes());
 6441   8431   
        assert_eq!(expected, actual);
 6442   8432   
    }
 6443   8433   
 6444   8434   
    #[test]
 6445   8435   
    fn test_double_url_encode_path() {
 6446         -
        let req = test::v4::test_request("double-encode-path");
        8436  +
        let test = SigningSuiteTest::v4("double-encode-path");
        8437  +
        let req = test.request();
 6447   8438   
        let req = SignableRequest::from(&req);
 6448   8439   
        let identity = Credentials::for_tests().into();
 6449   8440   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6450   8441   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6451   8442   
 6452         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        8443  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6453   8444   
        let actual = format!("{}", creq);
 6454   8445   
        assert_eq!(actual, expected);
 6455   8446   
    }
 6456   8447   
 6457   8448   
    #[test]
 6458   8449   
    fn test_double_url_encode() {
 6459         -
        let req = test::v4::test_request("double-url-encode");
        8450  +
        let test = SigningSuiteTest::v4("double-url-encode");
        8451  +
        let req = test.request();
 6460   8452   
        let req = SignableRequest::from(&req);
 6461   8453   
        let identity = Credentials::for_tests().into();
 6462   8454   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6463   8455   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6464         -
 6465         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        8456  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6466   8457   
        let actual = format!("{}", creq);
 6467   8458   
        assert_eq!(actual, expected);
 6468   8459   
    }
 6469   8460   
 6470   8461   
    #[test]
 6471   8462   
    fn test_tilde_in_uri() {
 6472   8463   
        let req = http0::Request::builder()
 6473   8464   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 6474   8465   
        let req = SignableRequest::from(&req);
 6475   8466   
        let identity = Credentials::for_tests().into();
 6476   8467   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6477   8468   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6478   8469   
        assert_eq!(
 6479   8470   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 6480   8471   
            creq.params.as_deref(),
 6481   8472   
        );
 6482   8473   
    }
 6483   8474   
 6484   8475   
    #[test]
 6485   8476   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 6486   8477   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 6487   8478   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 6488   8479   
 6489   8480   
        let mut query_writer = QueryWriter::new(&uri);
 6490   8481   
        query_writer.insert("list-type", "2");
 6491   8482   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 6492   8483   
 6493   8484   
        let req = http0::Request::builder()
 6494   8485   
            .uri(query_writer.build_uri())
 6495   8486   
            .body("")
 6496   8487   
            .unwrap()
 6497   8488   
            .into();
 6498   8489   
        let req = SignableRequest::from(&req);
 6499   8490   
        let identity = Credentials::for_tests().into();
 6500   8491   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6501   8492   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6502   8493   
 6503   8494   
        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~";
 6504   8495   
        let actual = creq.params.unwrap();
 6505   8496   
        assert_eq!(expected, actual);
 6506   8497   
    }
 6507   8498   
 6508   8499   
    #[test]
 6509   8500   
    fn test_omit_session_token() {
 6510         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8501  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8502  +
        let req = test.request();
 6511   8503   
        let req = SignableRequest::from(&req);
 6512   8504   
        let settings = SigningSettings {
 6513   8505   
            session_token_mode: SessionTokenMode::Include,
 6514   8506   
            ..Default::default()
 6515   8507   
        };
 6516   8508   
        let identity = Credentials::for_tests_with_session_token().into();
 6517   8509   
        let mut signing_params = signing_params(&identity, settings);
 6518   8510   
 6519   8511   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6520   8512   
        assert_eq!(
 6521   8513   
            creq.values.signed_headers().as_str(),
 6522   8514   
            "host;x-amz-date;x-amz-security-token"
 6523   8515   
        );
 6524   8516   
        assert_eq!(
 6525   8517   
            creq.headers.get("x-amz-security-token").unwrap(),
 6526   8518   
            "notarealsessiontoken"
 6527   8519   
        );
 6528   8520   
 6529   8521   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 6530   8522   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6531   8523   
        assert_eq!(
 6532   8524   
            creq.headers.get("x-amz-security-token").unwrap(),
 6533   8525   
            "notarealsessiontoken"
 6534   8526   
        );
 6535   8527   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6536   8528   
    }
 6537   8529   
 6538   8530   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 6539   8531   
    #[test]
 6540   8532   
    fn non_presigning_header_exclusion() {
 6541   8533   
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
 6542   8534   
index c4bbbee..30b4743 100644
 6543         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        8535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 6544   8536   
@@ -478,436 +478,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 6545   8537   
        sensitive,
 6546   8538   
    });
 6547   8539   
}
 6548   8540   
 6549   8541   
// add signature to authorization header
 6550   8542   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 6551   8543   
fn build_authorization_header(
 6552   8544   
    access_key: &str,
 6553   8545   
    creq: &CanonicalRequest<'_>,
 6554   8546   
    sts: StringToSign<'_>,
 6555   8547   
    signature: &str,
 6556   8548   
    signature_version: SignatureVersion,
 6557   8549   
) -> String {
 6558   8550   
    let scope = match signature_version {
 6559   8551   
        SignatureVersion::V4 => sts.scope.to_string(),
 6560   8552   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 6561   8553   
    };
 6562   8554   
    format!(
 6563   8555   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 6564   8556   
        sts.algorithm,
 6565   8557   
        access_key,
 6566   8558   
        scope,
 6567   8559   
        creq.values.signed_headers().as_str(),
 6568   8560   
        signature
 6569   8561   
    )
 6570   8562   
}
 6571   8563   
#[cfg(test)]
 6572   8564   
mod tests {
 6573   8565   
    use crate::date_time::test_parsers::parse_date_time;
 6574   8566   
    use crate::http_request::sign::{add_header, SignableRequest};
        8567  +
    use crate::http_request::test::SigningSuiteTest;
 6575   8568   
    use crate::http_request::{
 6576         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        8569  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 6577   8570   
        SigningSettings,
 6578   8571   
    };
 6579   8572   
    use crate::sign::v4;
 6580   8573   
    use aws_credential_types::Credentials;
 6581   8574   
    use http0::{HeaderValue, Request};
 6582   8575   
    use pretty_assertions::assert_eq;
 6583   8576   
    use proptest::proptest;
 6584   8577   
    use std::borrow::Cow;
 6585   8578   
    use std::iter;
 6586         -
    use std::time::Duration;
 6587   8579   
 6588   8580   
    macro_rules! assert_req_eq {
 6589   8581   
        (http: $expected:expr, $actual:expr) => {
 6590   8582   
            let mut expected = ($expected).map(|_b|"body");
 6591   8583   
            let mut actual = ($actual).map(|_b|"body");
 6592   8584   
            make_headers_comparable(&mut expected);
 6593   8585   
            make_headers_comparable(&mut actual);
 6594   8586   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 6595   8587   
        };
 6596   8588   
        ($expected:tt, $actual:tt) => {
 6597   8589   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 6598   8590   
        };
 6599   8591   
    }
 6600   8592   
 6601   8593   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 6602   8594   
        for (_name, value) in request.headers_mut() {
 6603   8595   
            value.set_sensitive(false);
 6604   8596   
        }
 6605   8597   
    }
 6606   8598   
 6607         -
    #[test]
 6608         -
    fn test_sign_vanilla_with_headers() {
 6609         -
        let settings = SigningSettings::default();
 6610         -
        let identity = &Credentials::for_tests().into();
 6611         -
        let params = v4::SigningParams {
 6612         -
            identity,
 6613         -
            region: "us-east-1",
 6614         -
            name: "service",
 6615         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6616         -
            settings,
 6617         -
        }
 6618         -
        .into();
 6619         -
 6620         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6621         -
        let signable = SignableRequest::from(&original);
 6622         -
        let out = sign(signable, &params).unwrap();
 6623         -
        assert_eq!(
 6624         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 6625         -
            out.signature
 6626         -
        );
 6627         -
 6628         -
        let mut signed = original.as_http_request();
 6629         -
        out.output.apply_to_request_http0x(&mut signed);
 6630         -
 6631         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 6632         -
        assert_req_eq!(expected, signed);
 6633         -
    }
 6634         -
        8599  +
    // Sigv4A suite tests
 6635   8600   
    #[cfg(feature = "sigv4a")]
 6636         -
    mod sigv4a_tests {
 6637         -
        use super::*;
 6638         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 6639         -
        use crate::http_request::{sign, test, SigningParams};
 6640         -
        use crate::sign::v4a;
 6641         -
        use p256::ecdsa::signature::{Signature, Verifier};
 6642         -
        use p256::ecdsa::{DerSignature, SigningKey};
 6643         -
        use pretty_assertions::assert_eq;
 6644         -
 6645         -
        fn new_v4a_signing_params_from_context(
 6646         -
            test_context: &'_ test::v4a::TestContext,
 6647         -
            signature_location: SignatureLocation,
 6648         -
        ) -> SigningParams<'_> {
 6649         -
            let mut params = v4a::SigningParams::from(test_context);
 6650         -
            params.settings.signature_location = signature_location;
 6651         -
 6652         -
            params.into()
 6653         -
        }
 6654         -
 6655         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 6656         -
            let tc = test::v4a::test_context(test_name);
 6657         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 6658         -
 6659         -
            let req = test::v4a::test_request(test_name);
 6660         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 6661         -
            let signable_req = SignableRequest::from(&req);
 6662         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 6663         -
 6664         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 6665         -
 6666         -
            let expected_string_to_sign =
 6667         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 6668         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 6669         -
            let actual_string_to_sign = StringToSign::new_v4a(
 6670         -
                *params.time(),
 6671         -
                params.region_set().unwrap(),
 6672         -
                params.name(),
 6673         -
                hashed_creq,
 6674         -
            )
 6675         -
            .to_string();
 6676         -
 6677         -
            assert_eq!(
 6678         -
                expected_string_to_sign, actual_string_to_sign,
 6679         -
                "'string to sign' didn't match"
 6680         -
            );
        8601  +
    mod v4a_suite {
        8602  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 6681   8603   
 6682         -
            let out = sign(signable_req, &params).unwrap();
 6683         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 6684         -
            out.output
 6685         -
                .apply_to_request_http0x(&mut req.as_http_request());
 6686         -
 6687         -
            let creds = params.credentials().unwrap();
 6688         -
            let signing_key =
 6689         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 6690         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 6691         -
            let sig = sig
 6692         -
                .try_into()
 6693         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 6694         -
 6695         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 6696         -
            let peer_public_key = signing_key.verifying_key();
 6697         -
            let sts = actual_string_to_sign.as_bytes();
 6698         -
            peer_public_key.verify(sts, &sig).unwrap();
        8604  +
        #[test]
        8605  +
        fn test_get_header_key_duplicate() {
        8606  +
            run_test_suite_v4a("get-header-key-duplicate")
 6699   8607   
        }
 6700   8608   
 6701   8609   
        #[test]
 6702         -
        fn test_get_header_key_duplicate() {
 6703         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        8610  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8611  +
        fn test_get_header_value_multiline() {
        8612  +
            run_test_suite_v4a("get-header-value-multiline")
 6704   8613   
        }
 6705   8614   
 6706   8615   
        #[test]
 6707   8616   
        fn test_get_header_value_order() {
 6708         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        8617  +
            run_test_suite_v4a("get-header-value-order")
 6709   8618   
        }
 6710   8619   
 6711   8620   
        #[test]
 6712   8621   
        fn test_get_header_value_trim() {
 6713         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        8622  +
            run_test_suite_v4a("get-header-value-trim");
 6714   8623   
        }
 6715   8624   
 6716   8625   
        #[test]
 6717   8626   
        fn test_get_relative_normalized() {
 6718         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        8627  +
            run_test_suite_v4a("get-relative-normalized");
 6719   8628   
        }
 6720   8629   
 6721   8630   
        #[test]
 6722   8631   
        fn test_get_relative_relative_normalized() {
 6723         -
            run_v4a_test_suite(
 6724         -
                "get-relative-relative-normalized",
 6725         -
                SignatureLocation::Headers,
 6726         -
            );
        8632  +
            run_test_suite_v4a("get-relative-relative-normalized");
 6727   8633   
        }
 6728   8634   
 6729   8635   
        #[test]
 6730   8636   
        fn test_get_relative_relative_unnormalized() {
 6731         -
            run_v4a_test_suite(
 6732         -
                "get-relative-relative-unnormalized",
 6733         -
                SignatureLocation::Headers,
 6734         -
            );
        8637  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 6735   8638   
        }
 6736   8639   
 6737   8640   
        #[test]
 6738   8641   
        fn test_get_relative_unnormalized() {
 6739         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        8642  +
            run_test_suite_v4a("get-relative-unnormalized");
 6740   8643   
        }
 6741   8644   
 6742   8645   
        #[test]
 6743   8646   
        fn test_get_slash_dot_slash_normalized() {
 6744         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        8647  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 6745   8648   
        }
 6746   8649   
 6747   8650   
        #[test]
 6748   8651   
        fn test_get_slash_dot_slash_unnormalized() {
 6749         -
            run_v4a_test_suite(
 6750         -
                "get-slash-dot-slash-unnormalized",
 6751         -
                SignatureLocation::Headers,
 6752         -
            );
        8652  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 6753   8653   
        }
 6754   8654   
 6755   8655   
        #[test]
 6756   8656   
        fn test_get_slash_normalized() {
 6757         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        8657  +
            run_test_suite_v4a("get-slash-normalized");
 6758   8658   
        }
 6759   8659   
 6760   8660   
        #[test]
 6761   8661   
        fn test_get_slash_pointless_dot_normalized() {
 6762         -
            run_v4a_test_suite(
 6763         -
                "get-slash-pointless-dot-normalized",
 6764         -
                SignatureLocation::Headers,
 6765         -
            );
        8662  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 6766   8663   
        }
 6767   8664   
 6768   8665   
        #[test]
 6769   8666   
        fn test_get_slash_pointless_dot_unnormalized() {
 6770         -
            run_v4a_test_suite(
 6771         -
                "get-slash-pointless-dot-unnormalized",
 6772         -
                SignatureLocation::Headers,
 6773         -
            );
        8667  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 6774   8668   
        }
 6775   8669   
 6776   8670   
        #[test]
 6777   8671   
        fn test_get_slash_unnormalized() {
 6778         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        8672  +
            run_test_suite_v4a("get-slash-unnormalized");
 6779   8673   
        }
 6780   8674   
 6781   8675   
        #[test]
 6782   8676   
        fn test_get_slashes_normalized() {
 6783         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        8677  +
            run_test_suite_v4a("get-slashes-normalized");
 6784   8678   
        }
 6785   8679   
 6786   8680   
        #[test]
 6787   8681   
        fn test_get_slashes_unnormalized() {
 6788         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        8682  +
            run_test_suite_v4a("get-slashes-unnormalized");
        8683  +
        }
        8684  +
        8685  +
        #[test]
        8686  +
        #[ignore = "relies on single encode of path segments"]
        8687  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8688  +
        // skipped until we add control over double_uri_encode in context.json
        8689  +
        fn test_get_space_normalized() {
        8690  +
            run_test_suite_v4a("get-space-normalized");
        8691  +
        }
        8692  +
        8693  +
        #[test]
        8694  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8695  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8696  +
        fn test_get_space_unnormalized() {
        8697  +
            run_test_suite_v4a("get-space-unnormalized");
 6789   8698   
        }
 6790   8699   
 6791   8700   
        #[test]
 6792   8701   
        fn test_get_unreserved() {
 6793         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        8702  +
            run_test_suite_v4a("get-unreserved");
        8703  +
        }
        8704  +
        8705  +
        #[test]
        8706  +
        #[ignore = "httparse fails on invalid uri character"]
        8707  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8708  +
        fn test_get_utf8() {
        8709  +
            run_test_suite_v4a("get-utf8");
 6794   8710   
        }
 6795   8711   
 6796   8712   
        #[test]
 6797   8713   
        fn test_get_vanilla() {
 6798         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        8714  +
            run_test_suite_v4a("get-vanilla");
 6799   8715   
        }
 6800   8716   
 6801   8717   
        #[test]
 6802   8718   
        fn test_get_vanilla_empty_query_key() {
 6803         -
            run_v4a_test_suite(
 6804         -
                "get-vanilla-empty-query-key",
 6805         -
                SignatureLocation::QueryParams,
 6806         -
            );
        8719  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 6807   8720   
        }
 6808   8721   
 6809   8722   
        #[test]
 6810   8723   
        fn test_get_vanilla_query() {
 6811         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        8724  +
            run_test_suite_v4a("get-vanilla-query");
        8725  +
        }
        8726  +
        8727  +
        #[test]
        8728  +
        fn test_get_vanilla_query_order_encoded() {
        8729  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 6812   8730   
        }
 6813   8731   
 6814   8732   
        #[test]
 6815   8733   
        fn test_get_vanilla_query_order_key_case() {
 6816         -
            run_v4a_test_suite(
 6817         -
                "get-vanilla-query-order-key-case",
 6818         -
                SignatureLocation::QueryParams,
 6819         -
            );
        8734  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 6820   8735   
        }
 6821   8736   
 6822   8737   
        #[test]
 6823   8738   
        fn test_get_vanilla_query_unreserved() {
 6824         -
            run_v4a_test_suite(
 6825         -
                "get-vanilla-query-unreserved",
 6826         -
                SignatureLocation::QueryParams,
 6827         -
            );
        8739  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        8740  +
        }
        8741  +
        8742  +
        #[test]
        8743  +
        #[ignore = "httparse fails on invalid uri character"]
        8744  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8745  +
        fn test_get_vanilla_utf8_query() {
        8746  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 6828   8747   
        }
 6829   8748   
 6830   8749   
        #[test]
 6831   8750   
        fn test_get_vanilla_with_session_token() {
 6832         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        8751  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 6833   8752   
        }
 6834   8753   
 6835   8754   
        #[test]
 6836   8755   
        fn test_post_header_key_case() {
 6837         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        8756  +
            run_test_suite_v4a("post-header-key-case");
 6838   8757   
        }
 6839   8758   
 6840   8759   
        #[test]
 6841   8760   
        fn test_post_header_key_sort() {
 6842         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        8761  +
            run_test_suite_v4a("post-header-key-sort");
 6843   8762   
        }
 6844   8763   
 6845   8764   
        #[test]
 6846   8765   
        fn test_post_header_value_case() {
 6847         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        8766  +
            run_test_suite_v4a("post-header-value-case");
 6848   8767   
        }
 6849   8768   
 6850   8769   
        #[test]
 6851   8770   
        fn test_post_sts_header_after() {
 6852         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        8771  +
            run_test_suite_v4a("post-sts-header-after");
 6853   8772   
        }
 6854   8773   
 6855   8774   
        #[test]
 6856   8775   
        fn test_post_sts_header_before() {
 6857         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        8776  +
            run_test_suite_v4a("post-sts-header-before");
 6858   8777   
        }
 6859   8778   
 6860   8779   
        #[test]
 6861   8780   
        fn test_post_vanilla() {
 6862         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        8781  +
            run_test_suite_v4a("post-vanilla");
 6863   8782   
        }
 6864   8783   
 6865   8784   
        #[test]
 6866   8785   
        fn test_post_vanilla_empty_query_value() {
 6867         -
            run_v4a_test_suite(
 6868         -
                "post-vanilla-empty-query-value",
 6869         -
                SignatureLocation::QueryParams,
 6870         -
            );
        8786  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 6871   8787   
        }
 6872   8788   
 6873   8789   
        #[test]
 6874   8790   
        fn test_post_vanilla_query() {
 6875         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        8791  +
            run_test_suite_v4a("post-vanilla-query");
 6876   8792   
        }
 6877   8793   
 6878   8794   
        #[test]
 6879   8795   
        fn test_post_x_www_form_urlencoded() {
 6880         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        8796  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 6881   8797   
        }
 6882   8798   
 6883   8799   
        #[test]
 6884   8800   
        fn test_post_x_www_form_urlencoded_parameters() {
 6885         -
            run_v4a_test_suite(
 6886         -
                "post-x-www-form-urlencoded-parameters",
 6887         -
                SignatureLocation::QueryParams,
 6888         -
            );
        8801  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 6889   8802   
        }
 6890   8803   
    }
 6891   8804   
 6892   8805   
    #[test]
 6893   8806   
    fn test_sign_url_escape() {
 6894         -
        let test = "double-encode-path";
        8807  +
        let test = SigningSuiteTest::v4("double-encode-path");
 6895   8808   
        let settings = SigningSettings::default();
 6896   8809   
        let identity = &Credentials::for_tests().into();
 6897   8810   
        let params = v4::SigningParams {
 6898   8811   
            identity,
 6899   8812   
            region: "us-east-1",
 6900   8813   
            name: "service",
 6901   8814   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6902   8815   
            settings,
 6903   8816   
        }
 6904   8817   
        .into();
 6905   8818   
 6906         -
        let original = test::v4::test_request(test);
        8819  +
        let original = test.request();
 6907   8820   
        let signable = SignableRequest::from(&original);
 6908   8821   
        let out = sign(signable, &params).unwrap();
 6909   8822   
        assert_eq!(
 6910   8823   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 6911   8824   
            out.signature
 6912   8825   
        );
 6913   8826   
 6914   8827   
        let mut signed = original.as_http_request();
 6915   8828   
        out.output.apply_to_request_http0x(&mut signed);
 6916   8829   
 6917         -
        let expected = test::v4::test_signed_request(test);
 6918         -
        assert_req_eq!(expected, signed);
 6919         -
    }
 6920         -
 6921         -
    #[test]
 6922         -
    fn test_sign_vanilla_with_query_params() {
 6923         -
        let settings = SigningSettings {
 6924         -
            signature_location: SignatureLocation::QueryParams,
 6925         -
            expires_in: Some(Duration::from_secs(35)),
 6926         -
            ..Default::default()
 6927         -
        };
 6928         -
        let identity = &Credentials::for_tests().into();
 6929         -
        let params = v4::SigningParams {
 6930         -
            identity,
 6931         -
            region: "us-east-1",
 6932         -
            name: "service",
 6933         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6934         -
            settings,
 6935         -
        }
 6936         -
        .into();
 6937         -
 6938         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6939         -
        let signable = SignableRequest::from(&original);
 6940         -
        let out = sign(signable, &params).unwrap();
 6941         -
        assert_eq!(
 6942         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 6943         -
            out.signature
 6944         -
        );
 6945         -
 6946         -
        let mut signed = original.as_http_request();
 6947         -
        out.output.apply_to_request_http0x(&mut signed);
 6948         -
 6949         -
        let expected =
 6950         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        8830  +
        let expected = test.signed_request(SignatureLocation::Headers);
 6951   8831   
        assert_req_eq!(expected, signed);
 6952   8832   
    }
 6953   8833   
 6954   8834   
    #[test]
 6955   8835   
    fn test_sign_headers_utf8() {
 6956   8836   
        let settings = SigningSettings::default();
 6957   8837   
        let identity = &Credentials::for_tests().into();
 6958   8838   
        let params = v4::SigningParams {
 6959   8839   
            identity,
 6960   8840   
            region: "us-east-1",
 6961   8841   
            name: "service",
 6962   8842   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6963   8843   
            settings,
 6964   8844   
        }
 6965   8845   
        .into();
 6966   8846   
 6967   8847   
        let original = http0::Request::builder()
 6968   8848   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 6969   8849   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 6970   8850   
            .body("")
 6971   8851   
            .unwrap()
 6972   8852   
            .into();
 6973   8853   
        let signable = SignableRequest::from(&original);
 6974   8854   
        let out = sign(signable, &params).unwrap();
 6975   8855   
        assert_eq!(
 6976   8856   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 6977   8857   
            out.signature
 6978   8858   
        );
 6979   8859   
 6980   8860   
        let mut signed = original.as_http_request();
 6981   8861   
@@ -1138,31 +1026,236 @@ mod tests {
 6982   8862   
        let mut request = http::Request::builder()
 6983   8863   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 6984   8864   
            .body("")
 6985   8865   
            .unwrap();
 6986   8866   
 6987   8867   
        instructions.apply_to_request_http1x(&mut request);
 6988   8868   
 6989   8869   
        assert_eq!(
 6990   8870   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 6991   8871   
            request.uri().path_and_query().unwrap().to_string()
 6992   8872   
        );
 6993   8873   
    }
 6994   8874   
 6995   8875   
    #[test]
 6996   8876   
    fn test_debug_signable_body() {
 6997   8877   
        let sut = SignableBody::Bytes(b"hello signable body");
 6998   8878   
        assert_eq!(
 6999   8879   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 7000   8880   
            format!("{sut:?}")
 7001   8881   
        );
 7002   8882   
 7003   8883   
        let sut = SignableBody::UnsignedPayload;
 7004   8884   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 7005   8885   
 7006   8886   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 7007   8887   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 7008   8888   
 7009   8889   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 7010   8890   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 7011   8891   
    }
        8892  +
        8893  +
    // v4 test suite
        8894  +
    mod v4_suite {
        8895  +
        use crate::http_request::test::run_test_suite_v4;
        8896  +
        8897  +
        #[test]
        8898  +
        fn test_get_header_key_duplicate() {
        8899  +
            run_test_suite_v4("get-header-key-duplicate");
        8900  +
        }
        8901  +
        8902  +
        #[test]
        8903  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8904  +
        fn test_get_header_value_multiline() {
        8905  +
            run_test_suite_v4("get-header-value-multiline");
        8906  +
        }
        8907  +
        8908  +
        #[test]
        8909  +
        fn test_get_header_value_order() {
        8910  +
            run_test_suite_v4("get-header-value-order");
        8911  +
        }
        8912  +
        8913  +
        #[test]
        8914  +
        fn test_get_header_value_trim() {
        8915  +
            run_test_suite_v4("get-header-value-trim");
        8916  +
        }
        8917  +
        8918  +
        #[test]
        8919  +
        fn test_get_relative_normalized() {
        8920  +
            run_test_suite_v4("get-relative-normalized");
        8921  +
        }
        8922  +
        8923  +
        #[test]
        8924  +
        fn test_get_relative_relative_normalized() {
        8925  +
            run_test_suite_v4("get-relative-relative-normalized");
        8926  +
        }
        8927  +
        8928  +
        #[test]
        8929  +
        fn test_get_relative_relative_unnormalized() {
        8930  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        8931  +
        }
        8932  +
        8933  +
        #[test]
        8934  +
        fn test_get_relative_unnormalized() {
        8935  +
            run_test_suite_v4("get-relative-unnormalized");
        8936  +
        }
        8937  +
        8938  +
        #[test]
        8939  +
        fn test_get_slash_dot_slash_normalized() {
        8940  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        8941  +
        }
        8942  +
        8943  +
        #[test]
        8944  +
        fn test_get_slash_dot_slash_unnormalized() {
        8945  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        8946  +
        }
        8947  +
        8948  +
        #[test]
        8949  +
        fn test_get_slash_normalized() {
        8950  +
            run_test_suite_v4("get-slash-normalized");
        8951  +
        }
        8952  +
        8953  +
        #[test]
        8954  +
        fn test_get_slash_pointless_dot_normalized() {
        8955  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        8956  +
        }
        8957  +
        8958  +
        #[test]
        8959  +
        fn test_get_slash_pointless_dot_unnormalized() {
        8960  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        8961  +
        }
        8962  +
        8963  +
        #[test]
        8964  +
        fn test_get_slash_unnormalized() {
        8965  +
            run_test_suite_v4("get-slash-unnormalized");
        8966  +
        }
        8967  +
        8968  +
        #[test]
        8969  +
        fn test_get_slashes_normalized() {
        8970  +
            run_test_suite_v4("get-slashes-normalized");
        8971  +
        }
        8972  +
        8973  +
        #[test]
        8974  +
        fn test_get_slashes_unnormalized() {
        8975  +
            run_test_suite_v4("get-slashes-unnormalized");
        8976  +
        }
        8977  +
        8978  +
        #[test]
        8979  +
        #[ignore = "relies on single encode of path segments"]
        8980  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8981  +
        // skipped until we add control over double_uri_encode in context.json
        8982  +
        fn test_get_space_normalized() {
        8983  +
            run_test_suite_v4("get-space-normalized");
        8984  +
        }
        8985  +
        8986  +
        #[test]
        8987  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8988  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8989  +
        fn test_get_space_unnormalized() {
        8990  +
            run_test_suite_v4("get-space-unnormalized");
        8991  +
        }
        8992  +
        8993  +
        #[test]
        8994  +
        fn test_get_unreserved() {
        8995  +
            run_test_suite_v4("get-unreserved");
        8996  +
        }
        8997  +
        8998  +
        #[test]
        8999  +
        #[ignore = "httparse fails on invalid uri character"]
        9000  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9001  +
        fn test_get_utf8() {
        9002  +
            run_test_suite_v4("get-utf8");
        9003  +
        }
        9004  +
        9005  +
        #[test]
        9006  +
        fn test_get_vanilla() {
        9007  +
            run_test_suite_v4("get-vanilla");
        9008  +
        }
        9009  +
        9010  +
        #[test]
        9011  +
        fn test_get_vanilla_empty_query_key() {
        9012  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        9013  +
        }
        9014  +
        9015  +
        #[test]
        9016  +
        fn test_get_vanilla_query() {
        9017  +
            run_test_suite_v4("get-vanilla-query");
        9018  +
        }
        9019  +
        9020  +
        #[test]
        9021  +
        fn test_get_vanilla_query_order_encoded() {
        9022  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        9023  +
        }
        9024  +
        9025  +
        #[test]
        9026  +
        fn test_get_vanilla_query_order_key_case() {
        9027  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        9028  +
        }
        9029  +
        9030  +
        #[test]
        9031  +
        fn test_get_vanilla_query_unreserved() {
        9032  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        9033  +
        }
        9034  +
        9035  +
        #[test]
        9036  +
        #[ignore = "httparse fails on invalid uri character"]
        9037  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9038  +
        fn test_get_vanilla_utf8_query() {
        9039  +
            run_test_suite_v4("get-vanilla-utf8-query");
        9040  +
        }
        9041  +
        9042  +
        #[test]
        9043  +
        fn test_get_vanilla_with_session_token() {
        9044  +
            run_test_suite_v4("get-vanilla-with-session-token");
        9045  +
        }
        9046  +
        9047  +
        #[test]
        9048  +
        fn test_post_header_key_case() {
        9049  +
            run_test_suite_v4("post-header-key-case");
        9050  +
        }
        9051  +
        9052  +
        #[test]
        9053  +
        fn test_post_header_key_sort() {
        9054  +
            run_test_suite_v4("post-header-key-sort");
        9055  +
        }
        9056  +
        9057  +
        #[test]
        9058  +
        fn test_post_header_value_case() {
        9059  +
            run_test_suite_v4("post-header-value-case");
        9060  +
        }
        9061  +
        9062  +
        #[test]
        9063  +
        fn test_post_sts_header_after() {
        9064  +
            run_test_suite_v4("post-sts-header-after");
        9065  +
        }
        9066  +
        9067  +
        #[test]
        9068  +
        fn test_post_sts_header_before() {
        9069  +
            run_test_suite_v4("post-sts-header-before");
        9070  +
        }
        9071  +
        9072  +
        #[test]
        9073  +
        fn test_post_vanilla() {
        9074  +
            run_test_suite_v4("post-vanilla");
        9075  +
        }
        9076  +
        9077  +
        #[test]
        9078  +
        fn test_post_vanilla_empty_query_value() {
        9079  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        9080  +
        }
        9081  +
        9082  +
        #[test]
        9083  +
        fn test_post_vanilla_query() {
        9084  +
            run_test_suite_v4("post-vanilla-query");
        9085  +
        }
        9086  +
        9087  +
        #[test]
        9088  +
        fn test_post_x_www_form_urlencoded() {
        9089  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        9090  +
        }
        9091  +
        9092  +
        #[test]
        9093  +
        fn test_post_x_www_form_urlencoded_parameters() {
        9094  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        9095  +
        }
        9096  +
    }
 7012   9097   
}
 7013   9098   
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
 7014   9099   
index be6c496..86eec20 100644
 7015         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        9100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 7016   9101   
@@ -1,242 +1,453 @@
 7017   9102   
/*
 7018   9103   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 7019   9104   
 * SPDX-License-Identifier: Apache-2.0
 7020   9105   
 */
 7021   9106   
 7022   9107   
//! Functions shared between the tests of several modules.
 7023   9108   
 7024         -
use crate::http_request::{SignableBody, SignableRequest};
        9109  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        9110  +
use crate::http_request::{
        9111  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        9112  +
    SigningSettings,
        9113  +
};
        9114  +
use aws_credential_types::Credentials;
        9115  +
use aws_smithy_runtime_api::client::identity::Identity;
 7025   9116   
use http0::{Method, Uri};
        9117  +
use std::borrow::Cow;
 7026   9118   
use std::error::Error as StdError;
        9119  +
use std::time::{Duration, SystemTime};
        9120  +
use time::format_description::well_known::Rfc3339;
        9121  +
use time::OffsetDateTime;
        9122  +
        9123  +
/// Common test suite collection
        9124  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        9125  +
enum Collection {
        9126  +
    V4,
        9127  +
    V4A,
        9128  +
}
 7027   9129   
 7028         -
pub(crate) mod v4 {
 7029         -
    use super::*;
        9130  +
/// A test from the common CRT test suite
        9131  +
#[derive(Debug, Clone)]
        9132  +
pub(crate) struct SigningSuiteTest {
        9133  +
    test_name: &'static str,
        9134  +
    collection: Collection,
        9135  +
}
 7030   9136   
 7031         -
    fn path(name: &str, ext: &str) -> String {
 7032         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        9137  +
impl SigningSuiteTest {
        9138  +
    /// Create a new test from the V4 test suite
        9139  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        9140  +
        Self {
        9141  +
            test_name,
        9142  +
            collection: Collection::V4,
        9143  +
        }
 7033   9144   
    }
 7034   9145   
 7035         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 7036         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 7037         -
        read(&path(name, "creq")).trim().to_string()
        9146  +
    /// Create a new test from the V4a test suite
        9147  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        9148  +
        Self {
        9149  +
            test_name,
        9150  +
            collection: Collection::V4A,
        9151  +
        }
 7038   9152   
    }
 7039   9153   
 7040         -
    pub(crate) fn test_sts(name: &str) -> String {
 7041         -
        read(&path(name, "sts"))
        9154  +
    /// Get the path to a file in this test suite directory
        9155  +
    fn path(&self, filename: &str) -> String {
        9156  +
        let dir = match self.collection {
        9157  +
            Collection::V4 => "v4",
        9158  +
            Collection::V4A => "v4a",
        9159  +
        };
        9160  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 7042   9161   
    }
 7043   9162   
 7044         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7045         -
        test_parsed_request(name, "req")
        9163  +
    /// Get the HTTP request for the test
        9164  +
    pub(crate) fn request(&self) -> TestRequest {
        9165  +
        test_parsed_request(&self.path("request.txt"))
 7046   9166   
    }
 7047   9167   
 7048         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 7049         -
        test_parsed_request(name, "sreq")
        9168  +
    /// Get the signed HTTP request for the test
        9169  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        9170  +
        match signature_location {
        9171  +
            SignatureLocation::QueryParams => {
        9172  +
                test_parsed_request(&self.path("query-signed-request.txt"))
        9173  +
            }
        9174  +
            SignatureLocation::Headers => {
        9175  +
                test_parsed_request(&self.path("header-signed-request.txt"))
        9176  +
            }
        9177  +
        }
 7050   9178   
    }
 7051   9179   
 7052         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 7053         -
        test_parsed_request(name, "qpsreq")
        9180  +
    /// Get the canonical request for the test
        9181  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        9182  +
        match signature_location {
        9183  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        9184  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
        9185  +
        }
 7054   9186   
    }
 7055   9187   
 7056         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 7057         -
        let path = path(name, ext);
 7058         -
        match parse_request(read(&path).as_bytes()) {
 7059         -
            Ok(parsed) => parsed,
 7060         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        9188  +
    /// Get the string to sign for the test
        9189  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
        9190  +
        match signature_location {
        9191  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        9192  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 7061   9193   
        }
 7062   9194   
    }
 7063   9195   
 7064         -
    #[test]
 7065         -
    fn test_parse() {
 7066         -
        test_request("post-header-key-case");
        9196  +
    /// Get the signature for the test
        9197  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
        9198  +
        match signature_location {
        9199  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        9200  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        9201  +
        }
 7067   9202   
    }
 7068   9203   
 7069         -
    #[test]
 7070         -
    fn test_read_query_params() {
 7071         -
        test_request("get-vanilla-query-order-key-case");
        9204  +
    /// Get the test context for the test
        9205  +
    pub(crate) fn context(&self) -> TestContext {
        9206  +
        let context = read(&self.path("context.json"));
        9207  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        9208  +
        tc_builder.build()
 7072   9209   
    }
 7073   9210   
}
 7074   9211   
 7075         -
#[cfg(feature = "sigv4a")]
 7076         -
pub(crate) mod v4a {
 7077         -
    use super::*;
 7078         -
    use crate::http_request::{
 7079         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 7080         -
    };
 7081         -
    use aws_credential_types::Credentials;
 7082         -
    use aws_smithy_runtime_api::client::identity::Identity;
 7083         -
    use serde_derive::Deserialize;
 7084         -
    use std::time::{Duration, SystemTime};
 7085         -
    use time::format_description::well_known::Rfc3339;
 7086         -
    use time::OffsetDateTime;
 7087         -
 7088         -
    fn path(test_name: &str, definition_name: &str) -> String {
 7089         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        9212  +
fn test_parsed_request(path: &str) -> TestRequest {
        9213  +
    match parse_request(read(path).as_bytes()) {
        9214  +
        Ok(parsed) => parsed,
        9215  +
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 7090   9216   
    }
        9217  +
}
 7091   9218   
 7092         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7093         -
        test_parsed_request(&path(name, "request"))
 7094         -
    }
        9219  +
fn new_v4_signing_params_from_context(
        9220  +
    test_context: &'_ TestContext,
        9221  +
    signature_location: SignatureLocation,
        9222  +
) -> crate::http_request::SigningParams<'_> {
        9223  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        9224  +
    params.settings.signature_location = signature_location;
        9225  +
    params.into()
        9226  +
}
 7095   9227   
 7096         -
    pub(crate) fn test_canonical_request(
 7097         -
        name: &str,
 7098         -
        signature_location: SignatureLocation,
 7099         -
    ) -> String {
 7100         -
        match signature_location {
 7101         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 7102         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        9228  +
/// Run the given test from the v4 suite for both header and query
        9229  +
/// signature locations
        9230  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        9231  +
    run_v4_test(test_name, SignatureLocation::Headers);
        9232  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        9233  +
}
        9234  +
        9235  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        9236  +
    assert_eq!(expected.scheme(), actual.scheme());
        9237  +
    assert_eq!(expected.authority(), actual.authority());
        9238  +
    assert_eq!(expected.path(), actual.path());
        9239  +
        9240  +
    // query params may be out of order
        9241  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9242  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        9243  +
    expected_params.sort();
        9244  +
        9245  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9246  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        9247  +
    actual_params.sort();
        9248  +
        9249  +
    assert_eq!(expected_params, actual_params);
        9250  +
}
        9251  +
        9252  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        9253  +
    let expected = expected.as_http_request();
        9254  +
    let actual = actual;
        9255  +
    assert_eq!(expected.method(), actual.method());
        9256  +
    assert_eq!(
        9257  +
        expected.headers().len(),
        9258  +
        actual.headers().len(),
        9259  +
        "extra or missing headers"
        9260  +
    );
        9261  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        9262  +
    assert_uri_eq(expected.uri(), actual.uri());
        9263  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        9264  +
}
        9265  +
        9266  +
/// Run the given test from the v4 suite for the given signature location
        9267  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        9268  +
    let test = SigningSuiteTest::v4(test_name);
        9269  +
    let tc = test.context();
        9270  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        9271  +
        9272  +
    let req = test.request();
        9273  +
    let expected_creq = test.canonical_request(signature_location);
        9274  +
    let signable_req = SignableRequest::from(&req);
        9275  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9276  +
        9277  +
    // check canonical request
        9278  +
    assert_eq!(
        9279  +
        expected_creq,
        9280  +
        actual_creq.to_string(),
        9281  +
        "canonical request didn't match (signature location: {signature_location:?})"
        9282  +
    );
        9283  +
        9284  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        9285  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9286  +
    let actual_string_to_sign = StringToSign::new_v4(
        9287  +
        *params.time(),
        9288  +
        params.region().unwrap(),
        9289  +
        params.name(),
        9290  +
        hashed_creq,
        9291  +
    )
        9292  +
    .to_string();
        9293  +
        9294  +
    // check string to sign
        9295  +
    assert_eq!(
        9296  +
        expected_string_to_sign, actual_string_to_sign,
        9297  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        9298  +
    );
        9299  +
        9300  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        9301  +
    let mut signed = req.as_http_request();
        9302  +
    out.output.apply_to_request_http0x(&mut signed);
        9303  +
        9304  +
    // check signature
        9305  +
    assert_eq!(
        9306  +
        test.signature(signature_location),
        9307  +
        out.signature,
        9308  +
        "signature didn't match (signature location: {signature_location:?})"
        9309  +
    );
        9310  +
        9311  +
    let expected = test.signed_request(signature_location);
        9312  +
    assert_requests_eq(expected, signed);
        9313  +
}
        9314  +
        9315  +
/// Test suite context.json
        9316  +
pub(crate) struct TestContext {
        9317  +
    pub(crate) identity: Identity,
        9318  +
    pub(crate) expiration_in_seconds: u64,
        9319  +
    pub(crate) normalize: bool,
        9320  +
    pub(crate) region: String,
        9321  +
    pub(crate) service: String,
        9322  +
    pub(crate) timestamp: String,
        9323  +
    pub(crate) omit_session_token: bool,
        9324  +
    pub(crate) sign_body: bool,
        9325  +
}
        9326  +
        9327  +
// Serde has limitations requiring this odd workaround.
        9328  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        9329  +
fn return_true() -> bool {
        9330  +
    true
        9331  +
}
        9332  +
        9333  +
#[derive(serde_derive::Deserialize)]
        9334  +
pub(crate) struct TestContextBuilder {
        9335  +
    credentials: TestContextCreds,
        9336  +
    expiration_in_seconds: u64,
        9337  +
    normalize: bool,
        9338  +
    region: String,
        9339  +
    service: String,
        9340  +
    timestamp: String,
        9341  +
    #[serde(default)]
        9342  +
    omit_session_token: bool,
        9343  +
    #[serde(default = "return_true")]
        9344  +
    sign_body: bool,
        9345  +
}
        9346  +
        9347  +
impl TestContextBuilder {
        9348  +
    pub(crate) fn build(self) -> TestContext {
        9349  +
        let identity = Identity::new(
        9350  +
            Credentials::from_keys(
        9351  +
                &self.credentials.access_key_id,
        9352  +
                &self.credentials.secret_access_key,
        9353  +
                self.credentials.token.clone(),
        9354  +
            ),
        9355  +
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
        9356  +
        );
        9357  +
        9358  +
        TestContext {
        9359  +
            identity,
        9360  +
            expiration_in_seconds: self.expiration_in_seconds,
        9361  +
            normalize: self.normalize,
        9362  +
            region: self.region,
        9363  +
            service: self.service,
        9364  +
            timestamp: self.timestamp,
        9365  +
            omit_session_token: self.omit_session_token,
        9366  +
            sign_body: self.sign_body,
 7103   9367   
        }
 7104   9368   
    }
        9369  +
}
 7105   9370   
 7106         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
 7107         -
        match signature_location {
 7108         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 7109         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        9371  +
#[derive(serde_derive::Deserialize)]
        9372  +
pub(crate) struct TestContextCreds {
        9373  +
    access_key_id: String,
        9374  +
    secret_access_key: String,
        9375  +
    token: Option<String>,
        9376  +
}
        9377  +
        9378  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        9379  +
    fn from(tc: &'a TestContext) -> Self {
        9380  +
        crate::sign::v4::SigningParams {
        9381  +
            identity: &tc.identity,
        9382  +
            region: &tc.region,
        9383  +
            name: &tc.service,
        9384  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        9385  +
                .unwrap()
        9386  +
                .into(),
        9387  +
            settings: SigningSettings {
        9388  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        9389  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        9390  +
                uri_path_normalization_mode: tc.normalize.into(),
        9391  +
                session_token_mode: if tc.omit_session_token {
        9392  +
                    SessionTokenMode::Exclude
        9393  +
                } else {
        9394  +
                    SessionTokenMode::Include
        9395  +
                },
        9396  +
                payload_checksum_kind: if tc.sign_body {
        9397  +
                    PayloadChecksumKind::XAmzSha256
        9398  +
                } else {
        9399  +
                    PayloadChecksumKind::NoHeader
        9400  +
                },
        9401  +
                ..Default::default()
        9402  +
            },
 7110   9403   
        }
 7111   9404   
    }
        9405  +
}
 7112   9406   
 7113         -
    fn test_parsed_request(path: &str) -> TestRequest {
 7114         -
        match parse_request(read(path).as_bytes()) {
 7115         -
            Ok(parsed) => parsed,
 7116         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
 7117         -
        }
        9407  +
#[cfg(feature = "sigv4a")]
        9408  +
pub(crate) mod v4a {
        9409  +
    use super::*;
        9410  +
    use crate::http_request::{
        9411  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        9412  +
    };
        9413  +
    use crate::sign::v4a;
        9414  +
    use p256::ecdsa::signature::{Signature, Verifier};
        9415  +
    use p256::ecdsa::{DerSignature, SigningKey};
        9416  +
    use std::time::Duration;
        9417  +
    use time::format_description::well_known::Rfc3339;
        9418  +
    use time::OffsetDateTime;
        9419  +
        9420  +
    fn new_v4a_signing_params_from_context(
        9421  +
        test_context: &'_ TestContext,
        9422  +
        signature_location: SignatureLocation,
        9423  +
    ) -> crate::http_request::SigningParams<'_> {
        9424  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        9425  +
        params.settings.signature_location = signature_location;
        9426  +
        params.into()
 7118   9427   
    }
 7119   9428   
 7120         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 7121         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 7122         -
        let context = read(&path);
 7123         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 7124         -
        tc_builder.build()
        9429  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        9430  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        9431  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
 7125   9432   
    }
 7126   9433   
 7127         -
    pub(crate) struct TestContext {
 7128         -
        pub(crate) identity: Identity,
 7129         -
        pub(crate) expiration_in_seconds: u64,
 7130         -
        pub(crate) normalize: bool,
 7131         -
        pub(crate) region: String,
 7132         -
        pub(crate) service: String,
 7133         -
        pub(crate) timestamp: String,
 7134         -
        pub(crate) omit_session_token: bool,
 7135         -
        pub(crate) sign_body: bool,
        9434  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        9435  +
        let test = SigningSuiteTest::v4a(test_name);
        9436  +
        let tc = test.context();
        9437  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        9438  +
        9439  +
        let req = test.request();
        9440  +
        let expected_creq = test.canonical_request(signature_location);
        9441  +
        let signable_req = SignableRequest::from(&req);
        9442  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9443  +
        9444  +
        assert_eq!(
        9445  +
            expected_creq,
        9446  +
            actual_creq.to_string(),
        9447  +
            "canonical request didn't match (signature location: {signature_location:?})"
        9448  +
        );
        9449  +
        9450  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        9451  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9452  +
        let actual_string_to_sign = StringToSign::new_v4a(
        9453  +
            *params.time(),
        9454  +
            params.region_set().unwrap(),
        9455  +
            params.name(),
        9456  +
            hashed_creq,
        9457  +
        )
        9458  +
        .to_string();
        9459  +
        9460  +
        assert_eq!(
        9461  +
            expected_string_to_sign, actual_string_to_sign,
        9462  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        9463  +
        );
        9464  +
        9465  +
        let out = sign(signable_req, &params).unwrap();
        9466  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        9467  +
        out.output
        9468  +
            .apply_to_request_http0x(&mut req.as_http_request());
        9469  +
        9470  +
        let creds = params.credentials().unwrap();
        9471  +
        let signing_key =
        9472  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        9473  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        9474  +
        let sig = sig
        9475  +
            .try_into()
        9476  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        9477  +
        9478  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        9479  +
        let peer_public_key = signing_key.verifying_key();
        9480  +
        let sts = actual_string_to_sign.as_bytes();
        9481  +
        peer_public_key.verify(sts, &sig).unwrap();
        9482  +
        // TODO(sigv4a) - use public.key.json as verifying key?
 7136   9483   
    }
 7137   9484   
 7138   9485   
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 7139   9486   
        fn from(tc: &'a TestContext) -> Self {
 7140   9487   
            crate::sign::v4a::SigningParams {
 7141   9488   
                identity: &tc.identity,
 7142   9489   
                region_set: &tc.region,
 7143   9490   
                name: &tc.service,
 7144   9491   
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 7145   9492   
                    .unwrap()
 7146   9493   
                    .into(),
 7147   9494   
                settings: SigningSettings {
 7148   9495   
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 7149   9496   
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 7150   9497   
                    uri_path_normalization_mode: tc.normalize.into(),
 7151   9498   
                    session_token_mode: if tc.omit_session_token {
 7152   9499   
                        SessionTokenMode::Exclude
 7153   9500   
                    } else {
 7154   9501   
                        SessionTokenMode::Include
 7155   9502   
                    },
 7156   9503   
                    payload_checksum_kind: if tc.sign_body {
 7157   9504   
                        PayloadChecksumKind::XAmzSha256
 7158   9505   
                    } else {
 7159   9506   
                        PayloadChecksumKind::NoHeader
 7160   9507   
                    },
 7161   9508   
                    ..Default::default()
 7162   9509   
                },
 7163   9510   
            }
 7164   9511   
        }
 7165   9512   
    }
 7166   9513   
 7167         -
    // Serde has limitations requiring this odd workaround.
 7168         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 7169         -
    fn return_true() -> bool {
 7170         -
        true
 7171         -
    }
 7172         -
 7173         -
    #[derive(Deserialize)]
 7174         -
    pub(crate) struct TestContextBuilder {
 7175         -
        credentials: TestContextCreds,
 7176         -
        expiration_in_seconds: u64,
 7177         -
        normalize: bool,
 7178         -
        region: String,
 7179         -
        service: String,
 7180         -
        timestamp: String,
 7181         -
        #[serde(default)]
 7182         -
        omit_session_token: bool,
 7183         -
        #[serde(default = "return_true")]
 7184         -
        sign_body: bool,
 7185         -
    }
 7186         -
 7187         -
    impl TestContextBuilder {
 7188         -
        pub(crate) fn build(self) -> TestContext {
 7189         -
            let identity = Identity::new(
 7190         -
                Credentials::from_keys(
 7191         -
                    &self.credentials.access_key_id,
 7192         -
                    &self.credentials.secret_access_key,
 7193         -
                    self.credentials.token.clone(),
 7194         -
                ),
 7195         -
                Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 7196         -
            );
 7197         -
 7198         -
            TestContext {
 7199         -
                identity,
 7200         -
                expiration_in_seconds: self.expiration_in_seconds,
 7201         -
                normalize: self.normalize,
 7202         -
                region: self.region,
 7203         -
                service: self.service,
 7204         -
                timestamp: self.timestamp,
 7205         -
                omit_session_token: self.omit_session_token,
 7206         -
                sign_body: self.sign_body,
 7207         -
            }
 7208         -
        }
 7209         -
    }
 7210         -
 7211         -
    #[derive(Deserialize)]
 7212         -
    pub(crate) struct TestContextCreds {
 7213         -
        access_key_id: String,
 7214         -
        secret_access_key: String,
 7215         -
        token: Option<String>,
 7216         -
    }
 7217         -
 7218   9514   
    #[test]
 7219   9515   
    fn test_parse() {
 7220         -
        let req = test_request("post-header-key-case");
        9516  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 7221   9517   
        assert_eq!(req.method, "POST");
 7222   9518   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7223   9519   
        assert!(req.headers.is_empty());
 7224   9520   
    }
 7225   9521   
 7226   9522   
    #[test]
 7227   9523   
    fn test_read_query_params() {
 7228         -
        let req = test_request("get-header-value-trim");
        9524  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 7229   9525   
        assert_eq!(req.method, "GET");
 7230   9526   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7231   9527   
        assert!(!req.headers.is_empty());
 7232   9528   
    }
 7233   9529   
}
 7234   9530   
 7235   9531   
fn read(path: &str) -> String {
 7236   9532   
    println!("Loading `{}` for test case...", path);
 7237   9533   
    let v = {
 7238   9534   
        match std::fs::read_to_string(path) {
 7239   9535   
            // This replacement is necessary for tests to pass on Windows, as reading the
 7240   9536   
            // test snapshots from the file system results in CRLF line endings being inserted.
 7241   9537   
            Ok(value) => value.replace("\r\n", "\n"),
 7242   9538   
            Err(err) => {
 7243   9539   
                panic!("failed to load test case `{}`: {}", path, err);
 7244   9540   
            }
 7245   9541   
        }
 7246   9542   
    };
 7247   9543   
 7248   9544   
    v.trim().to_string()
 7249   9545   
}
 7250   9546   
 7251   9547   
pub(crate) struct TestRequest {
 7252   9548   
    pub(crate) uri: String,
 7253   9549   
    pub(crate) method: String,
 7254   9550   
    pub(crate) headers: Vec<(String, String)>,
 7255   9551   
    pub(crate) body: TestSignedBody,
 7256   9552   
}
 7257   9553   
 7258   9554   
pub(crate) enum TestSignedBody {
 7259   9555   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 7260   9556   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 7261   9557   
                    )
 7262   9558   
                })
 7263   9559   
                .collect::<Vec<_>>(),
 7264   9560   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 7265   9561   
        }
 7266   9562   
    }
 7267   9563   
}
 7268   9564   
 7269   9565   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 7270   9566   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 7271   9567   
        SignableRequest::new(
 7272   9568   
            &request.method,
 7273   9569   
            &request.uri,
 7274   9570   
            request
 7275   9571   
                .headers
 7276   9572   
                .iter()
 7277   9573   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 7278   9574   
            request.body.as_signable_body(),
 7279   9575   
        )
 7280   9576   
        .expect("URI MUST be valid")
 7281   9577   
    }
 7282   9578   
}
 7283   9579   
 7284   9580   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 7285   9581   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 7286   9582   
    // httparse 1.5 requires two trailing newlines to head the header section.
 7287   9583   
    let mut with_newline = Vec::from(s);
 7288   9584   
    with_newline.push(b'\n');
 7289   9585   
    let mut req = httparse::Request::new(&mut headers);
 7290         -
    let _ = req.parse(&with_newline).unwrap();
        9586  +
    let status = req.parse(&with_newline).unwrap();
        9587  +
        9588  +
    let body = if status.is_complete() {
        9589  +
        let body_offset = status.unwrap();
        9590  +
        // ignore the newline we added, take from original
        9591  +
        &s[body_offset..]
        9592  +
    } else {
        9593  +
        &[]
        9594  +
    };
 7291   9595   
 7292   9596   
    let mut uri_builder = Uri::builder().scheme("https");
 7293   9597   
    if let Some(path) = req.path {
 7294   9598   
        uri_builder = uri_builder.path_and_query(path);
 7295   9599   
    }
 7296   9600   
 7297   9601   
    let mut headers = vec![];
 7298   9602   
    for header in req.headers {
 7299   9603   
        let name = header.name.to_lowercase();
 7300   9604   
        if name == "host" {
 7301   9605   
            uri_builder = uri_builder.authority(header.value);
 7302   9606   
        } else if !name.is_empty() {
 7303   9607   
            headers.push((
 7304   9608   
                header.name.to_string(),
 7305   9609   
                std::str::from_utf8(header.value)?.to_string(),
 7306   9610   
            ));
 7307   9611   
        }
 7308   9612   
    }
 7309   9613   
 7310   9614   
    Ok(TestRequest {
 7311   9615   
        uri: uri_builder.build()?.to_string(),
 7312   9616   
        method: req.method.unwrap().to_string(),
 7313   9617   
        headers,
 7314         -
        body: TestSignedBody::Bytes(vec![]),
        9618  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 7315   9619   
    })
 7316   9620   
}
 7317   9621   
 7318   9622   
#[test]
 7319   9623   
fn test_parse_headers() {
 7320   9624   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 7321   9625   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 7322   9626   
    assert_eq!(
 7323   9627   
        httparse::parse_headers(buf, &mut headers),
 7324   9628   
        Ok(httparse::Status::Complete((
 7325   9629   
            56,
 7326   9630   
            &[
 7327   9631   
                httparse::Header {
 7328   9632   
                    name: "Host",
 7329   9633   
                    value: b"example.amazonaws.com",
 7330   9634   
                },
 7331   9635   
                httparse::Header {
 7332   9636   
                    name: "X-Amz-Date",
 7333   9637   
                    value: b"20150830T123600Z",
 7334   9638   
                }
 7335   9639   
            ][..]
 7336   9640   
        )))
 7337   9641   
    );
 7338   9642   
}
 7339   9643   
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
 7340   9644   
index a208453..fc00249 100644
 7341         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        9645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 7342   9646   
@@ -168,52 +168,54 @@ pub mod signing_params {
 7343   9647   
        );
 7344   9648   
 7345   9649   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 7346   9650   
        /// a required argument was not given.
 7347   9651   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 7348   9652   
            Ok(SigningParams {
 7349   9653   
                identity: self
 7350   9654   
                    .identity
 7351   9655   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 7352   9656   
                region: self
 7353   9657   
                    .region
 7354   9658   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 7355   9659   
                name: self
 7356   9660   
                    .name
 7357   9661   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 7358   9662   
                time: self
 7359   9663   
                    .time
 7360   9664   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 7361   9665   
                settings: self
 7362   9666   
                    .settings
 7363   9667   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 7364   9668   
            })
 7365   9669   
        }
 7366   9670   
    }
 7367   9671   
}
 7368   9672   
 7369   9673   
#[cfg(test)]
 7370   9674   
mod tests {
 7371   9675   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 7372   9676   
    use crate::date_time::test_parsers::parse_date_time;
 7373         -
    use crate::http_request::test;
 7374   9677   
 7375   9678   
    #[test]
 7376   9679   
    fn test_signature_calculation() {
 7377   9680   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 7378         -
        let creq = test::v4::test_canonical_request("iam");
        9681  +
        let creq = r#"AWS4-HMAC-SHA256
        9682  +
20150830T123600Z
        9683  +
20150830/us-east-1/iam/aws4_request
        9684  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 7379   9685   
        let time = parse_date_time("20150830T123600Z").unwrap();
 7380   9686   
 7381   9687   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 7382   9688   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 7383   9689   
 7384   9690   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 7385   9691   
        assert_eq!(expected, &signature);
 7386   9692   
    }
 7387   9693   
 7388   9694   
    #[test]
 7389   9695   
    fn sign_payload_empty_string() {
 7390   9696   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 7391   9697   
        let actual = sha256_hex_string([]);
 7392   9698   
        assert_eq!(expected, actual);
 7393   9699   
    }
 7394   9700   
}
 7395   9701   
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
 7396   9702   
index ce78c38..8c2f591 100644
 7397         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        9703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 7398   9704   
@@ -1,43 +1,43 @@
 7399   9705   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7400   9706   
[package]
 7401   9707   
name = "aws-smithy-checksums"
 7402   9708   
version = "0.63.5"
 7403   9709   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 7404   9710   
description = "Checksum calculation and verification callbacks"
 7405   9711   
edition = "2021"
 7406   9712   
license = "Apache-2.0"
 7407   9713   
repository = "https://github.com/smithy-lang/smithy-rs"
 7408   9714   
[package.metadata.docs.rs]
 7409   9715   
all-features = true
 7410   9716   
targets = ["x86_64-unknown-linux-gnu"]
 7411   9717   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7412   9718   
rustdoc-args = ["--cfg", "docsrs"]
 7413   9719   
 7414   9720   
[dependencies]
 7415   9721   
bytes = "1.10.0"
 7416   9722   
crc-fast = "1.3.0"
 7417   9723   
hex = "0.4.3"
 7418   9724   
http = "0.2.9"
 7419   9725   
http-body = "0.4.5"
 7420   9726   
md-5 = "0.10"
 7421   9727   
pin-project-lite = "0.2.14"
 7422   9728   
sha1 = "0.10"
 7423   9729   
sha2 = "0.10"
 7424   9730   
tracing = "0.1.40"
 7425   9731   
 7426   9732   
[dependencies.aws-smithy-http]
 7427   9733   
path = "../aws-smithy-http"
 7428         -
version = "0.62.2"
        9734  +
version = "0.62.3"
 7429   9735   
 7430   9736   
[dependencies.aws-smithy-types]
 7431   9737   
path = "../aws-smithy-types"
 7432   9738   
version = "1.3.2"
 7433   9739   
 7434   9740   
[dev-dependencies]
 7435   9741   
bytes-utils = "0.1.2"
 7436   9742   
pretty_assertions = "1.3"
 7437   9743   
tracing-test = "0.2.1"
 7438   9744   
 7439   9745   
[dev-dependencies.tokio]
 7440   9746   
version = "1.23.1"
 7441   9747   
features = ["macros", "rt"]
 7442   9748   
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
 7443   9749   
index 970c99e..d3c7a49 100644
 7444         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        9750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 7445   9751   
@@ -1,34 +1,34 @@
 7446   9752   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7447   9753   
[package]
 7448   9754   
name = "aws-smithy-http"
 7449         -
version = "0.62.2"
        9755  +
version = "0.62.3"
 7450   9756   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7451   9757   
description = "Smithy HTTP logic for smithy-rs."
 7452   9758   
edition = "2021"
 7453   9759   
license = "Apache-2.0"
 7454   9760   
repository = "https://github.com/smithy-lang/smithy-rs"
 7455   9761   
[package.metadata.docs.rs]
 7456   9762   
all-features = true
 7457   9763   
targets = ["x86_64-unknown-linux-gnu"]
 7458   9764   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7459   9765   
rustdoc-args = ["--cfg", "docsrs"]
 7460   9766   
 7461   9767   
[features]
 7462   9768   
event-stream = ["aws-smithy-eventstream"]
 7463   9769   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 7464   9770   
 7465   9771   
[dependencies]
 7466   9772   
bytes = "1.10.0"
 7467   9773   
bytes-utils = "0.1"
 7468   9774   
percent-encoding = "2.3.1"
 7469   9775   
pin-project-lite = "0.2.14"
 7470   9776   
pin-utils = "0.1.0"
 7471   9777   
tracing = "0.1.40"
 7472   9778   
futures-core = "0.3.31"
 7473   9779   
 7474   9780   
[dependencies.aws-smithy-eventstream]
 7475   9781   
path = "../aws-smithy-eventstream"
 7476   9782   
optional = true
 7477   9783   
version = "0.60.10"
 7478   9784   
 7479   9785   
[dependencies.aws-smithy-runtime-api]
 7480   9786   
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
 7481   9787   
index 508f7a2..361545e 100644
 7482         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        9788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 7483   9789   
@@ -1,27 +1,27 @@
 7484   9790   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7485   9791   
[[bin]]
 7486   9792   
name = "read_many_from_str"
 7487   9793   
path = "fuzz_targets/read_many_from_str.rs"
 7488   9794   
test = false
 7489   9795   
doc = false
 7490   9796   
 7491   9797   
[package]
 7492   9798   
name = "aws-smithy-http-fuzz"
 7493   9799   
version = "0.0.0"
 7494   9800   
authors = ["Automatically generated"]
 7495   9801   
publish = false
 7496   9802   
edition = "2021"
 7497   9803   
 7498   9804   
[package.metadata]
 7499   9805   
cargo-fuzz = true
 7500   9806   
 7501   9807   
[dependencies]
 7502   9808   
libfuzzer-sys = "=0.4.7"
 7503   9809   
http = "0.2.3"
 7504   9810   
 7505   9811   
[dependencies.aws-smithy-http]
 7506   9812   
path = ".."
 7507         -
version = "0.62.2"
        9813  +
version = "0.62.3"
 7508   9814   
 7509   9815   
[workspace]
 7510   9816   
members = ["."]
 7511   9817   
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
 7512   9818   
index fef41d0..2792229 100644
 7513         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        9819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 7514   9820   
@@ -25,68 +25,74 @@ impl QueryWriter {
 7515   9821   
    pub fn new(uri: &Uri) -> Self {
 7516   9822   
        let new_path_and_query = uri
 7517   9823   
            .path_and_query()
 7518   9824   
            .map(|pq| pq.to_string())
 7519   9825   
            .unwrap_or_default();
 7520   9826   
        let prefix = if uri.query().is_none() {
 7521   9827   
            Some('?')
 7522   9828   
        } else if !uri.query().unwrap_or_default().is_empty() {
 7523   9829   
            Some('&')
 7524   9830   
        } else {
 7525   9831   
            None
 7526   9832   
        };
 7527   9833   
        QueryWriter {
 7528   9834   
            base_uri: uri.clone(),
 7529   9835   
            new_path_and_query,
 7530   9836   
            prefix,
 7531   9837   
        }
 7532   9838   
    }
 7533   9839   
 7534   9840   
    /// Clears all query parameters.
 7535   9841   
    pub fn clear_params(&mut self) {
 7536   9842   
        if let Some(index) = self.new_path_and_query.find('?') {
 7537   9843   
            self.new_path_and_query.truncate(index);
 7538   9844   
            self.prefix = Some('?');
 7539   9845   
        }
 7540   9846   
    }
 7541   9847   
 7542   9848   
    /// Inserts a new query parameter. The key and value are percent encoded
 7543   9849   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 7544   9850   
    pub fn insert(&mut self, k: &str, v: &str) {
        9851  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        9852  +
    }
        9853  +
    
        9854  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        9855  +
    /// as is.
        9856  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 7545   9857   
        if let Some(prefix) = self.prefix {
 7546   9858   
            self.new_path_and_query.push(prefix);
 7547   9859   
        }
 7548   9860   
        self.prefix = Some('&');
 7549         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        9861  +
        self.new_path_and_query.push_str(encoded_k);
 7550   9862   
        self.new_path_and_query.push('=');
 7551         -
 7552         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
        9863  +
        self.new_path_and_query.push_str(encoded_v)
        9864  +
        
 7553   9865   
    }
 7554   9866   
 7555   9867   
    /// Returns just the built query string.
 7556   9868   
    pub fn build_query(self) -> String {
 7557   9869   
        self.build_uri().query().unwrap_or_default().to_string()
 7558   9870   
    }
 7559   9871   
 7560   9872   
    /// Returns a full [`Uri`] with the query string updated.
 7561   9873   
    pub fn build_uri(self) -> Uri {
 7562   9874   
        let mut parts = self.base_uri.into_parts();
 7563   9875   
        parts.path_and_query = Some(
 7564   9876   
            self.new_path_and_query
 7565   9877   
                .parse()
 7566   9878   
                .expect("adding query should not invalidate URI"),
 7567   9879   
        );
 7568   9880   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 7569   9881   
    }
 7570   9882   
}
 7571   9883   
 7572   9884   
#[cfg(test)]
 7573   9885   
mod test {
 7574   9886   
    use super::QueryWriter;
 7575   9887   
    use http_02x::Uri;
 7576   9888   
 7577   9889   
    #[test]
 7578   9890   
    fn empty_uri() {
 7579   9891   
        let uri = Uri::from_static("http://www.example.com");
 7580   9892   
        let mut query_writer = QueryWriter::new(&uri);
 7581   9893   
        query_writer.insert("key", "val%ue");
 7582   9894   
        query_writer.insert("another", "value");
 7583   9895   
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
 7584   9896   
index f108978..df7a9fe 100644
 7585         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        9897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 7586   9898   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 7587   9899   
 7588   9900   
[package.metadata.smithy-rs-release-tooling]
 7589   9901   
stable = true
 7590   9902   
[package.metadata.cargo-udeps.ignore]
 7591   9903   
normal = ["aws-smithy-http"]
 7592   9904   
 7593   9905   
[features]
 7594   9906   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 7595   9907   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 7596   9908   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 7597   9909   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 7598   9910   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 7599   9911   
rt-tokio = ["tokio/rt"]
 7600   9912   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 7601   9913   
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"]
 7602   9914   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 7603   9915   
 7604   9916   
[dependencies]
 7605   9917   
bytes = "1.10.0"
 7606   9918   
fastrand = "2.3.0"
 7607   9919   
pin-project-lite = "0.2.14"
 7608   9920   
pin-utils = "0.1.0"
 7609   9921   
tracing = "0.1.40"
 7610   9922   
 7611   9923   
[dependencies.aws-smithy-async]
 7612   9924   
path = "../aws-smithy-async"
 7613   9925   
version = "1.2.5"
 7614   9926   
 7615   9927   
[dependencies.aws-smithy-http]
 7616   9928   
path = "../aws-smithy-http"
 7617         -
version = "0.62.2"
        9929  +
version = "0.62.3"
 7618   9930   
 7619   9931   
[dependencies.aws-smithy-observability]
 7620   9932   
path = "../aws-smithy-observability"
 7621   9933   
version = "0.1.3"
 7622   9934   
 7623   9935   
[dependencies.aws-smithy-runtime-api]
 7624   9936   
path = "../aws-smithy-runtime-api"
 7625   9937   
version = "1.8.5"
 7626   9938   
 7627   9939   
[dependencies.aws-smithy-types]
 7628   9940   
path = "../aws-smithy-types"
 7629   9941   
features = ["http-body-0-4-x"]
 7630   9942   
version = "1.3.2"
 7631   9943   
 7632   9944   
[dependencies.aws-smithy-http-client]
 7633   9945   
path = "../aws-smithy-http-client"
 7634   9946   
optional = true
 7635   9947   
version = "1.0.6"
 7636   9948   
 7637   9949   
[dependencies.http-02x]
 7638   9950   
package = "http"
 7639   9951   
version = "0.2.9"
 7640   9952   
 7641   9953   
[dependencies.http-1x]
 7642   9954   
package = "http"
 7643   9955   
version = "1"
 7644   9956   
 7645   9957   
[dependencies.http-body-04x]
 7646   9958   
package = "http-body"
 7647   9959   
version = "0.4.5"
 7648   9960   
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
 7649   9961   
index 4e050c6..f58eb1c 100644
 7650         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
        9962  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 7651   9963   
@@ -1,33 +1,33 @@
 7652   9964   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7653   9965   
[package]
 7654   9966   
name = "aws-smithy-wasm"
 7655   9967   
version = "0.1.4"
 7656   9968   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 7657   9969   
description = "Smithy WebAssembly configuration for smithy-rs."
 7658   9970   
edition = "2021"
 7659   9971   
license = "Apache-2.0"
 7660   9972   
repository = "https://github.com/awslabs/smithy-rs"
 7661   9973   
[package.metadata.docs.rs]
 7662   9974   
all-features = true
 7663   9975   
targets = ["x86_64-unknown-linux-gnu"]
 7664   9976   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7665   9977   
rustdoc-args = ["--cfg", "docsrs"]
 7666   9978   
 7667   9979   
[dependencies]
 7668   9980   
bytes = "1.10.0"
 7669   9981   
http = "1.0.0"
 7670   9982   
tracing = "0.1.40"
 7671   9983   
wasi = "0.12.1"
 7672   9984   
 7673   9985   
[dependencies.aws-smithy-runtime-api]
 7674   9986   
path = "../aws-smithy-runtime-api"
 7675   9987   
features = ["http-1x"]
 7676   9988   
version = "1.8.5"
 7677   9989   
 7678   9990   
[dependencies.aws-smithy-http]
 7679   9991   
path = "../aws-smithy-http"
 7680         -
version = "0.62.2"
        9992  +
version = "0.62.3"
 7681   9993   
 7682   9994   
[dependencies.aws-smithy-types]
 7683   9995   
path = "../aws-smithy-types"
 7684   9996   
version = "1.3.2"
 7685   9997   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7686   9998   
index a880648..139e808 100644
 7687         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
        9999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7688  10000   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 7689  10001   
edition = "2021"
 7690  10002   
license = "Apache-2.0"
 7691  10003   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7692  10004   
rust-version = "1.86.0"
 7693  10005   
readme = "README.md"
 7694  10006   
[package.metadata.smithy]
 7695  10007   
codegen-version = "ci"
 7696  10008   
[package.metadata.docs.rs]
 7697  10009   
all-features = true
 7698  10010   
targets = ["x86_64-unknown-linux-gnu"]
 7699  10011   
[dependencies.aws-credential-types]
 7700  10012   
path = "../aws-credential-types"
 7701  10013   
version = "1.2.4"
 7702  10014   
 7703  10015   
[dependencies.aws-runtime]
 7704  10016   
path = "../aws-runtime"
 7705  10017   
features = ["event-stream"]
 7706  10018   
version = "1.5.9"
 7707  10019   
 7708  10020   
[dependencies.aws-smithy-async]
 7709  10021   
path = "../aws-smithy-async"
 7710  10022   
version = "1.2.5"
 7711  10023   
 7712  10024   
[dependencies.aws-smithy-eventstream]
 7713  10025   
path = "../aws-smithy-eventstream"
 7714  10026   
version = "0.60.10"
 7715  10027   
 7716  10028   
[dependencies.aws-smithy-http]
 7717  10029   
path = "../aws-smithy-http"
 7718  10030   
features = ["event-stream"]
 7719         -
version = "0.62.2"
       10031  +
version = "0.62.3"
 7720  10032   
 7721  10033   
[dependencies.aws-smithy-json]
 7722  10034   
path = "../aws-smithy-json"
 7723  10035   
version = "0.61.4"
 7724  10036   
 7725  10037   
[dependencies.aws-smithy-runtime]
 7726  10038   
path = "../aws-smithy-runtime"
 7727  10039   
features = ["client"]
 7728  10040   
version = "1.8.5"
 7729  10041   
 7730  10042   
[dependencies.aws-smithy-runtime-api]
 7731  10043   
path = "../aws-smithy-runtime-api"
 7732  10044   
features = ["client", "http-02x"]
 7733  10045   
version = "1.8.5"
 7734  10046   
 7735  10047   
[dependencies.aws-smithy-types]
 7736  10048   
path = "../aws-smithy-types"
 7737  10049   
version = "1.3.2"
 7738  10050   
 7739  10051   
[dependencies.aws-types]
 7740  10052   
path = "../aws-types"
 7741  10053   
version = "1.3.8"
 7742  10054   
 7743  10055   
[dependencies.bytes]
 7744  10056   
version = "1.4.0"
 7745  10057   
 7746  10058   
[dependencies.fastrand]
 7747  10059   
version = "2.0.0"
 7748  10060   
 7749  10061   
[dependencies.http]
 7750  10062   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7751  10063   
index 415ecc9..667d12b 100644
 7752         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
       10064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7753  10065   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 7754  10066   
edition = "2021"
 7755  10067   
license = "Apache-2.0"
 7756  10068   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7757  10069   
rust-version = "1.86.0"
 7758  10070   
readme = "README.md"
 7759  10071   
[package.metadata.smithy]
 7760  10072   
codegen-version = "ci"
 7761  10073   
[package.metadata.docs.rs]
 7762  10074   
all-features = true
 7763  10075   
targets = ["x86_64-unknown-linux-gnu"]
 7764  10076   
[dependencies.aws-credential-types]
 7765  10077   
path = "../aws-credential-types"
 7766  10078   
version = "1.2.4"
 7767  10079   
 7768  10080   
[dependencies.aws-runtime]
 7769  10081   
path = "../aws-runtime"
 7770  10082   
features = ["event-stream"]
 7771  10083   
version = "1.5.9"
 7772  10084   
 7773  10085   
[dependencies.aws-smithy-async]
 7774  10086   
path = "../aws-smithy-async"
 7775  10087   
version = "1.2.5"
 7776  10088   
 7777  10089   
[dependencies.aws-smithy-eventstream]
 7778  10090   
path = "../aws-smithy-eventstream"
 7779  10091   
version = "0.60.10"
 7780  10092   
 7781  10093   
[dependencies.aws-smithy-http]
 7782  10094   
path = "../aws-smithy-http"
 7783  10095   
features = ["event-stream"]
 7784         -
version = "0.62.2"
       10096  +
version = "0.62.3"
 7785  10097   
 7786  10098   
[dependencies.aws-smithy-json]
 7787  10099   
path = "../aws-smithy-json"
 7788  10100   
version = "0.61.4"
 7789  10101   
 7790  10102   
[dependencies.aws-smithy-runtime]
 7791  10103   
path = "../aws-smithy-runtime"
 7792  10104   
features = ["client"]
 7793  10105   
version = "1.8.5"
 7794  10106   
 7795  10107   
[dependencies.aws-smithy-runtime-api]
 7796  10108   
path = "../aws-smithy-runtime-api"
 7797  10109   
features = ["client", "http-02x"]
 7798  10110   
version = "1.8.5"
 7799  10111   
 7800  10112   
[dependencies.aws-smithy-types]
 7801  10113   
path = "../aws-smithy-types"
 7802  10114   
version = "1.3.2"
 7803  10115   
 7804  10116   
[dependencies.aws-types]
 7805  10117   
path = "../aws-types"
 7806  10118   
version = "1.3.8"
 7807  10119   
 7808  10120   
[dependencies.bytes]
 7809  10121   
version = "1.4.0"
 7810  10122   
 7811  10123   
[dependencies.fastrand]
 7812  10124   
version = "2.0.0"
 7813  10125   
 7814  10126   
[dependencies.http]
 7815  10127   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7816  10128   
index 8871cab..ed88de6 100644
 7817         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
       10129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7818  10130   
@@ -1,61 +1,61 @@
 7819  10131   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7820  10132   
[package]
 7821  10133   
name = "aws-sdk-codecatalyst"
 7822  10134   
version = "0.0.0-local"
 7823  10135   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7824  10136   
description = "AWS SDK for Amazon CodeCatalyst"
 7825  10137   
edition = "2021"
 7826  10138   
license = "Apache-2.0"
 7827  10139   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7828  10140   
rust-version = "1.86.0"
 7829  10141   
readme = "README.md"
 7830  10142   
[package.metadata.smithy]
 7831  10143   
codegen-version = "ci"
 7832  10144   
[package.metadata.docs.rs]
 7833  10145   
all-features = true
 7834  10146   
targets = ["x86_64-unknown-linux-gnu"]
 7835  10147   
[dependencies.aws-credential-types]
 7836  10148   
path = "../aws-credential-types"
 7837  10149   
version = "1.2.4"
 7838  10150   
 7839  10151   
[dependencies.aws-runtime]
 7840  10152   
path = "../aws-runtime"
 7841  10153   
version = "1.5.9"
 7842  10154   
 7843  10155   
[dependencies.aws-smithy-async]
 7844  10156   
path = "../aws-smithy-async"
 7845  10157   
version = "1.2.5"
 7846  10158   
 7847  10159   
[dependencies.aws-smithy-http]
 7848  10160   
path = "../aws-smithy-http"
 7849         -
version = "0.62.2"
       10161  +
version = "0.62.3"
 7850  10162   
 7851  10163   
[dependencies.aws-smithy-json]
 7852  10164   
path = "../aws-smithy-json"
 7853  10165   
version = "0.61.4"
 7854  10166   
 7855  10167   
[dependencies.aws-smithy-runtime]
 7856  10168   
path = "../aws-smithy-runtime"
 7857  10169   
features = ["client", "http-auth"]
 7858  10170   
version = "1.8.5"
 7859  10171   
 7860  10172   
[dependencies.aws-smithy-runtime-api]
 7861  10173   
path = "../aws-smithy-runtime-api"
 7862  10174   
features = ["client", "http-02x", "http-auth"]
 7863  10175   
version = "1.8.5"
 7864  10176   
 7865  10177   
[dependencies.aws-smithy-types]
 7866  10178   
path = "../aws-smithy-types"
 7867  10179   
version = "1.3.2"
 7868  10180   
 7869  10181   
[dependencies.aws-types]
 7870  10182   
path = "../aws-types"
 7871  10183   
version = "1.3.8"
 7872  10184   
 7873  10185   
[dependencies.bytes]
 7874  10186   
version = "1.4.0"
 7875  10187   
 7876  10188   
[dependencies.fastrand]
 7877  10189   
version = "2.0.0"
 7878  10190   
 7879  10191   
[dependencies.http]
 7880  10192   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7881  10193   
index 89573ff..05238af 100644
 7882         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
       10194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7883  10195   
@@ -1,61 +1,61 @@
 7884  10196   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7885  10197   
[package]
 7886  10198   
name = "aws-sdk-config"
 7887  10199   
version = "0.0.0-local"
 7888  10200   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7889  10201   
description = "AWS SDK for AWS Config"
 7890  10202   
edition = "2021"
 7891  10203   
license = "Apache-2.0"
 7892  10204   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7893  10205   
rust-version = "1.86.0"
 7894  10206   
readme = "README.md"
 7895  10207   
[package.metadata.smithy]
 7896  10208   
codegen-version = "ci"
 7897  10209   
[package.metadata.docs.rs]
 7898  10210   
all-features = true
 7899  10211   
targets = ["x86_64-unknown-linux-gnu"]
 7900  10212   
[dependencies.aws-credential-types]
 7901  10213   
path = "../aws-credential-types"
 7902  10214   
version = "1.2.4"
 7903  10215   
 7904  10216   
[dependencies.aws-runtime]
 7905  10217   
path = "../aws-runtime"
 7906  10218   
version = "1.5.9"
 7907  10219   
 7908  10220   
[dependencies.aws-smithy-async]
 7909  10221   
path = "../aws-smithy-async"
 7910  10222   
version = "1.2.5"
 7911  10223   
 7912  10224   
[dependencies.aws-smithy-http]
 7913  10225   
path = "../aws-smithy-http"
 7914         -
version = "0.62.2"
       10226  +
version = "0.62.3"
 7915  10227   
 7916  10228   
[dependencies.aws-smithy-json]
 7917  10229   
path = "../aws-smithy-json"
 7918  10230   
version = "0.61.4"
 7919  10231   
 7920  10232   
[dependencies.aws-smithy-runtime]
 7921  10233   
path = "../aws-smithy-runtime"
 7922  10234   
features = ["client"]
 7923  10235   
version = "1.8.5"
 7924  10236   
 7925  10237   
[dependencies.aws-smithy-runtime-api]
 7926  10238   
path = "../aws-smithy-runtime-api"
 7927  10239   
features = ["client", "http-02x"]
 7928  10240   
version = "1.8.5"
 7929  10241   
 7930  10242   
[dependencies.aws-smithy-types]
 7931  10243   
path = "../aws-smithy-types"
 7932  10244   
version = "1.3.2"
 7933  10245   
 7934  10246   
[dependencies.aws-types]
 7935  10247   
path = "../aws-types"
 7936  10248   
version = "1.3.8"
 7937  10249   
 7938  10250   
[dependencies.bytes]
 7939  10251   
version = "1.4.0"
 7940  10252   
 7941  10253   
[dependencies.fastrand]
 7942  10254   
version = "2.0.0"
 7943  10255   
 7944  10256   
[dependencies.http]
 7945  10257   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7946  10258   
index d397c58..2c1062b 100644
 7947         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
       10259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7948  10260   
@@ -1,61 +1,61 @@
 7949  10261   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7950  10262   
[package]
 7951  10263   
name = "aws-sdk-dynamodb"
 7952  10264   
version = "0.0.0-local"
 7953  10265   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7954  10266   
description = "AWS SDK for Amazon DynamoDB"
 7955  10267   
edition = "2021"
 7956  10268   
license = "Apache-2.0"
 7957  10269   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7958  10270   
rust-version = "1.86.0"
 7959  10271   
readme = "README.md"
 7960  10272   
[package.metadata.smithy]
 7961  10273   
codegen-version = "ci"
 7962  10274   
[package.metadata.docs.rs]
 7963  10275   
all-features = true
 7964  10276   
targets = ["x86_64-unknown-linux-gnu"]
 7965  10277   
[dependencies.aws-credential-types]
 7966  10278   
path = "../aws-credential-types"
 7967  10279   
version = "1.2.4"
 7968  10280   
 7969  10281   
[dependencies.aws-runtime]
 7970  10282   
path = "../aws-runtime"
 7971  10283   
version = "1.5.9"
 7972  10284   
 7973  10285   
[dependencies.aws-smithy-async]
 7974  10286   
path = "../aws-smithy-async"
 7975  10287   
version = "1.2.5"
 7976  10288   
 7977  10289   
[dependencies.aws-smithy-http]
 7978  10290   
path = "../aws-smithy-http"
 7979         -
version = "0.62.2"
       10291  +
version = "0.62.3"
 7980  10292   
 7981  10293   
[dependencies.aws-smithy-json]
 7982  10294   
path = "../aws-smithy-json"
 7983  10295   
version = "0.61.4"
 7984  10296   
 7985  10297   
[dependencies.aws-smithy-runtime]
 7986  10298   
path = "../aws-smithy-runtime"
 7987  10299   
features = ["client"]
 7988  10300   
version = "1.8.5"
 7989  10301   
 7990  10302   
[dependencies.aws-smithy-runtime-api]
 7991  10303   
path = "../aws-smithy-runtime-api"
 7992  10304   
features = ["client", "http-02x"]
 7993  10305   
version = "1.8.5"
 7994  10306   
 7995  10307   
[dependencies.aws-smithy-types]
 7996  10308   
path = "../aws-smithy-types"
 7997  10309   
version = "1.3.2"
 7998  10310   
 7999  10311   
[dependencies.aws-types]
 8000  10312   
path = "../aws-types"
 8001  10313   
version = "1.3.8"
 8002  10314   
 8003  10315   
[dependencies.bytes]
 8004  10316   
version = "1.4.0"
 8005  10317   
 8006  10318   
[dependencies.fastrand]
 8007  10319   
version = "2.0.0"
 8008  10320   
 8009  10321   
[dependencies.http]
 8010  10322   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8011  10323   
index c0ba315..46168af 100644
 8012         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
       10324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8013  10325   
@@ -1,61 +1,61 @@
 8014  10326   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8015  10327   
[package]
 8016  10328   
name = "aws-sdk-ec2"
 8017  10329   
version = "0.0.0-local"
 8018  10330   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8019  10331   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 8020  10332   
edition = "2021"
 8021  10333   
license = "Apache-2.0"
 8022  10334   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8023  10335   
rust-version = "1.86.0"
 8024  10336   
readme = "README.md"
 8025  10337   
[package.metadata.smithy]
 8026  10338   
codegen-version = "ci"
 8027  10339   
[package.metadata.docs.rs]
 8028  10340   
all-features = true
 8029  10341   
targets = ["x86_64-unknown-linux-gnu"]
 8030  10342   
[dependencies.aws-credential-types]
 8031  10343   
path = "../aws-credential-types"
 8032  10344   
version = "1.2.4"
 8033  10345   
 8034  10346   
[dependencies.aws-runtime]
 8035  10347   
path = "../aws-runtime"
 8036  10348   
version = "1.5.9"
 8037  10349   
 8038  10350   
[dependencies.aws-smithy-async]
 8039  10351   
path = "../aws-smithy-async"
 8040  10352   
version = "1.2.5"
 8041  10353   
 8042  10354   
[dependencies.aws-smithy-http]
 8043  10355   
path = "../aws-smithy-http"
 8044         -
version = "0.62.2"
       10356  +
version = "0.62.3"
 8045  10357   
 8046  10358   
[dependencies.aws-smithy-json]
 8047  10359   
path = "../aws-smithy-json"
 8048  10360   
version = "0.61.4"
 8049  10361   
 8050  10362   
[dependencies.aws-smithy-query]
 8051  10363   
path = "../aws-smithy-query"
 8052  10364   
version = "0.60.7"
 8053  10365   
 8054  10366   
[dependencies.aws-smithy-runtime]
 8055  10367   
path = "../aws-smithy-runtime"
 8056  10368   
features = ["client"]
 8057  10369   
version = "1.8.5"
 8058  10370   
 8059  10371   
[dependencies.aws-smithy-runtime-api]
 8060  10372   
path = "../aws-smithy-runtime-api"
 8061  10373   
features = ["client", "http-02x"]
 8062  10374   
version = "1.8.5"
 8063  10375   
 8064  10376   
[dependencies.aws-smithy-types]
 8065  10377   
path = "../aws-smithy-types"
 8066  10378   
version = "1.3.2"
 8067  10379   
 8068  10380   
[dependencies.aws-smithy-xml]
 8069  10381   
path = "../aws-smithy-xml"
 8070  10382   
version = "0.60.10"
 8071  10383   
 8072  10384   
[dependencies.aws-types]
 8073  10385   
path = "../aws-types"
 8074  10386   
version = "1.3.8"
 8075  10387   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8076  10388   
index 4474d17..095d40e 100644
 8077         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
       10389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8078  10390   
@@ -1,61 +1,61 @@
 8079  10391   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8080  10392   
[package]
 8081  10393   
name = "aws-sdk-ecs"
 8082  10394   
version = "0.0.0-local"
 8083  10395   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8084  10396   
description = "AWS SDK for Amazon EC2 Container Service"
 8085  10397   
edition = "2021"
 8086  10398   
license = "Apache-2.0"
 8087  10399   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8088  10400   
rust-version = "1.86.0"
 8089  10401   
readme = "README.md"
 8090  10402   
[package.metadata.smithy]
 8091  10403   
codegen-version = "ci"
 8092  10404   
[package.metadata.docs.rs]
 8093  10405   
all-features = true
 8094  10406   
targets = ["x86_64-unknown-linux-gnu"]
 8095  10407   
[dependencies.aws-credential-types]
 8096  10408   
path = "../aws-credential-types"
 8097  10409   
version = "1.2.4"
 8098  10410   
 8099  10411   
[dependencies.aws-runtime]
 8100  10412   
path = "../aws-runtime"
 8101  10413   
version = "1.5.9"
 8102  10414   
 8103  10415   
[dependencies.aws-smithy-async]
 8104  10416   
path = "../aws-smithy-async"
 8105  10417   
version = "1.2.5"
 8106  10418   
 8107  10419   
[dependencies.aws-smithy-http]
 8108  10420   
path = "../aws-smithy-http"
 8109         -
version = "0.62.2"
       10421  +
version = "0.62.3"
 8110  10422   
 8111  10423   
[dependencies.aws-smithy-json]
 8112  10424   
path = "../aws-smithy-json"
 8113  10425   
version = "0.61.4"
 8114  10426   
 8115  10427   
[dependencies.aws-smithy-runtime]
 8116  10428   
path = "../aws-smithy-runtime"
 8117  10429   
features = ["client"]
 8118  10430   
version = "1.8.5"
 8119  10431   
 8120  10432   
[dependencies.aws-smithy-runtime-api]
 8121  10433   
path = "../aws-smithy-runtime-api"
 8122  10434   
features = ["client", "http-02x"]
 8123  10435   
version = "1.8.5"
 8124  10436   
 8125  10437   
[dependencies.aws-smithy-types]
 8126  10438   
path = "../aws-smithy-types"
 8127  10439   
version = "1.3.2"
 8128  10440   
 8129  10441   
[dependencies.aws-types]
 8130  10442   
path = "../aws-types"
 8131  10443   
version = "1.3.8"
 8132  10444   
 8133  10445   
[dependencies.bytes]
 8134  10446   
version = "1.4.0"
 8135  10447   
 8136  10448   
[dependencies.fastrand]
 8137  10449   
version = "2.0.0"
 8138  10450   
 8139  10451   
[dependencies.http]
 8140  10452   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8141  10453   
index 15b1d77..16d7d89 100644
 8142         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
       10454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8143  10455   
@@ -1,65 +1,65 @@
 8144  10456   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8145  10457   
[package]
 8146  10458   
name = "aws-sdk-glacier"
 8147  10459   
version = "0.0.0-local"
 8148  10460   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8149  10461   
description = "AWS SDK for Amazon Glacier"
 8150  10462   
edition = "2021"
 8151  10463   
license = "Apache-2.0"
 8152  10464   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8153  10465   
rust-version = "1.86.0"
 8154  10466   
readme = "README.md"
 8155  10467   
[package.metadata.smithy]
 8156  10468   
codegen-version = "ci"
 8157  10469   
[package.metadata.docs.rs]
 8158  10470   
all-features = true
 8159  10471   
targets = ["x86_64-unknown-linux-gnu"]
 8160  10472   
[dependencies.aws-credential-types]
 8161  10473   
path = "../aws-credential-types"
 8162  10474   
version = "1.2.4"
 8163  10475   
 8164  10476   
[dependencies.aws-runtime]
 8165  10477   
path = "../aws-runtime"
 8166  10478   
version = "1.5.9"
 8167  10479   
 8168  10480   
[dependencies.aws-sigv4]
 8169  10481   
path = "../aws-sigv4"
 8170         -
version = "1.3.3"
       10482  +
version = "1.3.4"
 8171  10483   
 8172  10484   
[dependencies.aws-smithy-async]
 8173  10485   
path = "../aws-smithy-async"
 8174  10486   
version = "1.2.5"
 8175  10487   
 8176  10488   
[dependencies.aws-smithy-http]
 8177  10489   
path = "../aws-smithy-http"
 8178         -
version = "0.62.2"
       10490  +
version = "0.62.3"
 8179  10491   
 8180  10492   
[dependencies.aws-smithy-json]
 8181  10493   
path = "../aws-smithy-json"
 8182  10494   
version = "0.61.4"
 8183  10495   
 8184  10496   
[dependencies.aws-smithy-runtime]
 8185  10497   
path = "../aws-smithy-runtime"
 8186  10498   
features = ["client"]
 8187  10499   
version = "1.8.5"
 8188  10500   
 8189  10501   
[dependencies.aws-smithy-runtime-api]
 8190  10502   
path = "../aws-smithy-runtime-api"
 8191  10503   
features = ["client", "http-02x"]
 8192  10504   
version = "1.8.5"
 8193  10505   
 8194  10506   
[dependencies.aws-smithy-types]
 8195  10507   
path = "../aws-smithy-types"
 8196  10508   
version = "1.3.2"
 8197  10509   
 8198  10510   
[dependencies.aws-types]
 8199  10511   
path = "../aws-types"
 8200  10512   
version = "1.3.8"
 8201  10513   
 8202  10514   
[dependencies.bytes]
 8203  10515   
version = "1.4.0"
 8204  10516   
 8205  10517   
[dependencies.fastrand]
 8206  10518   
version = "2.0.0"
 8207  10519   
 8208  10520   
[dependencies.hex]
 8209  10521   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8210  10522   
index d718a3a..65e6f24 100644
 8211         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
       10523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8212  10524   
@@ -1,61 +1,61 @@
 8213  10525   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8214  10526   
[package]
 8215  10527   
name = "aws-sdk-iam"
 8216  10528   
version = "0.0.0-local"
 8217  10529   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8218  10530   
description = "AWS SDK for AWS Identity and Access Management"
 8219  10531   
edition = "2021"
 8220  10532   
license = "Apache-2.0"
 8221  10533   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8222  10534   
rust-version = "1.86.0"
 8223  10535   
readme = "README.md"
 8224  10536   
[package.metadata.smithy]
 8225  10537   
codegen-version = "ci"
 8226  10538   
[package.metadata.docs.rs]
 8227  10539   
all-features = true
 8228  10540   
targets = ["x86_64-unknown-linux-gnu"]
 8229  10541   
[dependencies.aws-credential-types]
 8230  10542   
path = "../aws-credential-types"
 8231  10543   
version = "1.2.4"
 8232  10544   
 8233  10545   
[dependencies.aws-runtime]
 8234  10546   
path = "../aws-runtime"
 8235  10547   
version = "1.5.9"
 8236  10548   
 8237  10549   
[dependencies.aws-smithy-async]
 8238  10550   
path = "../aws-smithy-async"
 8239  10551   
version = "1.2.5"
 8240  10552   
 8241  10553   
[dependencies.aws-smithy-http]
 8242  10554   
path = "../aws-smithy-http"
 8243         -
version = "0.62.2"
       10555  +
version = "0.62.3"
 8244  10556   
 8245  10557   
[dependencies.aws-smithy-json]
 8246  10558   
path = "../aws-smithy-json"
 8247  10559   
version = "0.61.4"
 8248  10560   
 8249  10561   
[dependencies.aws-smithy-query]
 8250  10562   
path = "../aws-smithy-query"
 8251  10563   
version = "0.60.7"
 8252  10564   
 8253  10565   
[dependencies.aws-smithy-runtime]
 8254  10566   
path = "../aws-smithy-runtime"
 8255  10567   
features = ["client"]
 8256  10568   
version = "1.8.5"
 8257  10569   
 8258  10570   
[dependencies.aws-smithy-runtime-api]
 8259  10571   
path = "../aws-smithy-runtime-api"
 8260  10572   
features = ["client", "http-02x"]
 8261  10573   
version = "1.8.5"
 8262  10574   
 8263  10575   
[dependencies.aws-smithy-types]
 8264  10576   
path = "../aws-smithy-types"
 8265  10577   
version = "1.3.2"
 8266  10578   
 8267  10579   
[dependencies.aws-smithy-xml]
 8268  10580   
path = "../aws-smithy-xml"
 8269  10581   
version = "0.60.10"
 8270  10582   
 8271  10583   
[dependencies.aws-types]
 8272  10584   
path = "../aws-types"
 8273  10585   
version = "1.3.8"
 8274  10586   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8275  10587   
index 0ed4302..3d828a5 100644
 8276         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
       10588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8277  10589   
@@ -1,61 +1,61 @@
 8278  10590   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8279  10591   
[package]
 8280  10592   
name = "aws-sdk-kms"
 8281  10593   
version = "0.0.0-local"
 8282  10594   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8283  10595   
description = "AWS SDK for AWS Key Management Service"
 8284  10596   
edition = "2021"
 8285  10597   
license = "Apache-2.0"
 8286  10598   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8287  10599   
rust-version = "1.86.0"
 8288  10600   
readme = "README.md"
 8289  10601   
[package.metadata.smithy]
 8290  10602   
codegen-version = "ci"
 8291  10603   
[package.metadata.docs.rs]
 8292  10604   
all-features = true
 8293  10605   
targets = ["x86_64-unknown-linux-gnu"]
 8294  10606   
[dependencies.aws-credential-types]
 8295  10607   
path = "../aws-credential-types"
 8296  10608   
version = "1.2.4"
 8297  10609   
 8298  10610   
[dependencies.aws-runtime]
 8299  10611   
path = "../aws-runtime"
 8300  10612   
version = "1.5.9"
 8301  10613   
 8302  10614   
[dependencies.aws-smithy-async]
 8303  10615   
path = "../aws-smithy-async"
 8304  10616   
version = "1.2.5"
 8305  10617   
 8306  10618   
[dependencies.aws-smithy-http]
 8307  10619   
path = "../aws-smithy-http"
 8308         -
version = "0.62.2"
       10620  +
version = "0.62.3"
 8309  10621   
 8310  10622   
[dependencies.aws-smithy-json]
 8311  10623   
path = "../aws-smithy-json"
 8312  10624   
version = "0.61.4"
 8313  10625   
 8314  10626   
[dependencies.aws-smithy-runtime]
 8315  10627   
path = "../aws-smithy-runtime"
 8316  10628   
features = ["client"]
 8317  10629   
version = "1.8.5"
 8318  10630   
 8319  10631   
[dependencies.aws-smithy-runtime-api]
 8320  10632   
path = "../aws-smithy-runtime-api"
 8321  10633   
features = ["client", "http-02x"]
 8322  10634   
version = "1.8.5"
 8323  10635   
 8324  10636   
[dependencies.aws-smithy-types]
 8325  10637   
path = "../aws-smithy-types"
 8326  10638   
version = "1.3.2"
 8327  10639   
 8328  10640   
[dependencies.aws-types]
 8329  10641   
path = "../aws-types"
 8330  10642   
version = "1.3.8"
 8331  10643   
 8332  10644   
[dependencies.bytes]
 8333  10645   
version = "1.4.0"
 8334  10646   
 8335  10647   
[dependencies.fastrand]
 8336  10648   
version = "2.0.0"
 8337  10649   
 8338  10650   
[dependencies.http]
 8339  10651   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8340  10652   
index 6518dfc..6b94752 100644
 8341         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
       10653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8342  10654   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 8343  10655   
edition = "2021"
 8344  10656   
license = "Apache-2.0"
 8345  10657   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8346  10658   
rust-version = "1.86.0"
 8347  10659   
readme = "README.md"
 8348  10660   
[package.metadata.smithy]
 8349  10661   
codegen-version = "ci"
 8350  10662   
[package.metadata.docs.rs]
 8351  10663   
all-features = true
 8352  10664   
targets = ["x86_64-unknown-linux-gnu"]
 8353  10665   
[dependencies.aws-credential-types]
 8354  10666   
path = "../aws-credential-types"
 8355  10667   
version = "1.2.4"
 8356  10668   
 8357  10669   
[dependencies.aws-runtime]
 8358  10670   
path = "../aws-runtime"
 8359  10671   
features = ["event-stream"]
 8360  10672   
version = "1.5.9"
 8361  10673   
 8362  10674   
[dependencies.aws-smithy-async]
 8363  10675   
path = "../aws-smithy-async"
 8364  10676   
version = "1.2.5"
 8365  10677   
 8366  10678   
[dependencies.aws-smithy-eventstream]
 8367  10679   
path = "../aws-smithy-eventstream"
 8368  10680   
version = "0.60.10"
 8369  10681   
 8370  10682   
[dependencies.aws-smithy-http]
 8371  10683   
path = "../aws-smithy-http"
 8372  10684   
features = ["event-stream"]
 8373         -
version = "0.62.2"
       10685  +
version = "0.62.3"
 8374  10686   
 8375  10687   
[dependencies.aws-smithy-json]
 8376  10688   
path = "../aws-smithy-json"
 8377  10689   
version = "0.61.4"
 8378  10690   
 8379  10691   
[dependencies.aws-smithy-runtime]
 8380  10692   
path = "../aws-smithy-runtime"
 8381  10693   
features = ["client"]
 8382  10694   
version = "1.8.5"
 8383  10695   
 8384  10696   
[dependencies.aws-smithy-runtime-api]
 8385  10697   
path = "../aws-smithy-runtime-api"
 8386  10698   
features = ["client", "http-02x"]
 8387  10699   
version = "1.8.5"
 8388  10700   
 8389  10701   
[dependencies.aws-smithy-types]
 8390  10702   
path = "../aws-smithy-types"
 8391  10703   
version = "1.3.2"
 8392  10704   
 8393  10705   
[dependencies.aws-types]
 8394  10706   
path = "../aws-types"
 8395  10707   
version = "1.3.8"
 8396  10708   
 8397  10709   
[dependencies.bytes]
 8398  10710   
version = "1.4.0"
 8399  10711   
 8400  10712   
[dependencies.fastrand]
 8401  10713   
version = "2.0.0"
 8402  10714   
 8403  10715   
[dependencies.http]
 8404  10716   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8405  10717   
index dabb0e0..34cbc15 100644
 8406         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
       10718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8407  10719   
@@ -1,65 +1,65 @@
 8408  10720   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8409  10721   
[package]
 8410  10722   
name = "aws-sdk-polly"
 8411  10723   
version = "0.0.0-local"
 8412  10724   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8413  10725   
description = "AWS SDK for Amazon Polly"
 8414  10726   
edition = "2021"
 8415  10727   
license = "Apache-2.0"
 8416  10728   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8417  10729   
rust-version = "1.86.0"
 8418  10730   
readme = "README.md"
 8419  10731   
[package.metadata.smithy]
 8420  10732   
codegen-version = "ci"
 8421  10733   
[package.metadata.docs.rs]
 8422  10734   
all-features = true
 8423  10735   
targets = ["x86_64-unknown-linux-gnu"]
 8424  10736   
[dependencies.aws-credential-types]
 8425  10737   
path = "../aws-credential-types"
 8426  10738   
version = "1.2.4"
 8427  10739   
 8428  10740   
[dependencies.aws-runtime]
 8429  10741   
path = "../aws-runtime"
 8430  10742   
version = "1.5.9"
 8431  10743   
 8432  10744   
[dependencies.aws-sigv4]
 8433  10745   
path = "../aws-sigv4"
 8434         -
version = "1.3.3"
       10746  +
version = "1.3.4"
 8435  10747   
 8436  10748   
[dependencies.aws-smithy-async]
 8437  10749   
path = "../aws-smithy-async"
 8438  10750   
version = "1.2.5"
 8439  10751   
 8440  10752   
[dependencies.aws-smithy-http]
 8441  10753   
path = "../aws-smithy-http"
 8442         -
version = "0.62.2"
       10754  +
version = "0.62.3"
 8443  10755   
 8444  10756   
[dependencies.aws-smithy-json]
 8445  10757   
path = "../aws-smithy-json"
 8446  10758   
version = "0.61.4"
 8447  10759   
 8448  10760   
[dependencies.aws-smithy-runtime]
 8449  10761   
path = "../aws-smithy-runtime"
 8450  10762   
features = ["client"]
 8451  10763   
version = "1.8.5"
 8452  10764   
 8453  10765   
[dependencies.aws-smithy-runtime-api]
 8454  10766   
path = "../aws-smithy-runtime-api"
 8455  10767   
features = ["client", "http-02x"]
 8456  10768   
version = "1.8.5"
 8457  10769   
 8458  10770   
[dependencies.aws-smithy-types]
 8459  10771   
path = "../aws-smithy-types"
 8460  10772   
version = "1.3.2"
 8461  10773   
 8462  10774   
[dependencies.aws-types]
 8463  10775   
path = "../aws-types"
 8464  10776   
version = "1.3.8"
 8465  10777   
 8466  10778   
[dependencies.bytes]
 8467  10779   
version = "1.4.0"
 8468  10780   
 8469  10781   
[dependencies.fastrand]
 8470  10782   
version = "2.0.0"
 8471  10783   
 8472  10784   
[dependencies.http]
 8473  10785   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8474  10786   
index a884716..f3d8713 100644
 8475         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
       10787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8476  10788   
@@ -1,61 +1,61 @@
 8477  10789   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8478  10790   
[package]
 8479  10791   
name = "aws-sdk-qldbsession"
 8480  10792   
version = "0.0.0-local"
 8481  10793   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8482  10794   
description = "AWS SDK for Amazon QLDB Session"
 8483  10795   
edition = "2021"
 8484  10796   
license = "Apache-2.0"
 8485  10797   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8486  10798   
rust-version = "1.86.0"
 8487  10799   
readme = "README.md"
 8488  10800   
[package.metadata.smithy]
 8489  10801   
codegen-version = "ci"
 8490  10802   
[package.metadata.docs.rs]
 8491  10803   
all-features = true
 8492  10804   
targets = ["x86_64-unknown-linux-gnu"]
 8493  10805   
[dependencies.aws-credential-types]
 8494  10806   
path = "../aws-credential-types"
 8495  10807   
version = "1.2.4"
 8496  10808   
 8497  10809   
[dependencies.aws-runtime]
 8498  10810   
path = "../aws-runtime"
 8499  10811   
version = "1.5.9"
 8500  10812   
 8501  10813   
[dependencies.aws-smithy-async]
 8502  10814   
path = "../aws-smithy-async"
 8503  10815   
version = "1.2.5"
 8504  10816   
 8505  10817   
[dependencies.aws-smithy-http]
 8506  10818   
path = "../aws-smithy-http"
 8507         -
version = "0.62.2"
       10819  +
version = "0.62.3"
 8508  10820   
 8509  10821   
[dependencies.aws-smithy-json]
 8510  10822   
path = "../aws-smithy-json"
 8511  10823   
version = "0.61.4"
 8512  10824   
 8513  10825   
[dependencies.aws-smithy-runtime]
 8514  10826   
path = "../aws-smithy-runtime"
 8515  10827   
features = ["client"]
 8516  10828   
version = "1.8.5"
 8517  10829   
 8518  10830   
[dependencies.aws-smithy-runtime-api]
 8519  10831   
path = "../aws-smithy-runtime-api"
 8520  10832   
features = ["client", "http-02x"]
 8521  10833   
version = "1.8.5"
 8522  10834   
 8523  10835   
[dependencies.aws-smithy-types]
 8524  10836   
path = "../aws-smithy-types"
 8525  10837   
version = "1.3.2"
 8526  10838   
 8527  10839   
[dependencies.aws-types]
 8528  10840   
path = "../aws-types"
 8529  10841   
version = "1.3.8"
 8530  10842   
 8531  10843   
[dependencies.bytes]
 8532  10844   
version = "1.4.0"
 8533  10845   
 8534  10846   
[dependencies.fastrand]
 8535  10847   
version = "2.0.0"
 8536  10848   
 8537  10849   
[dependencies.http]
 8538  10850   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8539  10851   
index 32a7dc9..a2c752d 100644
 8540         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
       10852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8541  10853   
@@ -1,61 +1,61 @@
 8542  10854   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8543  10855   
[package]
 8544  10856   
name = "aws-sdk-route53"
 8545  10857   
version = "0.0.0-local"
 8546  10858   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8547  10859   
description = "AWS SDK for Amazon Route 53"
 8548  10860   
edition = "2021"
 8549  10861   
license = "Apache-2.0"
 8550  10862   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8551  10863   
rust-version = "1.86.0"
 8552  10864   
readme = "README.md"
 8553  10865   
[package.metadata.smithy]
 8554  10866   
codegen-version = "ci"
 8555  10867   
[package.metadata.docs.rs]
 8556  10868   
all-features = true
 8557  10869   
targets = ["x86_64-unknown-linux-gnu"]
 8558  10870   
[dependencies.aws-credential-types]
 8559  10871   
path = "../aws-credential-types"
 8560  10872   
version = "1.2.4"
 8561  10873   
 8562  10874   
[dependencies.aws-runtime]
 8563  10875   
path = "../aws-runtime"
 8564  10876   
version = "1.5.9"
 8565  10877   
 8566  10878   
[dependencies.aws-smithy-async]
 8567  10879   
path = "../aws-smithy-async"
 8568  10880   
version = "1.2.5"
 8569  10881   
 8570  10882   
[dependencies.aws-smithy-http]
 8571  10883   
path = "../aws-smithy-http"
 8572         -
version = "0.62.2"
       10884  +
version = "0.62.3"
 8573  10885   
 8574  10886   
[dependencies.aws-smithy-json]
 8575  10887   
path = "../aws-smithy-json"
 8576  10888   
version = "0.61.4"
 8577  10889   
 8578  10890   
[dependencies.aws-smithy-runtime]
 8579  10891   
path = "../aws-smithy-runtime"
 8580  10892   
features = ["client"]
 8581  10893   
version = "1.8.5"
 8582  10894   
 8583  10895   
[dependencies.aws-smithy-runtime-api]
 8584  10896   
path = "../aws-smithy-runtime-api"
 8585  10897   
features = ["client", "http-02x"]
 8586  10898   
version = "1.8.5"
 8587  10899   
 8588  10900   
[dependencies.aws-smithy-types]
 8589  10901   
path = "../aws-smithy-types"
 8590  10902   
version = "1.3.2"
 8591  10903   
 8592  10904   
[dependencies.aws-smithy-xml]
 8593  10905   
path = "../aws-smithy-xml"
 8594  10906   
version = "0.60.10"
 8595  10907   
 8596  10908   
[dependencies.aws-types]
 8597  10909   
path = "../aws-types"
 8598  10910   
version = "1.3.8"
 8599  10911   
 8600  10912   
[dependencies.fastrand]
 8601  10913   
version = "2.0.0"
 8602  10914   
 8603  10915   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8604  10916   
index f65e261..2f6bec0 100644
 8605         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       10917  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8606  10918   
@@ -1,75 +1,75 @@
 8607  10919   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8608  10920   
[package]
 8609  10921   
name = "aws-sdk-s3"
 8610  10922   
version = "0.0.0-local"
 8611  10923   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8612  10924   
description = "AWS SDK for Amazon Simple Storage Service"
 8613  10925   
edition = "2021"
 8614  10926   
license = "Apache-2.0"
 8615  10927   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8616  10928   
rust-version = "1.86.0"
 8617  10929   
readme = "README.md"
 8618  10930   
[package.metadata.smithy]
 8619  10931   
codegen-version = "ci"
 8620  10932   
[package.metadata.docs.rs]
 8621  10933   
all-features = true
 8622  10934   
targets = ["x86_64-unknown-linux-gnu"]
 8623  10935   
[dependencies.aws-credential-types]
 8624  10936   
path = "../aws-credential-types"
 8625  10937   
version = "1.2.4"
 8626  10938   
 8627  10939   
[dependencies.aws-runtime]
 8628  10940   
path = "../aws-runtime"
 8629  10941   
features = ["event-stream", "http-02x"]
 8630  10942   
version = "1.5.9"
 8631  10943   
 8632  10944   
[dependencies.aws-sigv4]
 8633  10945   
path = "../aws-sigv4"
 8634         -
version = "1.3.3"
       10946  +
version = "1.3.4"
 8635  10947   
 8636  10948   
[dependencies.aws-smithy-async]
 8637  10949   
path = "../aws-smithy-async"
 8638  10950   
version = "1.2.5"
 8639  10951   
 8640  10952   
[dependencies.aws-smithy-checksums]
 8641  10953   
path = "../aws-smithy-checksums"
 8642  10954   
version = "0.63.5"
 8643  10955   
 8644  10956   
[dependencies.aws-smithy-eventstream]
 8645  10957   
path = "../aws-smithy-eventstream"
 8646  10958   
version = "0.60.10"
 8647  10959   
 8648  10960   
[dependencies.aws-smithy-http]
 8649  10961   
path = "../aws-smithy-http"
 8650  10962   
features = ["event-stream"]
 8651         -
version = "0.62.2"
       10963  +
version = "0.62.3"
 8652  10964   
 8653  10965   
[dependencies.aws-smithy-json]
 8654  10966   
path = "../aws-smithy-json"
 8655  10967   
version = "0.61.4"
 8656  10968   
 8657  10969   
[dependencies.aws-smithy-runtime]
 8658  10970   
path = "../aws-smithy-runtime"
 8659  10971   
features = ["client"]
 8660  10972   
version = "1.8.5"
 8661  10973   
 8662  10974   
[dependencies.aws-smithy-runtime-api]
 8663  10975   
path = "../aws-smithy-runtime-api"
 8664  10976   
features = ["client", "http-02x"]
 8665  10977   
version = "1.8.5"
 8666  10978   
 8667  10979   
[dependencies.aws-smithy-types]
 8668  10980   
path = "../aws-smithy-types"
 8669  10981   
version = "1.3.2"
 8670  10982   
 8671  10983   
[dependencies.aws-smithy-xml]
 8672  10984   
path = "../aws-smithy-xml"
 8673  10985   
version = "0.60.10"
 8674  10986   
 8675  10987   
[dependencies.aws-types]
 8676  10988   
path = "../aws-types"
 8677  10989   
version = "1.3.8"
 8678  10990   
 8679  10991   
[dependencies.bytes]
 8680  10992   
version = "1.4.0"
 8681  10993   
 8682  10994   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8683  10995   
index b4d1cdd..861c0cc 100644
 8684         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       10996  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8685  10997   
@@ -1,61 +1,61 @@
 8686  10998   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8687  10999   
[package]
 8688  11000   
name = "aws-sdk-s3control"
 8689  11001   
version = "0.0.0-local"
 8690  11002   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8691  11003   
description = "AWS SDK for AWS S3 Control"
 8692  11004   
edition = "2021"
 8693  11005   
license = "Apache-2.0"
 8694  11006   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8695  11007   
rust-version = "1.86.0"
 8696  11008   
readme = "README.md"
 8697  11009   
[package.metadata.smithy]
 8698  11010   
codegen-version = "ci"
 8699  11011   
[package.metadata.docs.rs]
 8700  11012   
all-features = true
 8701  11013   
targets = ["x86_64-unknown-linux-gnu"]
 8702  11014   
[dependencies.aws-credential-types]
 8703  11015   
path = "../aws-credential-types"
 8704  11016   
version = "1.2.4"
 8705  11017   
 8706  11018   
[dependencies.aws-runtime]
 8707  11019   
path = "../aws-runtime"
 8708  11020   
version = "1.5.9"
 8709  11021   
 8710  11022   
[dependencies.aws-smithy-async]
 8711  11023   
path = "../aws-smithy-async"
 8712  11024   
version = "1.2.5"
 8713  11025   
 8714  11026   
[dependencies.aws-smithy-http]
 8715  11027   
path = "../aws-smithy-http"
 8716         -
version = "0.62.2"
       11028  +
version = "0.62.3"
 8717  11029   
 8718  11030   
[dependencies.aws-smithy-json]
 8719  11031   
path = "../aws-smithy-json"
 8720  11032   
version = "0.61.4"
 8721  11033   
 8722  11034   
[dependencies.aws-smithy-runtime]
 8723  11035   
path = "../aws-smithy-runtime"
 8724  11036   
features = ["client"]
 8725  11037   
version = "1.8.5"
 8726  11038   
 8727  11039   
[dependencies.aws-smithy-runtime-api]
 8728  11040   
path = "../aws-smithy-runtime-api"
 8729  11041   
features = ["client", "http-02x"]
 8730  11042   
version = "1.8.5"
 8731  11043   
 8732  11044   
[dependencies.aws-smithy-types]
 8733  11045   
path = "../aws-smithy-types"
 8734  11046   
version = "1.3.2"
 8735  11047   
 8736  11048   
[dependencies.aws-smithy-xml]
 8737  11049   
path = "../aws-smithy-xml"
 8738  11050   
version = "0.60.10"
 8739  11051   
 8740  11052   
[dependencies.aws-types]
 8741  11053   
path = "../aws-types"
 8742  11054   
version = "1.3.8"
 8743  11055   
 8744  11056   
[dependencies.fastrand]
 8745  11057   
version = "2.0.0"
 8746  11058   
 8747  11059   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8748  11060   
index 2cde182..fc367f4 100644
 8749         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       11061  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8750  11062   
@@ -1,61 +1,61 @@
 8751  11063   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8752  11064   
[package]
 8753  11065   
name = "aws-sdk-sso"
 8754  11066   
version = "0.0.0-local"
 8755  11067   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8756  11068   
description = "AWS SDK for AWS Single Sign-On"
 8757  11069   
edition = "2021"
 8758  11070   
license = "Apache-2.0"
 8759  11071   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8760  11072   
rust-version = "1.86.0"
 8761  11073   
readme = "README.md"
 8762  11074   
[package.metadata.smithy]
 8763  11075   
codegen-version = "ci"
 8764  11076   
[package.metadata.docs.rs]
 8765  11077   
all-features = true
 8766  11078   
targets = ["x86_64-unknown-linux-gnu"]
 8767  11079   
[dependencies.aws-credential-types]
 8768  11080   
path = "../aws-credential-types"
 8769  11081   
version = "1.2.4"
 8770  11082   
 8771  11083   
[dependencies.aws-runtime]
 8772  11084   
path = "../aws-runtime"
 8773  11085   
version = "1.5.9"
 8774  11086   
 8775  11087   
[dependencies.aws-smithy-async]
 8776  11088   
path = "../aws-smithy-async"
 8777  11089   
version = "1.2.5"
 8778  11090   
 8779  11091   
[dependencies.aws-smithy-http]
 8780  11092   
path = "../aws-smithy-http"
 8781         -
version = "0.62.2"
       11093  +
version = "0.62.3"
 8782  11094   
 8783  11095   
[dependencies.aws-smithy-json]
 8784  11096   
path = "../aws-smithy-json"
 8785  11097   
version = "0.61.4"
 8786  11098   
 8787  11099   
[dependencies.aws-smithy-runtime]
 8788  11100   
path = "../aws-smithy-runtime"
 8789  11101   
features = ["client"]
 8790  11102   
version = "1.8.5"
 8791  11103   
 8792  11104   
[dependencies.aws-smithy-runtime-api]
 8793  11105   
path = "../aws-smithy-runtime-api"
 8794  11106   
features = ["client", "http-02x"]
 8795  11107   
version = "1.8.5"
 8796  11108   
 8797  11109   
[dependencies.aws-smithy-types]
 8798  11110   
path = "../aws-smithy-types"
 8799  11111   
version = "1.3.2"
 8800  11112   
 8801  11113   
[dependencies.aws-types]
 8802  11114   
path = "../aws-types"
 8803  11115   
version = "1.3.8"
 8804  11116   
 8805  11117   
[dependencies.bytes]
 8806  11118   
version = "1.4.0"
 8807  11119   
 8808  11120   
[dependencies.fastrand]
 8809  11121   
version = "2.0.0"
 8810  11122   
 8811  11123   
[dependencies.http]
 8812  11124   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8813  11125   
index 7a34c16..588d0bd 100644
 8814         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       11126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8815  11127   
@@ -1,61 +1,61 @@
 8816  11128   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8817  11129   
[package]
 8818  11130   
name = "aws-sdk-ssooidc"
 8819  11131   
version = "0.0.0-local"
 8820  11132   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8821  11133   
description = "AWS SDK for AWS SSO OIDC"
 8822  11134   
edition = "2021"
 8823  11135   
license = "Apache-2.0"
 8824  11136   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8825  11137   
rust-version = "1.86.0"
 8826  11138   
readme = "README.md"
 8827  11139   
[package.metadata.smithy]
 8828  11140   
codegen-version = "ci"
 8829  11141   
[package.metadata.docs.rs]
 8830  11142   
all-features = true
 8831  11143   
targets = ["x86_64-unknown-linux-gnu"]
 8832  11144   
[dependencies.aws-credential-types]
 8833  11145   
path = "../aws-credential-types"
 8834  11146   
version = "1.2.4"
 8835  11147   
 8836  11148   
[dependencies.aws-runtime]
 8837  11149   
path = "../aws-runtime"
 8838  11150   
version = "1.5.9"
 8839  11151   
 8840  11152   
[dependencies.aws-smithy-async]
 8841  11153   
path = "../aws-smithy-async"
 8842  11154   
version = "1.2.5"
 8843  11155   
 8844  11156   
[dependencies.aws-smithy-http]
 8845  11157   
path = "../aws-smithy-http"
 8846         -
version = "0.62.2"
       11158  +
version = "0.62.3"
 8847  11159   
 8848  11160   
[dependencies.aws-smithy-json]
 8849  11161   
path = "../aws-smithy-json"
 8850  11162   
version = "0.61.4"
 8851  11163   
 8852  11164   
[dependencies.aws-smithy-runtime]
 8853  11165   
path = "../aws-smithy-runtime"
 8854  11166   
features = ["client"]
 8855  11167   
version = "1.8.5"
 8856  11168   
 8857  11169   
[dependencies.aws-smithy-runtime-api]
 8858  11170   
path = "../aws-smithy-runtime-api"
 8859  11171   
features = ["client", "http-02x"]
 8860  11172   
version = "1.8.5"
 8861  11173   
 8862  11174   
[dependencies.aws-smithy-types]
 8863  11175   
path = "../aws-smithy-types"
 8864  11176   
version = "1.3.2"
 8865  11177   
 8866  11178   
[dependencies.aws-types]
 8867  11179   
path = "../aws-types"
 8868  11180   
version = "1.3.8"
 8869  11181   
 8870  11182   
[dependencies.bytes]
 8871  11183   
version = "1.4.0"
 8872  11184   
 8873  11185   
[dependencies.fastrand]
 8874  11186   
version = "2.0.0"
 8875  11187   
 8876  11188   
[dependencies.http]
 8877  11189   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8878  11190   
index 895dfb3..f2ce34e 100644
 8879         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       11191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8880  11192   
@@ -1,61 +1,61 @@
 8881  11193   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8882  11194   
[package]
 8883  11195   
name = "aws-sdk-sts"
 8884  11196   
version = "0.0.0-local"
 8885  11197   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8886  11198   
description = "AWS SDK for AWS Security Token Service"
 8887  11199   
edition = "2021"
 8888  11200   
license = "Apache-2.0"
 8889  11201   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8890  11202   
rust-version = "1.86.0"
 8891  11203   
readme = "README.md"
 8892  11204   
[package.metadata.smithy]
 8893  11205   
codegen-version = "ci"
 8894  11206   
[package.metadata.docs.rs]
 8895  11207   
all-features = true
 8896  11208   
targets = ["x86_64-unknown-linux-gnu"]
 8897  11209   
[dependencies.aws-credential-types]
 8898  11210   
path = "../aws-credential-types"
 8899  11211   
version = "1.2.4"
 8900  11212   
 8901  11213   
[dependencies.aws-runtime]
 8902  11214   
path = "../aws-runtime"
 8903  11215   
version = "1.5.9"
 8904  11216   
 8905  11217   
[dependencies.aws-smithy-async]
 8906  11218   
path = "../aws-smithy-async"
 8907  11219   
version = "1.2.5"
 8908  11220   
 8909  11221   
[dependencies.aws-smithy-http]
 8910  11222   
path = "../aws-smithy-http"
 8911         -
version = "0.62.2"
       11223  +
version = "0.62.3"
 8912  11224   
 8913  11225   
[dependencies.aws-smithy-json]
 8914  11226   
path = "../aws-smithy-json"
 8915  11227   
version = "0.61.4"
 8916  11228   
 8917  11229   
[dependencies.aws-smithy-query]
 8918  11230   
path = "../aws-smithy-query"
 8919  11231   
version = "0.60.7"
 8920  11232   
 8921  11233   
[dependencies.aws-smithy-runtime]
 8922  11234   
path = "../aws-smithy-runtime"
 8923  11235   
features = ["client"]
 8924  11236   
version = "1.8.5"
 8925  11237   
 8926  11238   
[dependencies.aws-smithy-runtime-api]
 8927  11239   
path = "../aws-smithy-runtime-api"
 8928  11240   
features = ["client", "http-02x"]
 8929  11241   
version = "1.8.5"
 8930  11242   
 8931  11243   
[dependencies.aws-smithy-types]
 8932  11244   
path = "../aws-smithy-types"
 8933  11245   
version = "1.3.2"
 8934  11246   
 8935  11247   
[dependencies.aws-smithy-xml]
 8936  11248   
path = "../aws-smithy-xml"
 8937  11249   
version = "0.60.10"
 8938  11250   
 8939  11251   
[dependencies.aws-types]
 8940  11252   
path = "../aws-types"
 8941  11253   
version = "1.3.8"
 8942  11254   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8943  11255   
index d556561..91178b6 100644
 8944         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       11256  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8945  11257   
@@ -1,61 +1,61 @@
 8946  11258   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8947  11259   
[package]
 8948  11260   
name = "aws-sdk-timestreamquery"
 8949  11261   
version = "0.0.0-local"
 8950  11262   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8951  11263   
description = "AWS SDK for Amazon Timestream Query"
 8952  11264   
edition = "2021"
 8953  11265   
license = "Apache-2.0"
 8954  11266   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8955  11267   
rust-version = "1.86.0"
 8956  11268   
readme = "README.md"
 8957  11269   
[package.metadata.smithy]
 8958  11270   
codegen-version = "ci"
 8959  11271   
[package.metadata.docs.rs]
 8960  11272   
all-features = true
 8961  11273   
targets = ["x86_64-unknown-linux-gnu"]
 8962  11274   
[dependencies.aws-credential-types]
 8963  11275   
path = "../aws-credential-types"
 8964  11276   
version = "1.2.4"
 8965  11277   
 8966  11278   
[dependencies.aws-runtime]
 8967  11279   
path = "../aws-runtime"
 8968  11280   
version = "1.5.9"
 8969  11281   
 8970  11282   
[dependencies.aws-smithy-async]
 8971  11283   
path = "../aws-smithy-async"
 8972  11284   
version = "1.2.5"
 8973  11285   
 8974  11286   
[dependencies.aws-smithy-http]
 8975  11287   
path = "../aws-smithy-http"
 8976         -
version = "0.62.2"
       11288  +
version = "0.62.3"
 8977  11289   
 8978  11290   
[dependencies.aws-smithy-json]
 8979  11291   
path = "../aws-smithy-json"
 8980  11292   
version = "0.61.4"
 8981  11293   
 8982  11294   
[dependencies.aws-smithy-runtime]
 8983  11295   
path = "../aws-smithy-runtime"
 8984  11296   
features = ["client"]
 8985  11297   
version = "1.8.5"
 8986  11298   
 8987  11299   
[dependencies.aws-smithy-runtime-api]
 8988  11300   
path = "../aws-smithy-runtime-api"
 8989  11301   
features = ["client", "http-02x"]
 8990  11302   
version = "1.8.5"
 8991  11303   
 8992  11304   
[dependencies.aws-smithy-types]
 8993  11305   
path = "../aws-smithy-types"
 8994  11306   
version = "1.3.2"
 8995  11307   
 8996  11308   
[dependencies.aws-types]
 8997  11309   
path = "../aws-types"
 8998  11310   
version = "1.3.8"
 8999  11311   
 9000  11312   
[dependencies.bytes]
 9001  11313   
version = "1.4.0"
 9002  11314   
 9003  11315   
[dependencies.fastrand]
 9004  11316   
version = "2.0.0"
 9005  11317   
 9006  11318   
[dependencies.http]
 9007  11319   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9008  11320   
index 0c56e4c..95731e3 100644
 9009         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       11321  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9010  11322   
@@ -1,61 +1,61 @@
 9011  11323   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9012  11324   
[package]
 9013  11325   
name = "aws-sdk-timestreamwrite"
 9014  11326   
version = "0.0.0-local"
 9015  11327   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9016  11328   
description = "AWS SDK for Amazon Timestream Write"
 9017  11329   
edition = "2021"
 9018  11330   
license = "Apache-2.0"
 9019  11331   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9020  11332   
rust-version = "1.86.0"
 9021  11333   
readme = "README.md"
 9022  11334   
[package.metadata.smithy]
 9023  11335   
codegen-version = "ci"
 9024  11336   
[package.metadata.docs.rs]
 9025  11337   
all-features = true
 9026  11338   
targets = ["x86_64-unknown-linux-gnu"]
 9027  11339   
[dependencies.aws-credential-types]
 9028  11340   
path = "../aws-credential-types"
 9029  11341   
version = "1.2.4"
 9030  11342   
 9031  11343   
[dependencies.aws-runtime]
 9032  11344   
path = "../aws-runtime"
 9033  11345   
version = "1.5.9"
 9034  11346   
 9035  11347   
[dependencies.aws-smithy-async]
 9036  11348   
path = "../aws-smithy-async"
 9037  11349   
version = "1.2.5"
 9038  11350   
 9039  11351   
[dependencies.aws-smithy-http]
 9040  11352   
path = "../aws-smithy-http"
 9041         -
version = "0.62.2"
       11353  +
version = "0.62.3"
 9042  11354   
 9043  11355   
[dependencies.aws-smithy-json]
 9044  11356   
path = "../aws-smithy-json"
 9045  11357   
version = "0.61.4"
 9046  11358   
 9047  11359   
[dependencies.aws-smithy-runtime]
 9048  11360   
path = "../aws-smithy-runtime"
 9049  11361   
features = ["client"]
 9050  11362   
version = "1.8.5"
 9051  11363   
 9052  11364   
[dependencies.aws-smithy-runtime-api]
 9053  11365   
path = "../aws-smithy-runtime-api"
 9054  11366   
features = ["client", "http-02x"]
 9055  11367   
version = "1.8.5"
 9056  11368   
 9057  11369   
[dependencies.aws-smithy-types]
 9058  11370   
path = "../aws-smithy-types"
 9059  11371   
version = "1.3.2"
 9060  11372   
 9061  11373   
[dependencies.aws-types]
 9062  11374   
path = "../aws-types"
 9063  11375   
version = "1.3.8"
 9064  11376   
 9065  11377   
[dependencies.bytes]
 9066  11378   
version = "1.4.0"
 9067  11379   
 9068  11380   
[dependencies.fastrand]
 9069  11381   
version = "2.0.0"
 9070  11382   
 9071  11383   
[dependencies.http]
 9072  11384   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9073  11385   
index 5b35037..9fb220a 100644
 9074         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       11386  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9075  11387   
@@ -1,71 +1,71 @@
 9076  11388   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9077  11389   
[package]
 9078  11390   
name = "aws-sdk-transcribestreaming"
 9079  11391   
version = "0.0.0-local"
 9080  11392   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9081  11393   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 9082  11394   
edition = "2021"
 9083  11395   
license = "Apache-2.0"
 9084  11396   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9085  11397   
rust-version = "1.86.0"
 9086  11398   
readme = "README.md"
 9087  11399   
[package.metadata.smithy]
 9088  11400   
codegen-version = "ci"
 9089  11401   
[package.metadata.docs.rs]
 9090  11402   
all-features = true
 9091  11403   
targets = ["x86_64-unknown-linux-gnu"]
 9092  11404   
[dependencies.aws-credential-types]
 9093  11405   
path = "../aws-credential-types"
 9094  11406   
version = "1.2.4"
 9095  11407   
 9096  11408   
[dependencies.aws-runtime]
 9097  11409   
path = "../aws-runtime"
 9098  11410   
features = ["event-stream"]
 9099  11411   
version = "1.5.9"
 9100  11412   
 9101  11413   
[dependencies.aws-sigv4]
 9102  11414   
path = "../aws-sigv4"
 9103         -
version = "1.3.3"
       11415  +
version = "1.3.4"
 9104  11416   
 9105  11417   
[dependencies.aws-smithy-async]
 9106  11418   
path = "../aws-smithy-async"
 9107  11419   
version = "1.2.5"
 9108  11420   
 9109  11421   
[dependencies.aws-smithy-eventstream]
 9110  11422   
path = "../aws-smithy-eventstream"
 9111  11423   
version = "0.60.10"
 9112  11424   
 9113  11425   
[dependencies.aws-smithy-http]
 9114  11426   
path = "../aws-smithy-http"
 9115  11427   
features = ["event-stream"]
 9116         -
version = "0.62.2"
       11428  +
version = "0.62.3"
 9117  11429   
 9118  11430   
[dependencies.aws-smithy-json]
 9119  11431   
path = "../aws-smithy-json"
 9120  11432   
version = "0.61.4"
 9121  11433   
 9122  11434   
[dependencies.aws-smithy-runtime]
 9123  11435   
path = "../aws-smithy-runtime"
 9124  11436   
features = ["client"]
 9125  11437   
version = "1.8.5"
 9126  11438