AWS SDK

AWS SDK

rev. 628eeeeeed390f5efdbfe607c18848c033debd3e (ignoring whitespace)

Files changed:

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

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

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

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

   47         -
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).
   48         -

   49         -
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.
   50         -

   51         -
The test suite has 2 examples:
   52         -

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

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

   57         -
The test suite uses this example value for X-Amz-Security-Token:
   58         -

   59         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
   60     30   
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
   61     31   
deleted file mode 100644
   62     32   
index 44280cd..0000000
   63         -
-- 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
          33  +
++ /dev/null
   64     34   
@@ -1 +0,0 @@
   65         -
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
   66     35   
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
   67     36   
deleted file mode 100644
   68     37   
index 82af150..0000000
   69         -
-- 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
          38  +
++ /dev/null
   70     39   
@@ -1,4 +0,0 @@
   71         -
POST /?Param1=value1 HTTP/1.1
   72         -
Host:example.amazonaws.com
   73         -
X-Amz-Date:20150830T123600Z
   74         -
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
   75     40   
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
   76     41   
deleted file mode 100644
   77     42   
index 44280cd..0000000
   78         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
          43  +
++ /dev/null
   79     44   
@@ -1 +0,0 @@
   80         -
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
   81     45   
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
   82     46   
deleted file mode 100644
   83     47   
index 82af150..0000000
   84         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
          48  +
++ /dev/null
   85     49   
@@ -1,4 +0,0 @@
   86         -
POST /?Param1=value1 HTTP/1.1
   87         -
Host:example.amazonaws.com
   88         -
X-Amz-Date:20150830T123600Z
   89         -
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
   90     50   
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
   91     51   
deleted file mode 100644
   92     52   
index 89e572e..0000000
   93         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
          53  +
++ /dev/null
   94     54   
@@ -1 +0,0 @@
   95         -
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
   96     55   
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
   97     56   
deleted file mode 100644
   98     57   
index a5ada0d..0000000
   99         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
          58  +
++ /dev/null
  100     59   
@@ -1,4 +0,0 @@
  101         -
POST / HTTP/1.1
  102         -
Host:example.amazonaws.com
  103         -
X-Amz-Date:20150830T123600Z
  104         -
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
  105     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.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
  106     61   
deleted file mode 100644
  107     62   
index df90ca3..0000000
  108         -
-- 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
          63  +
++ /dev/null
  109     64   
@@ -1 +0,0 @@
  110         -
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
  111     65   
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
  112     66   
deleted file mode 100644
  113     67   
index 457b0d5..0000000
  114         -
-- 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
          68  +
++ /dev/null
  115     69   
@@ -1,9 +0,0 @@
  116         -
POST
  117         -
/
  118         -
Param1=value1
  119         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  120         -
host:example.amazonaws.com
  121         -
x-amz-date:20150830T123600Z
  122         -
  123         -
content-type;host;x-amz-date
  124         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  125     70   
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
  126     71   
deleted file mode 100644
  127     72   
index b8ecb89..0000000
  128         -
-- 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
          73  +
++ /dev/null
  129     74   
@@ -1,7 +0,0 @@
  130         -
POST / HTTP/1.1
  131         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  132         -
Host:example.amazonaws.com
  133         -
X-Amz-Date:20150830T123600Z
  134         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  135         -
  136         -
Param1=value1
              \
 No newline at end of file
  137     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.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
  138     76   
deleted file mode 100644
  139     77   
index 79077d2..0000000
  140         -
-- 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
          78  +
++ /dev/null
  141     79   
@@ -1 +0,0 @@
  142         -
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
  143     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.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
  144     81   
deleted file mode 100644
  145     82   
index 7852617..0000000
  146         -
-- 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
          83  +
++ /dev/null
  147     84   
@@ -1,4 +0,0 @@
  148         -
POST / HTTP/1.1
  149         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  150         -
Host:example.amazonaws.com
  151         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  152     85   
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
  153     86   
deleted file mode 100644
  154     87   
index 3e2e571..0000000
  155         -
-- 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
          88  +
++ /dev/null
  156     89   
@@ -1,4 +0,0 @@
  157         -
POST / HTTP/1.1
  158         -
Host:example.amazonaws.com
  159         -
X-Amz-Date:20150830T123600Z
  160         -
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
  161     90   
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
  162     91   
deleted file mode 100644
  163     92   
index 89ceae8..0000000
  164         -
-- 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
          93  +
++ /dev/null
  165     94   
@@ -1,4 +0,0 @@
  166         -
AWS4-HMAC-SHA256
  167         -
20150830T123600Z
  168         -
20150830/us-east-1/service/aws4_request
  169         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  170     95   
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
  171     96   
deleted file mode 100755
  172     97   
index d645695..0000000
  173         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
          98  +
++ /dev/null
  174     99   
@@ -1,202 +0,0 @@
  175         -
  176         -
                                 Apache License
  177         -
                           Version 2.0, January 2004
  178         -
                        http://www.apache.org/licenses/
  179         -
  180         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  181         -
  182         -
   1. Definitions.
  183         -
  184         -
      "License" shall mean the terms and conditions for use, reproduction,
  185         -
      and distribution as defined by Sections 1 through 9 of this document.
  186         -
  187         -
      "Licensor" shall mean the copyright owner or entity authorized by
  188         -
      the copyright owner that is granting the License.
  189         -
  190         -
      "Legal Entity" shall mean the union of the acting entity and all
  191         -
      other entities that control, are controlled by, or are under common
  192         -
      control with that entity. For the purposes of this definition,
  193         -
      "control" means (i) the power, direct or indirect, to cause the
  194         -
      direction or management of such entity, whether by contract or
  195         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  196         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  197         -
  198         -
      "You" (or "Your") shall mean an individual or Legal Entity
  199         -
      exercising permissions granted by this License.
  200         -
  201         -
      "Source" form shall mean the preferred form for making modifications,
  202         -
      including but not limited to software source code, documentation
  203         -
      source, and configuration files.
  204         -
  205         -
      "Object" form shall mean any form resulting from mechanical
  206         -
      transformation or translation of a Source form, including but
  207         -
      not limited to compiled object code, generated documentation,
  208         -
      and conversions to other media types.
  209         -
  210         -
      "Work" shall mean the work of authorship, whether in Source or
  211         -
      Object form, made available under the License, as indicated by a
  212         -
      copyright notice that is included in or attached to the work
  213         -
      (an example is provided in the Appendix below).
  214         -
  215         -
      "Derivative Works" shall mean any work, whether in Source or Object
  216         -
      form, that is based on (or derived from) the Work and for which the
  217         -
      editorial revisions, annotations, elaborations, or other modifications
  218         -
      represent, as a whole, an original work of authorship. For the purposes
  219         -
      of this License, Derivative Works shall not include works that remain
  220         -
      separable from, or merely link (or bind by name) to the interfaces of,
  221         -
      the Work and Derivative Works thereof.
  222         -
  223         -
      "Contribution" shall mean any work of authorship, including
  224         -
      the original version of the Work and any modifications or additions
  225         -
      to that Work or Derivative Works thereof, that is intentionally
  226         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  227         -
      or by an individual or Legal Entity authorized to submit on behalf of
  228         -
      the copyright owner. For the purposes of this definition, "submitted"
  229         -
      means any form of electronic, verbal, or written communication sent
  230         -
      to the Licensor or its representatives, including but not limited to
  231         -
      communication on electronic mailing lists, source code control systems,
  232         -
      and issue tracking systems that are managed by, or on behalf of, the
  233         -
      Licensor for the purpose of discussing and improving the Work, but
  234         -
      excluding communication that is conspicuously marked or otherwise
  235         -
      designated in writing by the copyright owner as "Not a Contribution."
  236         -
  237         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  238         -
      on behalf of whom a Contribution has been received by Licensor and
  239         -
      subsequently incorporated within the Work.
  240         -
  241         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  242         -
      this License, each Contributor hereby grants to You a perpetual,
  243         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  244         -
      copyright license to reproduce, prepare Derivative Works of,
  245         -
      publicly display, publicly perform, sublicense, and distribute the
  246         -
      Work and such Derivative Works in Source or Object form.
  247         -
  248         -
   3. Grant of Patent License. Subject to the terms and conditions of
  249         -
      this License, each Contributor hereby grants to You a perpetual,
  250         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  251         -
      (except as stated in this section) patent license to make, have made,
  252         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  253         -
      where such license applies only to those patent claims licensable
  254         -
      by such Contributor that are necessarily infringed by their
  255         -
      Contribution(s) alone or by combination of their Contribution(s)
  256         -
      with the Work to which such Contribution(s) was submitted. If You
  257         -
      institute patent litigation against any entity (including a
  258         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  259         -
      or a Contribution incorporated within the Work constitutes direct
  260         -
      or contributory patent infringement, then any patent licenses
  261         -
      granted to You under this License for that Work shall terminate
  262         -
      as of the date such litigation is filed.
  263         -
  264         -
   4. Redistribution. You may reproduce and distribute copies of the
  265         -
      Work or Derivative Works thereof in any medium, with or without
  266         -
      modifications, and in Source or Object form, provided that You
  267         -
      meet the following conditions:
  268         -
  269         -
      (a) You must give any other recipients of the Work or
  270         -
          Derivative Works a copy of this License; and
  271         -
  272         -
      (b) You must cause any modified files to carry prominent notices
  273         -
          stating that You changed the files; and
  274         -
  275         -
      (c) You must retain, in the Source form of any Derivative Works
  276         -
          that You distribute, all copyright, patent, trademark, and
  277         -
          attribution notices from the Source form of the Work,
  278         -
          excluding those notices that do not pertain to any part of
  279         -
          the Derivative Works; and
  280         -
  281         -
      (d) If the Work includes a "NOTICE" text file as part of its
  282         -
          distribution, then any Derivative Works that You distribute must
  283         -
          include a readable copy of the attribution notices contained
  284         -
          within such NOTICE file, excluding those notices that do not
  285         -
          pertain to any part of the Derivative Works, in at least one
  286         -
          of the following places: within a NOTICE text file distributed
  287         -
          as part of the Derivative Works; within the Source form or
  288         -
          documentation, if provided along with the Derivative Works; or,
  289         -
          within a display generated by the Derivative Works, if and
  290         -
          wherever such third-party notices normally appear. The contents
  291         -
          of the NOTICE file are for informational purposes only and
  292         -
          do not modify the License. You may add Your own attribution
  293         -
          notices within Derivative Works that You distribute, alongside
  294         -
          or as an addendum to the NOTICE text from the Work, provided
  295         -
          that such additional attribution notices cannot be construed
  296         -
          as modifying the License.
  297         -
  298         -
      You may add Your own copyright statement to Your modifications and
  299         -
      may provide additional or different license terms and conditions
  300         -
      for use, reproduction, or distribution of Your modifications, or
  301         -
      for any such Derivative Works as a whole, provided Your use,
  302         -
      reproduction, and distribution of the Work otherwise complies with
  303         -
      the conditions stated in this License.
  304         -
  305         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  306         -
      any Contribution intentionally submitted for inclusion in the Work
  307         -
      by You to the Licensor shall be under the terms and conditions of
  308         -
      this License, without any additional terms or conditions.
  309         -
      Notwithstanding the above, nothing herein shall supersede or modify
  310         -
      the terms of any separate license agreement you may have executed
  311         -
      with Licensor regarding such Contributions.
  312         -
  313         -
   6. Trademarks. This License does not grant permission to use the trade
  314         -
      names, trademarks, service marks, or product names of the Licensor,
  315         -
      except as required for reasonable and customary use in describing the
  316         -
      origin of the Work and reproducing the content of the NOTICE file.
  317         -
  318         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  319         -
      agreed to in writing, Licensor provides the Work (and each
  320         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  321         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  322         -
      implied, including, without limitation, any warranties or conditions
  323         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  324         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  325         -
      appropriateness of using or redistributing the Work and assume any
  326         -
      risks associated with Your exercise of permissions under this License.
  327         -
  328         -
   8. Limitation of Liability. In no event and under no legal theory,
  329         -
      whether in tort (including negligence), contract, or otherwise,
  330         -
      unless required by applicable law (such as deliberate and grossly
  331         -
      negligent acts) or agreed to in writing, shall any Contributor be
  332         -
      liable to You for damages, including any direct, indirect, special,
  333         -
      incidental, or consequential damages of any character arising as a
  334         -
      result of this License or out of the use or inability to use the
  335         -
      Work (including but not limited to damages for loss of goodwill,
  336         -
      work stoppage, computer failure or malfunction, or any and all
  337         -
      other commercial damages or losses), even if such Contributor
  338         -
      has been advised of the possibility of such damages.
  339         -
  340         -
   9. Accepting Warranty or Additional Liability. While redistributing
  341         -
      the Work or Derivative Works thereof, You may choose to offer,
  342         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  343         -
      or other liability obligations and/or rights consistent with this
  344         -
      License. However, in accepting such obligations, You may act only
  345         -
      on Your own behalf and on Your sole responsibility, not on behalf
  346         -
      of any other Contributor, and only if You agree to indemnify,
  347         -
      defend, and hold each Contributor harmless for any liability
  348         -
      incurred by, or claims asserted against, such Contributor by reason
  349         -
      of your accepting any such warranty or additional liability.
  350         -
  351         -
   END OF TERMS AND CONDITIONS
  352         -
  353         -
   APPENDIX: How to apply the Apache License to your work.
  354         -
  355         -
      To apply the Apache License to your work, attach the following
  356         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  357         -
      replaced with your own identifying information. (Don't include
  358         -
      the brackets!)  The text should be enclosed in the appropriate
  359         -
      comment syntax for the file format. We also recommend that a
  360         -
      file or class name and description of purpose be included on the
  361         -
      same "printed page" as the copyright notice for easier
  362         -
      identification within third-party archives.
  363         -
  364         -
   Copyright [yyyy] [name of copyright owner]
  365         -
  366         -
   Licensed under the Apache License, Version 2.0 (the "License");
  367         -
   you may not use this file except in compliance with the License.
  368         -
   You may obtain a copy of the License at
  369         -
  370         -
       http://www.apache.org/licenses/LICENSE-2.0
  371         -
  372         -
   Unless required by applicable law or agreed to in writing, software
  373         -
   distributed under the License is distributed on an "AS IS" BASIS,
  374         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  375         -
   See the License for the specific language governing permissions and
  376         -
   limitations under the License.
  377    100   
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
  378    101   
deleted file mode 100755
  379    102   
index d85f69e..0000000
  380         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         103  +
++ /dev/null
  381    104   
@@ -1,2 +0,0 @@
  382         -
AWS Signature Version 4a Test Suite
  383         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  384    105   
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
  385    106   
deleted file mode 100644
  386    107   
index c716622..0000000
  387         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         108  +
++ /dev/null
  388    109   
@@ -1,24 +0,0 @@
  389         -
Where did the files in this directory come from?
  390         -
================================================
  391         -
  392         -
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.
  393         -
  394         -
Signature Version 4A Test Suite
  395         -
------------------------------
  396         -
  397         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  398         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  399         -
  400         -
Each test group contains several files that you can use to validate most of the tasks described in
  401         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  402         -
  403         -
- context.json - Credentials and signer options to use when signing test requests
  404         -
- request.txt - The web request to be signed.
  405         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  406         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  407         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  408         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  409         -
  410         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  411         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  412         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  413    110   
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
  414    111   
deleted file mode 100644
  415    112   
index 45771c7..0000000
  416         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         113  +
++ /dev/null
  417    114   
@@ -1,12 +0,0 @@
  418         -
{
  419         -
    "credentials": {
  420         -
        "access_key_id": "AKIDEXAMPLE",
  421         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  422         -
    },
  423         -
    "expiration_in_seconds": 3600,
  424         -
    "normalize": true,
  425         -
    "region": "us-east-1",
  426         -
    "service": "service",
  427         -
    "sign_body": false,
  428         -
    "timestamp": "2015-08-30T12:36:00Z"
  429         -
}
  430    115   
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
  431    116   
deleted file mode 100644
  432    117   
index 45771c7..0000000
  433         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         118  +
++ /dev/null
  434    119   
@@ -1,12 +0,0 @@
  435         -
{
  436         -
    "credentials": {
  437         -
        "access_key_id": "AKIDEXAMPLE",
  438         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  439         -
    },
  440         -
    "expiration_in_seconds": 3600,
  441         -
    "normalize": true,
  442         -
    "region": "us-east-1",
  443         -
    "service": "service",
  444         -
    "sign_body": false,
  445         -
    "timestamp": "2015-08-30T12:36:00Z"
  446         -
}
  447    120   
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
  448    121   
deleted file mode 100644
  449    122   
index 45771c7..0000000
  450         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         123  +
++ /dev/null
  451    124   
@@ -1,12 +0,0 @@
  452         -
{
  453         -
    "credentials": {
  454         -
        "access_key_id": "AKIDEXAMPLE",
  455         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  456         -
    },
  457         -
    "expiration_in_seconds": 3600,
  458         -
    "normalize": true,
  459         -
    "region": "us-east-1",
  460         -
    "service": "service",
  461         -
    "sign_body": false,
  462         -
    "timestamp": "2015-08-30T12:36:00Z"
  463         -
}
  464    125   
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
  465    126   
deleted file mode 100644
  466    127   
index 45771c7..0000000
  467         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         128  +
++ /dev/null
  468    129   
@@ -1,12 +0,0 @@
  469         -
{
  470         -
    "credentials": {
  471         -
        "access_key_id": "AKIDEXAMPLE",
  472         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  473         -
    },
  474         -
    "expiration_in_seconds": 3600,
  475         -
    "normalize": true,
  476         -
    "region": "us-east-1",
  477         -
    "service": "service",
  478         -
    "sign_body": false,
  479         -
    "timestamp": "2015-08-30T12:36:00Z"
  480         -
}
  481    130   
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
  482    131   
deleted file mode 100644
  483    132   
index afe367b..0000000
  484         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         133  +
++ /dev/null
  485    134   
@@ -1,12 +0,0 @@
  486         -
{
  487         -
    "credentials": {
  488         -
        "access_key_id": "AKIDEXAMPLE",
  489         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  490         -
    },
  491         -
    "expiration_in_seconds": 3600,
  492         -
    "normalize": false,
  493         -
    "region": "us-east-1",
  494         -
    "service": "service",
  495         -
    "sign_body": false,
  496         -
    "timestamp": "2015-08-30T12:36:00Z"
  497         -
}
  498    135   
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
  499    136   
deleted file mode 100644
  500    137   
index 45771c7..0000000
  501         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         138  +
++ /dev/null
  502    139   
@@ -1,12 +0,0 @@
  503         -
{
  504         -
    "credentials": {
  505         -
        "access_key_id": "AKIDEXAMPLE",
  506         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  507         -
    },
  508         -
    "expiration_in_seconds": 3600,
  509         -
    "normalize": true,
  510         -
    "region": "us-east-1",
  511         -
    "service": "service",
  512         -
    "sign_body": false,
  513         -
    "timestamp": "2015-08-30T12:36:00Z"
  514         -
}
  515    140   
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
  516    141   
deleted file mode 100644
  517    142   
index afe367b..0000000
  518         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         143  +
++ /dev/null
  519    144   
@@ -1,12 +0,0 @@
  520         -
{
  521         -
    "credentials": {
  522         -
        "access_key_id": "AKIDEXAMPLE",
  523         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  524         -
    },
  525         -
    "expiration_in_seconds": 3600,
  526         -
    "normalize": false,
  527         -
    "region": "us-east-1",
  528         -
    "service": "service",
  529         -
    "sign_body": false,
  530         -
    "timestamp": "2015-08-30T12:36:00Z"
  531         -
}
  532    145   
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
  533    146   
deleted file mode 100644
  534    147   
index 45771c7..0000000
  535         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         148  +
++ /dev/null
  536    149   
@@ -1,12 +0,0 @@
  537         -
{
  538         -
    "credentials": {
  539         -
        "access_key_id": "AKIDEXAMPLE",
  540         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  541         -
    },
  542         -
    "expiration_in_seconds": 3600,
  543         -
    "normalize": true,
  544         -
    "region": "us-east-1",
  545         -
    "service": "service",
  546         -
    "sign_body": false,
  547         -
    "timestamp": "2015-08-30T12:36:00Z"
  548         -
}
  549    150   
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
  550    151   
deleted file mode 100644
  551    152   
index 45771c7..0000000
  552         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         153  +
++ /dev/null
  553    154   
@@ -1,12 +0,0 @@
  554         -
{
  555         -
    "credentials": {
  556         -
        "access_key_id": "AKIDEXAMPLE",
  557         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  558         -
    },
  559         -
    "expiration_in_seconds": 3600,
  560         -
    "normalize": true,
  561         -
    "region": "us-east-1",
  562         -
    "service": "service",
  563         -
    "sign_body": false,
  564         -
    "timestamp": "2015-08-30T12:36:00Z"
  565         -
}
  566    155   
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
  567    156   
deleted file mode 100644
  568    157   
index 45771c7..0000000
  569         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         158  +
++ /dev/null
  570    159   
@@ -1,12 +0,0 @@
  571         -
{
  572         -
    "credentials": {
  573         -
        "access_key_id": "AKIDEXAMPLE",
  574         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  575         -
    },
  576         -
    "expiration_in_seconds": 3600,
  577         -
    "normalize": true,
  578         -
    "region": "us-east-1",
  579         -
    "service": "service",
  580         -
    "sign_body": false,
  581         -
    "timestamp": "2015-08-30T12:36:00Z"
  582         -
}
  583    160   
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
  584    161   
deleted file mode 100644
  585    162   
index 45771c7..0000000
  586         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         163  +
++ /dev/null
  587    164   
@@ -1,12 +0,0 @@
  588         -
{
  589         -
    "credentials": {
  590         -
        "access_key_id": "AKIDEXAMPLE",
  591         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  592         -
    },
  593         -
    "expiration_in_seconds": 3600,
  594         -
    "normalize": true,
  595         -
    "region": "us-east-1",
  596         -
    "service": "service",
  597         -
    "sign_body": false,
  598         -
    "timestamp": "2015-08-30T12:36:00Z"
  599         -
}
  600    165   
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
  601    166   
deleted file mode 100644
  602    167   
index 45771c7..0000000
  603         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         168  +
++ /dev/null
  604    169   
@@ -1,12 +0,0 @@
  605         -
{
  606         -
    "credentials": {
  607         -
        "access_key_id": "AKIDEXAMPLE",
  608         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  609         -
    },
  610         -
    "expiration_in_seconds": 3600,
  611         -
    "normalize": true,
  612         -
    "region": "us-east-1",
  613         -
    "service": "service",
  614         -
    "sign_body": false,
  615         -
    "timestamp": "2015-08-30T12:36:00Z"
  616         -
}
  617    170   
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
  618    171   
deleted file mode 100644
  619    172   
index 47e7128..0000000
  620         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         173  +
++ /dev/null
  621    174   
@@ -1,9 +0,0 @@
  622         -
GET
  623         -
/
  624         -
  625         -
host:example.amazonaws.com
  626         -
x-amz-date:20150830T123600Z
  627         -
x-amz-region-set:us-east-1
  628         -
  629         -
host;x-amz-date;x-amz-region-set
  630         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  631    175   
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
  632    176   
deleted file mode 100644
  633    177   
index 95d7219..0000000
  634         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         178  +
++ /dev/null
  635    179   
@@ -1,4 +0,0 @@
  636         -
AWS4-ECDSA-P256-SHA256
  637         -
20150830T123600Z
  638         -
20150830/service/aws4_request
  639         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  640    180   
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
  641    181   
deleted file mode 100644
  642    182   
index a34ea26..0000000
  643         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         183  +
++ /dev/null
  644    184   
@@ -1,7 +0,0 @@
  645         -
GET
  646         -
/
  647         -
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
  648         -
host:example.amazonaws.com
  649         -
  650         -
host
  651         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  652    185   
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
  653    186   
deleted file mode 100644
  654    187   
index 48f855c..0000000
  655         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         188  +
++ /dev/null
  656    189   
@@ -1,4 +0,0 @@
  657         -
AWS4-ECDSA-P256-SHA256
  658         -
20150830T123600Z
  659         -
20150830/service/aws4_request
  660         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  661    190   
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
  662    191   
deleted file mode 100644
  663    192   
index 45771c7..0000000
  664         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         193  +
++ /dev/null
  665    194   
@@ -1,12 +0,0 @@
  666         -
{
  667         -
    "credentials": {
  668         -
        "access_key_id": "AKIDEXAMPLE",
  669         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  670         -
    },
  671         -
    "expiration_in_seconds": 3600,
  672         -
    "normalize": true,
  673         -
    "region": "us-east-1",
  674         -
    "service": "service",
  675         -
    "sign_body": false,
  676         -
    "timestamp": "2015-08-30T12:36:00Z"
  677         -
}
  678    195   
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
  679    196   
deleted file mode 100644
  680    197   
index 47e7128..0000000
  681         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         198  +
++ /dev/null
  682    199   
@@ -1,9 +0,0 @@
  683         -
GET
  684         -
/
  685         -
  686         -
host:example.amazonaws.com
  687         -
x-amz-date:20150830T123600Z
  688         -
x-amz-region-set:us-east-1
  689         -
  690         -
host;x-amz-date;x-amz-region-set
  691         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  692    200   
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
  693    201   
deleted file mode 100644
  694    202   
index 95d7219..0000000
  695         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         203  +
++ /dev/null
  696    204   
@@ -1,4 +0,0 @@
  697         -
AWS4-ECDSA-P256-SHA256
  698         -
20150830T123600Z
  699         -
20150830/service/aws4_request
  700         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  701    205   
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
  702    206   
deleted file mode 100644
  703    207   
index a34ea26..0000000
  704         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         208  +
++ /dev/null
  705    209   
@@ -1,7 +0,0 @@
  706         -
GET
  707         -
/
  708         -
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
  709         -
host:example.amazonaws.com
  710         -
  711         -
host
  712         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  713    210   
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
  714    211   
deleted file mode 100644
  715    212   
index 48f855c..0000000
  716         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         213  +
++ /dev/null
  717    214   
@@ -1,4 +0,0 @@
  718         -
AWS4-ECDSA-P256-SHA256
  719         -
20150830T123600Z
  720         -
20150830/service/aws4_request
  721         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  722    215   
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
  723    216   
deleted file mode 100644
  724    217   
index 45771c7..0000000
  725         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         218  +
++ /dev/null
  726    219   
@@ -1,12 +0,0 @@
  727         -
{
  728         -
    "credentials": {
  729         -
        "access_key_id": "AKIDEXAMPLE",
  730         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  731         -
    },
  732         -
    "expiration_in_seconds": 3600,
  733         -
    "normalize": true,
  734         -
    "region": "us-east-1",
  735         -
    "service": "service",
  736         -
    "sign_body": false,
  737         -
    "timestamp": "2015-08-30T12:36:00Z"
  738         -
}
  739    220   
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
  740    221   
deleted file mode 100644
  741    222   
index 45771c7..0000000
  742         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         223  +
++ /dev/null
  743    224   
@@ -1,12 +0,0 @@
  744         -
{
  745         -
    "credentials": {
  746         -
        "access_key_id": "AKIDEXAMPLE",
  747         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  748         -
    },
  749         -
    "expiration_in_seconds": 3600,
  750         -
    "normalize": true,
  751         -
    "region": "us-east-1",
  752         -
    "service": "service",
  753         -
    "sign_body": false,
  754         -
    "timestamp": "2015-08-30T12:36:00Z"
  755         -
}
  756    225   
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
  757    226   
deleted file mode 100644
  758    227   
index 45771c7..0000000
  759         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         228  +
++ /dev/null
  760    229   
@@ -1,12 +0,0 @@
  761         -
{
  762         -
    "credentials": {
  763         -
        "access_key_id": "AKIDEXAMPLE",
  764         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  765         -
    },
  766         -
    "expiration_in_seconds": 3600,
  767         -
    "normalize": true,
  768         -
    "region": "us-east-1",
  769         -
    "service": "service",
  770         -
    "sign_body": false,
  771         -
    "timestamp": "2015-08-30T12:36:00Z"
  772         -
}
  773    230   
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
  774    231   
deleted file mode 100644
  775    232   
index 45771c7..0000000
  776         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         233  +
++ /dev/null
  777    234   
@@ -1,12 +0,0 @@
  778         -
{
  779         -
    "credentials": {
  780         -
        "access_key_id": "AKIDEXAMPLE",
  781         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  782         -
    },
  783         -
    "expiration_in_seconds": 3600,
  784         -
    "normalize": true,
  785         -
    "region": "us-east-1",
  786         -
    "service": "service",
  787         -
    "sign_body": false,
  788         -
    "timestamp": "2015-08-30T12:36:00Z"
  789         -
}
  790    235   
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
  791    236   
deleted file mode 100644
  792    237   
index 45771c7..0000000
  793         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         238  +
++ /dev/null
  794    239   
@@ -1,12 +0,0 @@
  795         -
{
  796         -
    "credentials": {
  797         -
        "access_key_id": "AKIDEXAMPLE",
  798         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  799         -
    },
  800         -
    "expiration_in_seconds": 3600,
  801         -
    "normalize": true,
  802         -
    "region": "us-east-1",
  803         -
    "service": "service",
  804         -
    "sign_body": false,
  805         -
    "timestamp": "2015-08-30T12:36:00Z"
  806         -
}
  807    240   
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
  808    241   
deleted file mode 100644
  809    242   
index 45771c7..0000000
  810         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         243  +
++ /dev/null
  811    244   
@@ -1,12 +0,0 @@
  812         -
{
  813         -
    "credentials": {
  814         -
        "access_key_id": "AKIDEXAMPLE",
  815         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  816         -
    },
  817         -
    "expiration_in_seconds": 3600,
  818         -
    "normalize": true,
  819         -
    "region": "us-east-1",
  820         -
    "service": "service",
  821         -
    "sign_body": false,
  822         -
    "timestamp": "2015-08-30T12:36:00Z"
  823         -
}
  824    245   
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
  825    246   
deleted file mode 100644
  826    247   
index b6fdecf..0000000
  827         -
-- 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
         248  +
++ /dev/null
  828    249   
@@ -1,4 +0,0 @@
  829         -
AWS4-ECDSA-P256-SHA256
  830         -
20150830T123600Z
  831         -
20150830/service/aws4_request
  832         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  833    250   
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
  834    251   
deleted file mode 100644
  835    252   
index a300bea..0000000
  836         -
-- 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
         253  +
++ /dev/null
  837    254   
@@ -1,4 +0,0 @@
  838         -
AWS4-ECDSA-P256-SHA256
  839         -
20150830T123600Z
  840         -
20150830/service/aws4_request
  841         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
  842    255   
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
  843    256   
deleted file mode 100644
  844    257   
index b6fdecf..0000000
  845         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         258  +
++ /dev/null
  846    259   
@@ -1,4 +0,0 @@
  847         -
AWS4-ECDSA-P256-SHA256
  848         -
20150830T123600Z
  849         -
20150830/service/aws4_request
  850         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  851    260   
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
  852    261   
new file mode 100644
  853    262   
index 0000000..a674243
  854         -
-- /dev/null
         263  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
  855    264   
@@ -0,0 +1,7 @@
         265  +
# AWS SigV4 and SigV4A Signing Test Suite
         266  +
         267  +
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).
         268  +
         269  +
We added the following changes:
         270  +
         271  +
* 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
  856    272   
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
  857    273   
similarity index 100%
  858    274   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
  859    275   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
  860    276   
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
  861    277   
similarity index 100%
  862    278   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
  863    279   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
  864    280   
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
  865    281   
similarity index 100%
  866    282   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
  867    283   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
  868    284   
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
  869    285   
similarity index 100%
  870    286   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
  871    287   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
  872    288   
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
  873    289   
similarity index 100%
  874    290   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
  875    291   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
  876    292   
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
  877    293   
similarity index 100%
  878    294   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
  879    295   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
  880    296   
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
  881    297   
similarity index 100%
  882    298   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
  883    299   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
  884    300   
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
  885    301   
similarity index 99%
  886    302   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
  887    303   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
  888    304   
index 45771c7..0468d80 100644
  889    305   
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
  890    306   
similarity index 100%
  891    307   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
  892    308   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
  893    309   
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
  894    310   
new file mode 100644
  895    311   
index 0000000..7fc5d7a
  896         -
-- /dev/null
         312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
  897    313   
@@ -0,0 +1 @@
         314  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
  898    315   
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
  899    316   
new file mode 100644
  900    317   
index 0000000..36a1205
  901         -
-- /dev/null
         318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
  902    319   
@@ -0,0 +1,8 @@
         320  +
GET / HTTP/1.1
         321  +
Host:example.amazonaws.com
         322  +
My-Header1:value2
         323  +
My-Header1:value2
         324  +
My-Header1:value1
         325  +
X-Amz-Date:20150830T123600Z
         326  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         327  +
  903    328   
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
  904    329   
similarity index 100%
  905    330   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
  906    331   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
  907    332   
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
  908    333   
new file mode 100644
  909    334   
index 0000000..f9f4190
  910         -
-- /dev/null
         335  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
  911    336   
@@ -0,0 +1,8 @@
         337  +
GET
         338  +
/
         339  +
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
         340  +
host:example.amazonaws.com
         341  +
my-header1:value2,value2,value1
         342  +
         343  +
host;my-header1
         344  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  912    345   
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
  913    346   
new file mode 100644
  914    347   
index 0000000..5d0d87f
  915         -
-- /dev/null
         348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
  916    349   
@@ -0,0 +1 @@
         350  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
  917    351   
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
  918    352   
new file mode 100644
  919    353   
index 0000000..c1dfcf4
  920         -
-- /dev/null
         354  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
  921    355   
@@ -0,0 +1,6 @@
         356  +
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
         357  +
Host:example.amazonaws.com
         358  +
My-Header1:value2
         359  +
My-Header1:value2
         360  +
My-Header1:value1
         361  +
  922    362   
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
  923    363   
similarity index 53%
  924    364   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
  925    365   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
  926    366   
index 0a3350a..077c1bb 100644
  927         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
  928    368   
@@ -1,4 +1,4 @@
  929    369   
AWS4-HMAC-SHA256
  930    370   
20150830T123600Z
  931    371   
20150830/us-east-1/service/aws4_request
  932         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         372  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
  933    373   
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
  934    374   
similarity index 100%
  935    375   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
  936    376   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
  937    377   
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
  938    378   
similarity index 99%
  939    379   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
  940    380   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
  941    381   
index 45771c7..0468d80 100644
  942    382   
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
  943    383   
similarity index 82%
  944    384   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
  945    385   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
  946    386   
index 721a39f..8cb5476 100644
  947         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         387  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
  948    388   
@@ -1,9 +1,9 @@
  949    389   
GET
  950    390   
/
  951    391   
  952    392   
host:example.amazonaws.com
  953         -
my-header1:value1,value2,value3
         393  +
my-header1:value1 value2 value3
  954    394   
x-amz-date:20150830T123600Z
  955    395   
  956    396   
host;my-header1;x-amz-date
  957    397   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  958    398   
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
  959    399   
new file mode 100644
  960    400   
index 0000000..e6ff7a9
  961         -
-- /dev/null
         401  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
  962    402   
@@ -0,0 +1 @@
         403  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
  963    404   
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
  964    405   
new file mode 100644
  965    406   
index 0000000..b5ef6a0
  966         -
-- /dev/null
         407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
  967    408   
@@ -0,0 +1,8 @@
         409  +
GET / HTTP/1.1
         410  +
Host:example.amazonaws.com
         411  +
My-Header1:value1
         412  +
  value2
         413  +
     value3
         414  +
X-Amz-Date:20150830T123600Z
         415  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         416  +
  968    417   
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
  969    418   
similarity index 53%
  970    419   
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
  971    420   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
  972    421   
index fd43a41..97c7430 100644
  973         -
-- 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
         422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
  974    423   
@@ -1,4 +1,4 @@
  975    424   
AWS4-HMAC-SHA256
  976    425   
20150830T123600Z
  977    426   
20150830/us-east-1/service/aws4_request
  978         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         427  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
  979    428   
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
  980    429   
new file mode 100644
  981    430   
index 0000000..aac46de
  982         -
-- /dev/null
         431  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
  983    432   
@@ -0,0 +1,8 @@
         433  +
GET
         434  +
/
         435  +
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
         436  +
host:example.amazonaws.com
         437  +
my-header1:value1 value2 value3
         438  +
         439  +
host;my-header1
         440  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  984    441   
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
  985    442   
new file mode 100644
  986    443   
index 0000000..205732d
  987         -
-- /dev/null
         444  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
  988    445   
@@ -0,0 +1 @@
         446  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
  989    447   
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
  990    448   
new file mode 100644
  991    449   
index 0000000..a891b87
  992         -
-- /dev/null
         450  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
  993    451   
@@ -0,0 +1,6 @@
         452  +
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
         453  +
Host:example.amazonaws.com
         454  +
My-Header1:value1
         455  +
  value2
         456  +
     value3
         457  +
  994    458   
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
  995    459   
similarity index 53%
  996    460   
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
  997    461   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
  998    462   
index 90e66b8..ec3fe45 100644
  999         -
-- 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
         463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1000    464   
@@ -1,4 +1,4 @@
 1001    465   
AWS4-HMAC-SHA256
 1002    466   
20150830T123600Z
 1003    467   
20150830/us-east-1/service/aws4_request
 1004         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         468  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1005    469   
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
 1006    470   
similarity index 75%
 1007    471   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1008    472   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1009    473   
index 7caa6ac..b5026cd 100644
 1010         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1011    475   
@@ -1,6 +1,5 @@
 1012    476   
GET / HTTP/1.1
 1013    477   
Host:example.amazonaws.com
 1014    478   
My-Header1:value1
 1015    479   
  value2
 1016    480   
     value3
 1017         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1018    481   
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
 1019    482   
similarity index 99%
 1020    483   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1021    484   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1022    485   
index 45771c7..0468d80 100644
 1023    486   
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
 1024    487   
similarity index 100%
 1025    488   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1026    489   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1027    490   
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
 1028    491   
new file mode 100644
 1029    492   
index 0000000..8ef0494
 1030         -
-- /dev/null
         493  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1031    494   
@@ -0,0 +1 @@
         495  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1032    496   
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
 1033    497   
new file mode 100644
 1034    498   
index 0000000..b786dc9
 1035         -
-- /dev/null
         499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1036    500   
@@ -0,0 +1,9 @@
         501  +
GET / HTTP/1.1
         502  +
Host:example.amazonaws.com
         503  +
My-Header1:value4
         504  +
My-Header1:value1
         505  +
My-Header1:value3
         506  +
My-Header1:value2
         507  +
X-Amz-Date:20150830T123600Z
         508  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         509  +
 1037    510   
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
 1038    511   
similarity index 100%
 1039    512   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1040    513   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1041    514   
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
 1042    515   
new file mode 100644
 1043    516   
index 0000000..a211cc5
 1044         -
-- /dev/null
         517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1045    518   
@@ -0,0 +1,8 @@
         519  +
GET
         520  +
/
         521  +
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
         522  +
host:example.amazonaws.com
         523  +
my-header1:value4,value1,value3,value2
         524  +
         525  +
host;my-header1
         526  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1046    527   
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
 1047    528   
new file mode 100644
 1048    529   
index 0000000..417b0fa
 1049         -
-- /dev/null
         530  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1050    531   
@@ -0,0 +1 @@
         532  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1051    533   
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
 1052    534   
new file mode 100644
 1053    535   
index 0000000..b615e5d
 1054         -
-- /dev/null
         536  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1055    537   
@@ -0,0 +1,7 @@
         538  +
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
         539  +
Host:example.amazonaws.com
         540  +
My-Header1:value4
         541  +
My-Header1:value1
         542  +
My-Header1:value3
         543  +
My-Header1:value2
         544  +
 1056    545   
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
 1057    546   
similarity index 53%
 1058    547   
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
 1059    548   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1060    549   
index f7e615e..dcaaa1b 100644
 1061         -
-- 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
         550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1062    551   
@@ -1,4 +1,4 @@
 1063    552   
AWS4-HMAC-SHA256
 1064    553   
20150830T123600Z
 1065    554   
20150830/us-east-1/service/aws4_request
 1066         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         555  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1067    556   
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
 1068    557   
similarity index 100%
 1069    558   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1070    559   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1071    560   
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
 1072    561   
similarity index 99%
 1073    562   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1074    563   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1075    564   
index 45771c7..0468d80 100644
 1076    565   
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
 1077    566   
similarity index 100%
 1078    567   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1079    568   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1080    569   
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
 1081    570   
new file mode 100644
 1082    571   
index 0000000..36081a9
 1083         -
-- /dev/null
         572  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1084    573   
@@ -0,0 +1 @@
         574  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1085    575   
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
 1086    576   
new file mode 100644
 1087    577   
index 0000000..6331d16
 1088         -
-- /dev/null
         578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1089    579   
@@ -0,0 +1,7 @@
         580  +
GET / HTTP/1.1
         581  +
Host:example.amazonaws.com
         582  +
My-Header1: value1
         583  +
My-Header2: "a   b   c"
         584  +
X-Amz-Date:20150830T123600Z
         585  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         586  +
 1090    587   
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
 1091    588   
similarity index 100%
 1092    589   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1093    590   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1094    591   
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
 1095    592   
new file mode 100644
 1096    593   
index 0000000..125c1f9
 1097         -
-- /dev/null
         594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1098    595   
@@ -0,0 +1,9 @@
         596  +
GET
         597  +
/
         598  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host%3Bmy-header1%3Bmy-header2
         599  +
host:example.amazonaws.com
         600  +
my-header1:value1
         601  +
my-header2:"a b c"
         602  +
         603  +
host;my-header1;my-header2
         604  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1099    605   
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
 1100    606   
new file mode 100644
 1101    607   
index 0000000..17007a8
 1102         -
-- /dev/null
         608  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1103    609   
@@ -0,0 +1 @@
         610  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1104    611   
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
 1105    612   
new file mode 100644
 1106    613   
index 0000000..e519fd9
 1107         -
-- /dev/null
         614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1108    615   
@@ -0,0 +1,5 @@
         616  +
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
         617  +
Host:example.amazonaws.com
         618  +
My-Header1: value1
         619  +
My-Header2: "a   b   c"
         620  +
 1109    621   
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
 1110    622   
new file mode 100644
 1111    623   
index 0000000..6b4b781
 1112         -
-- /dev/null
         624  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1113    625   
@@ -0,0 +1,4 @@
         626  +
AWS4-HMAC-SHA256
         627  +
20150830T123600Z
         628  +
20150830/us-east-1/service/aws4_request
         629  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1114    630   
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
 1115    631   
similarity index 100%
 1116    632   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1117    633   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1118    634   
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
 1119    635   
new file mode 100644
 1120    636   
index 0000000..0468d80
 1121         -
-- /dev/null
         637  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1122    638   
@@ -0,0 +1,12 @@
         639  +
{
         640  +
    "credentials": {
         641  +
        "access_key_id": "AKIDEXAMPLE",
         642  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         643  +
    },
         644  +
    "expiration_in_seconds": 3600,
         645  +
    "normalize": true,
         646  +
    "region": "us-east-1",
         647  +
    "service": "service",
         648  +
    "sign_body": false,
         649  +
    "timestamp": "2015-08-30T12:36:00Z"
         650  +
}
              \
 No newline at end of file
 1123    651   
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
 1124    652   
similarity index 100%
 1125    653   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1126    654   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1127    655   
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
 1128    656   
new file mode 100644
 1129    657   
index 0000000..87f295f
 1130         -
-- /dev/null
         658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1131    659   
@@ -0,0 +1 @@
         660  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1132    661   
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
 1133    662   
new file mode 100644
 1134    663   
index 0000000..0de8327
 1135         -
-- /dev/null
         664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1136    665   
@@ -0,0 +1,5 @@
         666  +
GET /example/.. HTTP/1.1
         667  +
Host:example.amazonaws.com
         668  +
X-Amz-Date:20150830T123600Z
         669  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         670  +
 1137    671   
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
 1138    672   
similarity index 100%
 1139    673   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1140    674   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1141    675   
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
 1142    676   
new file mode 100644
 1143    677   
index 0000000..fb2420d
 1144         -
-- /dev/null
         678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1145    679   
@@ -0,0 +1,7 @@
         680  +
GET
         681  +
/
         682  +
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
         683  +
host:example.amazonaws.com
         684  +
         685  +
host
         686  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1146    687   
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
 1147    688   
new file mode 100644
 1148    689   
index 0000000..da5c905
 1149         -
-- /dev/null
         690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1150    691   
@@ -0,0 +1 @@
         692  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1151    693   
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
 1152    694   
new file mode 100644
 1153    695   
index 0000000..4329c98
 1154         -
-- /dev/null
         696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1155    697   
@@ -0,0 +1,3 @@
         698  +
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
         699  +
Host:example.amazonaws.com
         700  +
 1156    701   
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
 1157    702   
new file mode 100644
 1158    703   
index 0000000..d837e67
 1159         -
-- /dev/null
         704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1160    705   
@@ -0,0 +1,4 @@
         706  +
AWS4-HMAC-SHA256
         707  +
20150830T123600Z
         708  +
20150830/us-east-1/service/aws4_request
         709  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1161    710   
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
 1162    711   
similarity index 100%
 1163    712   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1164    713   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1165    714   
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
 1166    715   
new file mode 100644
 1167    716   
index 0000000..0468d80
 1168         -
-- /dev/null
         717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1169    718   
@@ -0,0 +1,12 @@
         719  +
{
         720  +
    "credentials": {
         721  +
        "access_key_id": "AKIDEXAMPLE",
         722  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         723  +
    },
         724  +
    "expiration_in_seconds": 3600,
         725  +
    "normalize": true,
         726  +
    "region": "us-east-1",
         727  +
    "service": "service",
         728  +
    "sign_body": false,
         729  +
    "timestamp": "2015-08-30T12:36:00Z"
         730  +
}
              \
 No newline at end of file
 1170    731   
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
 1171    732   
similarity index 100%
 1172    733   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1173    734   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1174    735   
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
 1175    736   
new file mode 100644
 1176    737   
index 0000000..87f295f
 1177         -
-- /dev/null
         738  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1178    739   
@@ -0,0 +1 @@
         740  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1179    741   
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
 1180    742   
new file mode 100644
 1181    743   
index 0000000..f9b3815
 1182         -
-- /dev/null
         744  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1183    745   
@@ -0,0 +1,5 @@
         746  +
GET /example1/example2/../.. HTTP/1.1
         747  +
Host:example.amazonaws.com
         748  +
X-Amz-Date:20150830T123600Z
         749  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         750  +
 1184    751   
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
 1185    752   
similarity index 100%
 1186    753   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1187    754   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1188    755   
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
 1189    756   
new file mode 100644
 1190    757   
index 0000000..fb2420d
 1191         -
-- /dev/null
         758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1192    759   
@@ -0,0 +1,7 @@
         760  +
GET
         761  +
/
         762  +
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
         763  +
host:example.amazonaws.com
         764  +
         765  +
host
         766  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1193    767   
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
 1194    768   
new file mode 100644
 1195    769   
index 0000000..da5c905
 1196         -
-- /dev/null
         770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1197    771   
@@ -0,0 +1 @@
         772  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1198    773   
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
 1199    774   
new file mode 100644
 1200    775   
index 0000000..b2988b7
 1201         -
-- /dev/null
         776  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1202    777   
@@ -0,0 +1,3 @@
         778  +
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
         779  +
Host:example.amazonaws.com
         780  +
 1203    781   
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
 1204    782   
new file mode 100644
 1205    783   
index 0000000..d837e67
 1206         -
-- /dev/null
         784  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1207    785   
@@ -0,0 +1,4 @@
         786  +
AWS4-HMAC-SHA256
         787  +
20150830T123600Z
         788  +
20150830/us-east-1/service/aws4_request
         789  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1208    790   
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
 1209    791   
similarity index 100%
 1210    792   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1211    793   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1212    794   
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
 1213    795   
similarity index 99%
 1214    796   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1215    797   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1216    798   
index afe367b..7bee5c7 100644
 1217    799   
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
 1218    800   
similarity index 82%
 1219    801   
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
 1220    802   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1221    803   
index 36c3cdf..6919c44 100644
 1222         -
-- 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
         804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1223    805   
@@ -1,8 +1,8 @@
 1224    806   
GET
 1225         -
/
 1226         -
Param1=Value1&Param1=value2
         807  +
/example1/example2/../..
         808  +
 1227    809   
host:example.amazonaws.com
 1228    810   
x-amz-date:20150830T123600Z
 1229    811   
 1230    812   
host;x-amz-date
 1231    813   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1232    814   
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
 1233    815   
new file mode 100644
 1234    816   
index 0000000..4092d83
 1235         -
-- /dev/null
         817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1236    818   
@@ -0,0 +1 @@
         819  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1237    820   
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
 1238    821   
new file mode 100644
 1239    822   
index 0000000..e731b35
 1240         -
-- /dev/null
         823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1241    824   
@@ -0,0 +1,5 @@
         825  +
GET /example1/example2/../.. HTTP/1.1
         826  +
Host:example.amazonaws.com
         827  +
X-Amz-Date:20150830T123600Z
         828  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
         829  +
 1242    830   
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
 1243    831   
new file mode 100644
 1244    832   
index 0000000..4f45752
 1245         -
-- /dev/null
         833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1246    834   
@@ -0,0 +1,4 @@
         835  +
AWS4-HMAC-SHA256
         836  +
20150830T123600Z
         837  +
20150830/us-east-1/service/aws4_request
         838  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1247    839   
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
 1248    840   
new file mode 100644
 1249    841   
index 0000000..e1fb07d
 1250         -
-- /dev/null
         842  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1251    843   
@@ -0,0 +1,7 @@
         844  +
GET
         845  +
/example1/example2/../..
         846  +
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
         847  +
host:example.amazonaws.com
         848  +
         849  +
host
         850  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1252    851   
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
 1253    852   
new file mode 100644
 1254    853   
index 0000000..8ac31d7
 1255         -
-- /dev/null
         854  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1256    855   
@@ -0,0 +1 @@
         856  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1257    857   
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
 1258    858   
new file mode 100644
 1259    859   
index 0000000..ac074f9
 1260         -
-- /dev/null
         860  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1261    861   
@@ -0,0 +1,3 @@
         862  +
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
         863  +
Host:example.amazonaws.com
         864  +
 1262    865   
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
 1263    866   
new file mode 100644
 1264    867   
index 0000000..8dcb6ff
 1265         -
-- /dev/null
         868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1266    869   
@@ -0,0 +1,4 @@
         870  +
AWS4-HMAC-SHA256
         871  +
20150830T123600Z
         872  +
20150830/us-east-1/service/aws4_request
         873  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1267    874   
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
 1268    875   
similarity index 100%
 1269    876   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1270    877   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1271    878   
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
 1272    879   
similarity index 99%
 1273    880   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1274    881   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1275    882   
index afe367b..7bee5c7 100644
 1276    883   
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
 1277    884   
similarity index 82%
 1278    885   
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
 1279    886   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1280    887   
index 26898eb..f640bc2 100644
 1281         -
-- 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
         888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1282    889   
@@ -1,8 +1,8 @@
 1283    890   
GET
 1284         -
/
 1285         -
Param1=value1&Param1=value2
         891  +
/example/..
         892  +
 1286    893   
host:example.amazonaws.com
 1287    894   
x-amz-date:20150830T123600Z
 1288    895   
 1289    896   
host;x-amz-date
 1290    897   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1291    898   
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
 1292    899   
new file mode 100644
 1293    900   
index 0000000..d957303
 1294         -
-- /dev/null
         901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1295    902   
@@ -0,0 +1 @@
         903  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1296    904   
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
 1297    905   
new file mode 100644
 1298    906   
index 0000000..4f42ffc
 1299         -
-- /dev/null
         907  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1300    908   
@@ -0,0 +1,5 @@
         909  +
GET /example/.. HTTP/1.1
         910  +
Host:example.amazonaws.com
         911  +
X-Amz-Date:20150830T123600Z
         912  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
         913  +
 1301    914   
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
 1302    915   
new file mode 100644
 1303    916   
index 0000000..ca54bda
 1304         -
-- /dev/null
         917  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1305    918   
@@ -0,0 +1,4 @@
         919  +
AWS4-HMAC-SHA256
         920  +
20150830T123600Z
         921  +
20150830/us-east-1/service/aws4_request
         922  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1306    923   
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
 1307    924   
new file mode 100644
 1308    925   
index 0000000..dc80036
 1309         -
-- /dev/null
         926  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1310    927   
@@ -0,0 +1,7 @@
         928  +
GET
         929  +
/example/..
         930  +
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
         931  +
host:example.amazonaws.com
         932  +
         933  +
host
         934  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1311    935   
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
 1312    936   
new file mode 100644
 1313    937   
index 0000000..dfa0437
 1314         -
-- /dev/null
         938  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1315    939   
@@ -0,0 +1 @@
         940  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1316    941   
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
 1317    942   
new file mode 100644
 1318    943   
index 0000000..98367b1
 1319         -
-- /dev/null
         944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1320    945   
@@ -0,0 +1,3 @@
         946  +
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
         947  +
Host:example.amazonaws.com
         948  +
 1321    949   
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
 1322    950   
new file mode 100644
 1323    951   
index 0000000..f65dd66
 1324         -
-- /dev/null
         952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1325    953   
@@ -0,0 +1,4 @@
         954  +
AWS4-HMAC-SHA256
         955  +
20150830T123600Z
         956  +
20150830/us-east-1/service/aws4_request
         957  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1326    958   
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
 1327    959   
similarity index 100%
 1328    960   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1329    961   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1330    962   
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
 1331    963   
new file mode 100644
 1332    964   
index 0000000..0468d80
 1333         -
-- /dev/null
         965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1334    966   
@@ -0,0 +1,12 @@
         967  +
{
         968  +
    "credentials": {
         969  +
        "access_key_id": "AKIDEXAMPLE",
         970  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         971  +
    },
         972  +
    "expiration_in_seconds": 3600,
         973  +
    "normalize": true,
         974  +
    "region": "us-east-1",
         975  +
    "service": "service",
         976  +
    "sign_body": false,
         977  +
    "timestamp": "2015-08-30T12:36:00Z"
         978  +
}
              \
 No newline at end of file
 1335    979   
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
 1336    980   
similarity index 100%
 1337    981   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1338    982   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1339    983   
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
 1340    984   
new file mode 100644
 1341    985   
index 0000000..87f295f
 1342         -
-- /dev/null
         986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1343    987   
@@ -0,0 +1 @@
         988  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1344    989   
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
 1345    990   
new file mode 100644
 1346    991   
index 0000000..99c8eeb
 1347         -
-- /dev/null
         992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1348    993   
@@ -0,0 +1,5 @@
         994  +
GET /./ HTTP/1.1
         995  +
Host:example.amazonaws.com
         996  +
X-Amz-Date:20150830T123600Z
         997  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         998  +
 1349    999   
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
 1350   1000   
similarity index 100%
 1351   1001   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1352   1002   
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
 1353   1003   
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
 1354   1004   
new file mode 100644
 1355   1005   
index 0000000..fb2420d
 1356         -
-- /dev/null
        1006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1357   1007   
@@ -0,0 +1,7 @@
        1008  +
GET
        1009  +
/
        1010  +
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
        1011  +
host:example.amazonaws.com
        1012  +
        1013  +
host
        1014  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1358   1015   
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
 1359   1016   
new file mode 100644
 1360   1017   
index 0000000..da5c905
 1361         -
-- /dev/null
        1018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1362   1019   
@@ -0,0 +1 @@
        1020  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1363   1021   
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
 1364   1022   
new file mode 100644
 1365   1023   
index 0000000..2e47f69
 1366         -
-- /dev/null
        1024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1367   1025   
@@ -0,0 +1,3 @@
        1026  +
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
        1027  +
Host:example.amazonaws.com
        1028  +
 1368   1029   
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
 1369   1030   
new file mode 100644
 1370   1031   
index 0000000..d837e67
 1371         -
-- /dev/null
        1032  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1372   1033   
@@ -0,0 +1,4 @@
        1034  +
AWS4-HMAC-SHA256
        1035  +
20150830T123600Z
        1036  +
20150830/us-east-1/service/aws4_request
        1037  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1373   1038   
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
 1374   1039   
similarity index 100%
 1375   1040   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1376   1041   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1377   1042   
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
 1378   1043   
similarity index 99%
 1379   1044   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1380   1045   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1381   1046   
index afe367b..7bee5c7 100644
 1382   1047   
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
 1383   1048   
new file mode 100644
 1384   1049   
index 0000000..5159048
 1385         -
-- /dev/null
        1050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1386   1051   
@@ -0,0 +1,8 @@
        1052  +
GET
        1053  +
/./
        1054  +
        1055  +
host:example.amazonaws.com
        1056  +
x-amz-date:20150830T123600Z
        1057  +
        1058  +
host;x-amz-date
        1059  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1387   1060   
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
 1388   1061   
new file mode 100644
 1389   1062   
index 0000000..b49ff0e
 1390         -
-- /dev/null
        1063  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1391   1064   
@@ -0,0 +1 @@
        1065  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1392   1066   
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
 1393   1067   
new file mode 100644
 1394   1068   
index 0000000..aeb1ffa
 1395         -
-- /dev/null
        1069  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1396   1070   
@@ -0,0 +1,5 @@
        1071  +
GET /./ HTTP/1.1
        1072  +
Host:example.amazonaws.com
        1073  +
X-Amz-Date:20150830T123600Z
        1074  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1075  +
 1397   1076   
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
 1398   1077   
new file mode 100644
 1399   1078   
index 0000000..b7d8caf
 1400         -
-- /dev/null
        1079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1401   1080   
@@ -0,0 +1,4 @@
        1081  +
AWS4-HMAC-SHA256
        1082  +
20150830T123600Z
        1083  +
20150830/us-east-1/service/aws4_request
        1084  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1402   1085   
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
 1403   1086   
new file mode 100644
 1404   1087   
index 0000000..d4e029e
 1405         -
-- /dev/null
        1088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1406   1089   
@@ -0,0 +1,7 @@
        1090  +
GET
        1091  +
/./
        1092  +
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
        1093  +
host:example.amazonaws.com
        1094  +
        1095  +
host
        1096  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1407   1097   
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
 1408   1098   
new file mode 100644
 1409   1099   
index 0000000..fe8f4cc
 1410         -
-- /dev/null
        1100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1411   1101   
@@ -0,0 +1 @@
        1102  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1412   1103   
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
 1413   1104   
new file mode 100644
 1414   1105   
index 0000000..dcc4fc4
 1415         -
-- /dev/null
        1106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1416   1107   
@@ -0,0 +1,3 @@
        1108  +
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
        1109  +
Host:example.amazonaws.com
        1110  +
 1417   1111   
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
 1418   1112   
new file mode 100644
 1419   1113   
index 0000000..5fb3ada
 1420         -
-- /dev/null
        1114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1421   1115   
@@ -0,0 +1,4 @@
        1116  +
AWS4-HMAC-SHA256
        1117  +
20150830T123600Z
        1118  +
20150830/us-east-1/service/aws4_request
        1119  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1422   1120   
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
 1423   1121   
similarity index 100%
 1424   1122   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1425   1123   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1426   1124   
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
 1427   1125   
new file mode 100644
 1428   1126   
index 0000000..0468d80
 1429         -
-- /dev/null
        1127  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1430   1128   
@@ -0,0 +1,12 @@
        1129  +
{
        1130  +
    "credentials": {
        1131  +
        "access_key_id": "AKIDEXAMPLE",
        1132  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1133  +
    },
        1134  +
    "expiration_in_seconds": 3600,
        1135  +
    "normalize": true,
        1136  +
    "region": "us-east-1",
        1137  +
    "service": "service",
        1138  +
    "sign_body": false,
        1139  +
    "timestamp": "2015-08-30T12:36:00Z"
        1140  +
}
              \
 No newline at end of file
 1431   1141   
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
 1432   1142   
similarity index 100%
 1433   1143   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1434   1144   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1435   1145   
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
 1436   1146   
new file mode 100644
 1437   1147   
index 0000000..87f295f
 1438         -
-- /dev/null
        1148  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1439   1149   
@@ -0,0 +1 @@
        1150  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1440   1151   
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
 1441   1152   
new file mode 100644
 1442   1153   
index 0000000..b91087b
 1443         -
-- /dev/null
        1154  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1444   1155   
@@ -0,0 +1,5 @@
        1156  +
GET // HTTP/1.1
        1157  +
Host:example.amazonaws.com
        1158  +
X-Amz-Date:20150830T123600Z
        1159  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1160  +
 1445   1161   
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
 1446   1162   
similarity index 100%
 1447   1163   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1448   1164   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1449   1165   
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
 1450   1166   
new file mode 100644
 1451   1167   
index 0000000..fb2420d
 1452         -
-- /dev/null
        1168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1453   1169   
@@ -0,0 +1,7 @@
        1170  +
GET
        1171  +
/
        1172  +
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
        1173  +
host:example.amazonaws.com
        1174  +
        1175  +
host
        1176  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1454   1177   
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
 1455   1178   
new file mode 100644
 1456   1179   
index 0000000..da5c905
 1457         -
-- /dev/null
        1180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1458   1181   
@@ -0,0 +1 @@
        1182  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1459   1183   
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
 1460   1184   
new file mode 100644
 1461   1185   
index 0000000..0290ba4
 1462         -
-- /dev/null
        1186  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1463   1187   
@@ -0,0 +1,3 @@
        1188  +
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
        1189  +
Host:example.amazonaws.com
        1190  +
 1464   1191   
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
 1465   1192   
new file mode 100644
 1466   1193   
index 0000000..d837e67
 1467         -
-- /dev/null
        1194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1468   1195   
@@ -0,0 +1,4 @@
        1196  +
AWS4-HMAC-SHA256
        1197  +
20150830T123600Z
        1198  +
20150830/us-east-1/service/aws4_request
        1199  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1469   1200   
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
 1470   1201   
similarity index 100%
 1471   1202   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1472   1203   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1473   1204   
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
 1474   1205   
new file mode 100644
 1475   1206   
index 0000000..0468d80
 1476         -
-- /dev/null
        1207  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1477   1208   
@@ -0,0 +1,12 @@
        1209  +
{
        1210  +
    "credentials": {
        1211  +
        "access_key_id": "AKIDEXAMPLE",
        1212  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1213  +
    },
        1214  +
    "expiration_in_seconds": 3600,
        1215  +
    "normalize": true,
        1216  +
    "region": "us-east-1",
        1217  +
    "service": "service",
        1218  +
    "sign_body": false,
        1219  +
    "timestamp": "2015-08-30T12:36:00Z"
        1220  +
}
              \
 No newline at end of file
 1478   1221   
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
 1479   1222   
similarity index 100%
 1480   1223   
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
 1481   1224   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1482   1225   
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
 1483   1226   
new file mode 100644
 1484   1227   
index 0000000..8f892bf
 1485         -
-- /dev/null
        1228  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1486   1229   
@@ -0,0 +1 @@
        1230  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1487   1231   
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
 1488   1232   
new file mode 100644
 1489   1233   
index 0000000..2a1895c
 1490         -
-- /dev/null
        1234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1491   1235   
@@ -0,0 +1,5 @@
        1236  +
GET /./example HTTP/1.1
        1237  +
Host:example.amazonaws.com
        1238  +
X-Amz-Date:20150830T123600Z
        1239  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1240  +
 1492   1241   
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
 1493   1242   
similarity index 100%
 1494   1243   
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
 1495   1244   
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
 1496   1245   
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
 1497   1246   
new file mode 100644
 1498   1247   
index 0000000..99dfc2a
 1499         -
-- /dev/null
        1248  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1500   1249   
@@ -0,0 +1,7 @@
        1250  +
GET
        1251  +
/example
        1252  +
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
        1253  +
host:example.amazonaws.com
        1254  +
        1255  +
host
        1256  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1501   1257   
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
 1502   1258   
new file mode 100644
 1503   1259   
index 0000000..fcd7a17
 1504         -
-- /dev/null
        1260  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1505   1261   
@@ -0,0 +1 @@
        1262  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1506   1263   
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
 1507   1264   
new file mode 100644
 1508   1265   
index 0000000..f671de2
 1509         -
-- /dev/null
        1266  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1510   1267   
@@ -0,0 +1,3 @@
        1268  +
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
        1269  +
Host:example.amazonaws.com
        1270  +
 1511   1271   
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
 1512   1272   
new file mode 100644
 1513   1273   
index 0000000..f8456dc
 1514         -
-- /dev/null
        1274  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1515   1275   
@@ -0,0 +1,4 @@
        1276  +
AWS4-HMAC-SHA256
        1277  +
20150830T123600Z
        1278  +
20150830/us-east-1/service/aws4_request
        1279  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1516   1280   
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
 1517   1281   
similarity index 100%
 1518   1282   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1519   1283   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1520   1284   
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
 1521   1285   
similarity index 99%
 1522   1286   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1523   1287   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1524   1288   
index afe367b..7bee5c7 100644
 1525   1289   
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
 1526   1290   
new file mode 100644
 1527   1291   
index 0000000..36698c7
 1528         -
-- /dev/null
        1292  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1529   1293   
@@ -0,0 +1,8 @@
        1294  +
GET
        1295  +
/./example
        1296  +
        1297  +
host:example.amazonaws.com
        1298  +
x-amz-date:20150830T123600Z
        1299  +
        1300  +
host;x-amz-date
        1301  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1530   1302   
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
 1531   1303   
new file mode 100644
 1532   1304   
index 0000000..4a4b8f2
 1533         -
-- /dev/null
        1305  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1534   1306   
@@ -0,0 +1 @@
        1307  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1535   1308   
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
 1536   1309   
new file mode 100644
 1537   1310   
index 0000000..d462bcd
 1538         -
-- /dev/null
        1311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1539   1312   
@@ -0,0 +1,5 @@
        1313  +
GET /./example HTTP/1.1
        1314  +
Host:example.amazonaws.com
        1315  +
X-Amz-Date:20150830T123600Z
        1316  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1317  +
 1540   1318   
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
 1541   1319   
new file mode 100644
 1542   1320   
index 0000000..8be78c9
 1543         -
-- /dev/null
        1321  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1544   1322   
@@ -0,0 +1,4 @@
        1323  +
AWS4-HMAC-SHA256
        1324  +
20150830T123600Z
        1325  +
20150830/us-east-1/service/aws4_request
        1326  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1545   1327   
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
 1546   1328   
new file mode 100644
 1547   1329   
index 0000000..fe1103c
 1548         -
-- /dev/null
        1330  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1549   1331   
@@ -0,0 +1,7 @@
        1332  +
GET
        1333  +
/./example
        1334  +
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
        1335  +
host:example.amazonaws.com
        1336  +
        1337  +
host
        1338  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1550   1339   
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
 1551   1340   
new file mode 100644
 1552   1341   
index 0000000..ce80762
 1553         -
-- /dev/null
        1342  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1554   1343   
@@ -0,0 +1 @@
        1344  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1555   1345   
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
 1556   1346   
new file mode 100644
 1557   1347   
index 0000000..30841a6
 1558         -
-- /dev/null
        1348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1559   1349   
@@ -0,0 +1,3 @@
        1350  +
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
        1351  +
Host:example.amazonaws.com
        1352  +
 1560   1353   
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
 1561   1354   
new file mode 100644
 1562   1355   
index 0000000..5c66509
 1563         -
-- /dev/null
        1356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1564   1357   
@@ -0,0 +1,4 @@
        1358  +
AWS4-HMAC-SHA256
        1359  +
20150830T123600Z
        1360  +
20150830/us-east-1/service/aws4_request
        1361  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1565   1362   
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
 1566   1363   
similarity index 100%
 1567   1364   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1568   1365   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1569   1366   
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
 1570   1367   
new file mode 100644
 1571   1368   
index 0000000..7bee5c7
 1572         -
-- /dev/null
        1369  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1573   1370   
@@ -0,0 +1,12 @@
        1371  +
{
        1372  +
    "credentials": {
        1373  +
        "access_key_id": "AKIDEXAMPLE",
        1374  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1375  +
    },
        1376  +
    "expiration_in_seconds": 3600,
        1377  +
    "normalize": false,
        1378  +
    "region": "us-east-1",
        1379  +
    "service": "service",
        1380  +
    "sign_body": false,
        1381  +
    "timestamp": "2015-08-30T12:36:00Z"
        1382  +
}
              \
 No newline at end of file
 1574   1383   
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
 1575   1384   
new file mode 100644
 1576   1385   
index 0000000..5860c8a
 1577         -
-- /dev/null
        1386  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1578   1387   
@@ -0,0 +1,8 @@
        1388  +
GET
        1389  +
//
        1390  +
        1391  +
host:example.amazonaws.com
        1392  +
x-amz-date:20150830T123600Z
        1393  +
        1394  +
host;x-amz-date
        1395  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1579   1396   
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
 1580   1397   
new file mode 100644
 1581   1398   
index 0000000..8310471
 1582         -
-- /dev/null
        1399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1583   1400   
@@ -0,0 +1 @@
        1401  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1584   1402   
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
 1585   1403   
new file mode 100644
 1586   1404   
index 0000000..2a7afef
 1587         -
-- /dev/null
        1405  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1588   1406   
@@ -0,0 +1,5 @@
        1407  +
GET // HTTP/1.1
        1408  +
Host:example.amazonaws.com
        1409  +
X-Amz-Date:20150830T123600Z
        1410  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1411  +
 1589   1412   
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
 1590   1413   
new file mode 100644
 1591   1414   
index 0000000..06059dd
 1592         -
-- /dev/null
        1415  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1593   1416   
@@ -0,0 +1,4 @@
        1417  +
AWS4-HMAC-SHA256
        1418  +
20150830T123600Z
        1419  +
20150830/us-east-1/service/aws4_request
        1420  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1594   1421   
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
 1595   1422   
new file mode 100644
 1596   1423   
index 0000000..6d63aef
 1597         -
-- /dev/null
        1424  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1598   1425   
@@ -0,0 +1,7 @@
        1426  +
GET
        1427  +
//
        1428  +
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
        1429  +
host:example.amazonaws.com
        1430  +
        1431  +
host
        1432  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1599   1433   
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
 1600   1434   
new file mode 100644
 1601   1435   
index 0000000..e5b7b6c
 1602         -
-- /dev/null
        1436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1603   1437   
@@ -0,0 +1 @@
        1438  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1604   1439   
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
 1605   1440   
new file mode 100644
 1606   1441   
index 0000000..46fe3fd
 1607         -
-- /dev/null
        1442  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1608   1443   
@@ -0,0 +1,3 @@
        1444  +
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
        1445  +
Host:example.amazonaws.com
        1446  +
 1609   1447   
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
 1610   1448   
new file mode 100644
 1611   1449   
index 0000000..ea79940
 1612         -
-- /dev/null
        1450  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1613   1451   
@@ -0,0 +1,4 @@
        1452  +
AWS4-HMAC-SHA256
        1453  +
20150830T123600Z
        1454  +
20150830/us-east-1/service/aws4_request
        1455  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1614   1456   
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
 1615   1457   
similarity index 100%
 1616   1458   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1617   1459   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1618   1460   
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
 1619   1461   
new file mode 100644
 1620   1462   
index 0000000..0468d80
 1621         -
-- /dev/null
        1463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1622   1464   
@@ -0,0 +1,12 @@
        1465  +
{
        1466  +
    "credentials": {
        1467  +
        "access_key_id": "AKIDEXAMPLE",
        1468  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1469  +
    },
        1470  +
    "expiration_in_seconds": 3600,
        1471  +
    "normalize": true,
        1472  +
    "region": "us-east-1",
        1473  +
    "service": "service",
        1474  +
    "sign_body": false,
        1475  +
    "timestamp": "2015-08-30T12:36:00Z"
        1476  +
}
              \
 No newline at end of file
 1623   1477   
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
 1624   1478   
similarity index 100%
 1625   1479   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1626   1480   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1627   1481   
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
 1628   1482   
new file mode 100644
 1629   1483   
index 0000000..71c7bac
 1630         -
-- /dev/null
        1484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1631   1485   
@@ -0,0 +1 @@
        1486  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1632   1487   
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
 1633   1488   
new file mode 100644
 1634   1489   
index 0000000..0add1f1
 1635         -
-- /dev/null
        1490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1636   1491   
@@ -0,0 +1,5 @@
        1492  +
GET //example// HTTP/1.1
        1493  +
Host:example.amazonaws.com
        1494  +
X-Amz-Date:20150830T123600Z
        1495  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1496  +
 1637   1497   
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
 1638   1498   
similarity index 100%
 1639   1499   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1640   1500   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1641   1501   
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
 1642   1502   
new file mode 100644
 1643   1503   
index 0000000..ce72510
 1644         -
-- /dev/null
        1504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1645   1505   
@@ -0,0 +1,7 @@
        1506  +
GET
        1507  +
/example/
        1508  +
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
        1509  +
host:example.amazonaws.com
        1510  +
        1511  +
host
        1512  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1646   1513   
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
 1647   1514   
new file mode 100644
 1648   1515   
index 0000000..265f387
 1649         -
-- /dev/null
        1516  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1650   1517   
@@ -0,0 +1 @@
        1518  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1651   1519   
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
 1652   1520   
new file mode 100644
 1653   1521   
index 0000000..e1fcb2e
 1654         -
-- /dev/null
        1522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1655   1523   
@@ -0,0 +1,3 @@
        1524  +
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
        1525  +
Host:example.amazonaws.com
        1526  +
 1656   1527   
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
 1657   1528   
new file mode 100644
 1658   1529   
index 0000000..a14de61
 1659         -
-- /dev/null
        1530  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1660   1531   
@@ -0,0 +1,4 @@
        1532  +
AWS4-HMAC-SHA256
        1533  +
20150830T123600Z
        1534  +
20150830/us-east-1/service/aws4_request
        1535  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1661   1536   
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
 1662   1537   
similarity index 100%
 1663   1538   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1664   1539   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1665   1540   
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
 1666   1541   
new file mode 100644
 1667   1542   
index 0000000..7bee5c7
 1668         -
-- /dev/null
        1543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1669   1544   
@@ -0,0 +1,12 @@
        1545  +
{
        1546  +
    "credentials": {
        1547  +
        "access_key_id": "AKIDEXAMPLE",
        1548  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1549  +
    },
        1550  +
    "expiration_in_seconds": 3600,
        1551  +
    "normalize": false,
        1552  +
    "region": "us-east-1",
        1553  +
    "service": "service",
        1554  +
    "sign_body": false,
        1555  +
    "timestamp": "2015-08-30T12:36:00Z"
        1556  +
}
              \
 No newline at end of file
 1670   1557   
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
 1671   1558   
new file mode 100644
 1672   1559   
index 0000000..dfffaaf
 1673         -
-- /dev/null
        1560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1674   1561   
@@ -0,0 +1,8 @@
        1562  +
GET
        1563  +
//example//
        1564  +
        1565  +
host:example.amazonaws.com
        1566  +
x-amz-date:20150830T123600Z
        1567  +
        1568  +
host;x-amz-date
        1569  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1675   1570   
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
 1676   1571   
new file mode 100644
 1677   1572   
index 0000000..edbcc0d
 1678         -
-- /dev/null
        1573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1679   1574   
@@ -0,0 +1 @@
        1575  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1680   1576   
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
 1681   1577   
new file mode 100644
 1682   1578   
index 0000000..4cc12dd
 1683         -
-- /dev/null
        1579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 1684   1580   
@@ -0,0 +1,5 @@
        1581  +
GET //example// HTTP/1.1
        1582  +
Host:example.amazonaws.com
        1583  +
X-Amz-Date:20150830T123600Z
        1584  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1585  +
 1685   1586   
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
 1686   1587   
new file mode 100644
 1687   1588   
index 0000000..3eba390
 1688         -
-- /dev/null
        1589  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 1689   1590   
@@ -0,0 +1,4 @@
        1591  +
AWS4-HMAC-SHA256
        1592  +
20150830T123600Z
        1593  +
20150830/us-east-1/service/aws4_request
        1594  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 1690   1595   
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
 1691   1596   
new file mode 100644
 1692   1597   
index 0000000..f7844e3
 1693         -
-- /dev/null
        1598  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 1694   1599   
@@ -0,0 +1,7 @@
        1600  +
GET
        1601  +
//example//
        1602  +
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
        1603  +
host:example.amazonaws.com
        1604  +
        1605  +
host
        1606  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1695   1607   
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
 1696   1608   
new file mode 100644
 1697   1609   
index 0000000..a8d6b96
 1698         -
-- /dev/null
        1610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 1699   1611   
@@ -0,0 +1 @@
        1612  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 1700   1613   
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
 1701   1614   
new file mode 100644
 1702   1615   
index 0000000..a8322c6
 1703         -
-- /dev/null
        1616  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 1704   1617   
@@ -0,0 +1,3 @@
        1618  +
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
        1619  +
Host:example.amazonaws.com
        1620  +
 1705   1621   
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
 1706   1622   
new file mode 100644
 1707   1623   
index 0000000..068724d
 1708         -
-- /dev/null
        1624  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 1709   1625   
@@ -0,0 +1,4 @@
        1626  +
AWS4-HMAC-SHA256
        1627  +
20150830T123600Z
        1628  +
20150830/us-east-1/service/aws4_request
        1629  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 1710   1630   
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
 1711   1631   
similarity index 100%
 1712   1632   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 1713   1633   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 1714   1634   
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
 1715   1635   
new file mode 100644
 1716   1636   
index 0000000..0468d80
 1717         -
-- /dev/null
        1637  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 1718   1638   
@@ -0,0 +1,12 @@
        1639  +
{
        1640  +
    "credentials": {
        1641  +
        "access_key_id": "AKIDEXAMPLE",
        1642  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1643  +
    },
        1644  +
    "expiration_in_seconds": 3600,
        1645  +
    "normalize": true,
        1646  +
    "region": "us-east-1",
        1647  +
    "service": "service",
        1648  +
    "sign_body": false,
        1649  +
    "timestamp": "2015-08-30T12:36:00Z"
        1650  +
}
              \
 No newline at end of file
 1719   1651   
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
 1720   1652   
similarity index 100%
 1721   1653   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 1722   1654   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 1723   1655   
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
 1724   1656   
new file mode 100644
 1725   1657   
index 0000000..f63892b
 1726         -
-- /dev/null
        1658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 1727   1659   
@@ -0,0 +1 @@
        1660  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1728   1661   
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
 1729   1662   
new file mode 100644
 1730   1663   
index 0000000..19cd5cb
 1731         -
-- /dev/null
        1664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 1732   1665   
@@ -0,0 +1,5 @@
        1666  +
GET /example space/ HTTP/1.1
        1667  +
Host:example.amazonaws.com
        1668  +
X-Amz-Date:20150830T123600Z
        1669  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1670  +
 1733   1671   
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
 1734   1672   
similarity index 100%
 1735   1673   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 1736   1674   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 1737   1675   
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
 1738   1676   
new file mode 100644
 1739   1677   
index 0000000..fa3d3e2
 1740         -
-- /dev/null
        1678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 1741   1679   
@@ -0,0 +1,7 @@
        1680  +
GET
        1681  +
/example%20space/
        1682  +
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
        1683  +
host:example.amazonaws.com
        1684  +
        1685  +
host
        1686  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1742   1687   
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
 1743   1688   
new file mode 100644
 1744   1689   
index 0000000..5b2e204
 1745         -
-- /dev/null
        1690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 1746   1691   
@@ -0,0 +1 @@
        1692  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1747   1693   
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
 1748   1694   
new file mode 100644
 1749   1695   
index 0000000..93ca1d0
 1750         -
-- /dev/null
        1696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 1751   1697   
@@ -0,0 +1,3 @@
        1698  +
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
        1699  +
Host:example.amazonaws.com
        1700  +
 1752   1701   
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
 1753   1702   
new file mode 100644
 1754   1703   
index 0000000..b4cb789
 1755         -
-- /dev/null
        1704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 1756   1705   
@@ -0,0 +1,4 @@
        1706  +
AWS4-HMAC-SHA256
        1707  +
20150830T123600Z
        1708  +
20150830/us-east-1/service/aws4_request
        1709  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1757   1710   
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
 1758   1711   
new file mode 100644
 1759   1712   
index 0000000..860a277
 1760         -
-- /dev/null
        1713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 1761   1714   
@@ -0,0 +1,2 @@
        1715  +
GET /example%20space/ HTTP/1.1
        1716  +
Host:example.amazonaws.com
 1762   1717   
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
 1763   1718   
new file mode 100644
 1764   1719   
index 0000000..7bee5c7
 1765         -
-- /dev/null
        1720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 1766   1721   
@@ -0,0 +1,12 @@
        1722  +
{
        1723  +
    "credentials": {
        1724  +
        "access_key_id": "AKIDEXAMPLE",
        1725  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1726  +
    },
        1727  +
    "expiration_in_seconds": 3600,
        1728  +
    "normalize": false,
        1729  +
    "region": "us-east-1",
        1730  +
    "service": "service",
        1731  +
    "sign_body": false,
        1732  +
    "timestamp": "2015-08-30T12:36:00Z"
        1733  +
}
              \
 No newline at end of file
 1767   1734   
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
 1768   1735   
similarity index 66%
 1769   1736   
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
 1770   1737   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1771   1738   
index 71dc981..124a709 100644
 1772         -
-- 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
        1739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1773   1740   
@@ -1,9 +1,8 @@
 1774         -
POST
 1775         -
/
        1741  +
GET
        1742  +
/example%20space/
 1776   1743   
 1777         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 1778   1744   
host:example.amazonaws.com
 1779   1745   
x-amz-date:20150830T123600Z
 1780   1746   
 1781   1747   
host;x-amz-date
 1782   1748   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1783   1749   
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
 1784   1750   
new file mode 100644
 1785   1751   
index 0000000..f63892b
 1786         -
-- /dev/null
        1752  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 1787   1753   
@@ -0,0 +1 @@
        1754  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1788   1755   
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
 1789   1756   
new file mode 100644
 1790   1757   
index 0000000..19cd5cb
 1791         -
-- /dev/null
        1758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 1792   1759   
@@ -0,0 +1,5 @@
        1760  +
GET /example space/ HTTP/1.1
        1761  +
Host:example.amazonaws.com
        1762  +
X-Amz-Date:20150830T123600Z
        1763  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1764  +
 1793   1765   
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
 1794   1766   
new file mode 100644
 1795   1767   
index 0000000..a633f0c
 1796         -
-- /dev/null
        1768  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 1797   1769   
@@ -0,0 +1,4 @@
        1770  +
AWS4-HMAC-SHA256
        1771  +
20150830T123600Z
        1772  +
20150830/us-east-1/service/aws4_request
        1773  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 1798   1774   
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
 1799   1775   
new file mode 100644
 1800   1776   
index 0000000..fa3d3e2
 1801         -
-- /dev/null
        1777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 1802   1778   
@@ -0,0 +1,7 @@
        1779  +
GET
        1780  +
/example%20space/
        1781  +
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
        1782  +
host:example.amazonaws.com
        1783  +
        1784  +
host
        1785  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1803   1786   
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
 1804   1787   
new file mode 100644
 1805   1788   
index 0000000..5b2e204
 1806         -
-- /dev/null
        1789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 1807   1790   
@@ -0,0 +1 @@
        1791  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1808   1792   
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
 1809   1793   
new file mode 100644
 1810   1794   
index 0000000..93ca1d0
 1811         -
-- /dev/null
        1795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 1812   1796   
@@ -0,0 +1,3 @@
        1797  +
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
        1798  +
Host:example.amazonaws.com
        1799  +
 1813   1800   
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
 1814   1801   
new file mode 100644
 1815   1802   
index 0000000..b4cb789
 1816         -
-- /dev/null
        1803  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 1817   1804   
@@ -0,0 +1,4 @@
        1805  +
AWS4-HMAC-SHA256
        1806  +
20150830T123600Z
        1807  +
20150830/us-east-1/service/aws4_request
        1808  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1818   1809   
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
 1819   1810   
similarity index 67%
 1820   1811   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 1821   1812   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1822   1813   
index b7d5e8b..ab509ab 100644
 1823         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        1814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1824   1815   
@@ -1,3 +1,2 @@
 1825   1816   
GET /example space/ HTTP/1.1
 1826   1817   
Host:example.amazonaws.com
 1827         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1828   1818   
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
 1829   1819   
new file mode 100644
 1830   1820   
index 0000000..0468d80
 1831         -
-- /dev/null
        1821  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 1832   1822   
@@ -0,0 +1,12 @@
        1823  +
{
        1824  +
    "credentials": {
        1825  +
        "access_key_id": "AKIDEXAMPLE",
        1826  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1827  +
    },
        1828  +
    "expiration_in_seconds": 3600,
        1829  +
    "normalize": true,
        1830  +
    "region": "us-east-1",
        1831  +
    "service": "service",
        1832  +
    "sign_body": false,
        1833  +
    "timestamp": "2015-08-30T12:36:00Z"
        1834  +
}
              \
 No newline at end of file
 1833   1835   
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
 1834   1836   
similarity index 100%
 1835   1837   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 1836   1838   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 1837   1839   
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
 1838   1840   
new file mode 100644
 1839   1841   
index 0000000..e503354
 1840         -
-- /dev/null
        1842  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 1841   1843   
@@ -0,0 +1 @@
        1844  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 1842   1845   
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
 1843   1846   
new file mode 100644
 1844   1847   
index 0000000..4367892
 1845         -
-- /dev/null
        1848  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 1846   1849   
@@ -0,0 +1,5 @@
        1850  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        1851  +
Host:example.amazonaws.com
        1852  +
X-Amz-Date:20150830T123600Z
        1853  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        1854  +
 1847   1855   
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
 1848   1856   
similarity index 100%
 1849   1857   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 1850   1858   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 1851   1859   
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
 1852   1860   
new file mode 100644
 1853   1861   
index 0000000..d7f0696
 1854         -
-- /dev/null
        1862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 1855   1863   
@@ -0,0 +1,7 @@
        1864  +
GET
        1865  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        1866  +
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
        1867  +
host:example.amazonaws.com
        1868  +
        1869  +
host
        1870  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1856   1871   
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
 1857   1872   
new file mode 100644
 1858   1873   
index 0000000..509e972
 1859         -
-- /dev/null
        1874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 1860   1875   
@@ -0,0 +1 @@
        1876  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 1861   1877   
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
 1862   1878   
new file mode 100644
 1863   1879   
index 0000000..79aad36
 1864         -
-- /dev/null
        1880  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 1865   1881   
@@ -0,0 +1,3 @@
        1882  +
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
        1883  +
Host:example.amazonaws.com
        1884  +
 1866   1885   
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
 1867   1886   
new file mode 100644
 1868   1887   
index 0000000..e8068b3
 1869         -
-- /dev/null
        1888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 1870   1889   
@@ -0,0 +1,4 @@
        1890  +
AWS4-HMAC-SHA256
        1891  +
20150830T123600Z
        1892  +
20150830/us-east-1/service/aws4_request
        1893  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 1871   1894   
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
 1872   1895   
similarity index 100%
 1873   1896   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 1874   1897   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 1875   1898   
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
 1876   1899   
new file mode 100644
 1877   1900   
index 0000000..0468d80
 1878         -
-- /dev/null
        1901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 1879   1902   
@@ -0,0 +1,12 @@
        1903  +
{
        1904  +
    "credentials": {
        1905  +
        "access_key_id": "AKIDEXAMPLE",
        1906  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1907  +
    },
        1908  +
    "expiration_in_seconds": 3600,
        1909  +
    "normalize": true,
        1910  +
    "region": "us-east-1",
        1911  +
    "service": "service",
        1912  +
    "sign_body": false,
        1913  +
    "timestamp": "2015-08-30T12:36:00Z"
        1914  +
}
              \
 No newline at end of file
 1880   1915   
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
 1881   1916   
similarity index 100%
 1882   1917   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 1883   1918   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 1884   1919   
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
 1885   1920   
new file mode 100644
 1886   1921   
index 0000000..9a13676
 1887         -
-- /dev/null
        1922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 1888   1923   
@@ -0,0 +1 @@
        1924  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 1889   1925   
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
 1890   1926   
new file mode 100644
 1891   1927   
index 0000000..5aaf47c
 1892         -
-- /dev/null
        1928  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 1893   1929   
@@ -0,0 +1,5 @@
        1930  +
GET /ሴ HTTP/1.1
        1931  +
Host:example.amazonaws.com
        1932  +
X-Amz-Date:20150830T123600Z
        1933  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        1934  +
 1894   1935   
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
 1895   1936   
similarity index 100%
 1896   1937   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 1897   1938   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 1898   1939   
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
 1899   1940   
new file mode 100644
 1900   1941   
index 0000000..bdb77c9
 1901         -
-- /dev/null
        1942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 1902   1943   
@@ -0,0 +1,7 @@
        1944  +
GET
        1945  +
/%E1%88%B4
        1946  +
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
        1947  +
host:example.amazonaws.com
        1948  +
        1949  +
host
        1950  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1903   1951   
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
 1904   1952   
new file mode 100644
 1905   1953   
index 0000000..21342b3
 1906         -
-- /dev/null
        1954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 1907   1955   
@@ -0,0 +1 @@
        1956  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 1908   1957   
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
 1909   1958   
new file mode 100644
 1910   1959   
index 0000000..368c2ff
 1911         -
-- /dev/null
        1960  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 1912   1961   
@@ -0,0 +1,3 @@
        1962  +
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
        1963  +
Host:example.amazonaws.com
        1964  +
 1913   1965   
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
 1914   1966   
new file mode 100644
 1915   1967   
index 0000000..56b8fbf
 1916         -
-- /dev/null
        1968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 1917   1969   
@@ -0,0 +1,4 @@
        1970  +
AWS4-HMAC-SHA256
        1971  +
20150830T123600Z
        1972  +
20150830/us-east-1/service/aws4_request
        1973  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 1918   1974   
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
 1919   1975   
similarity index 62%
 1920   1976   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 1921   1977   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 1922   1978   
index da4808d..9e273f6 100644
 1923         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        1979  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 1924   1980   
@@ -1,3 +1,2 @@
 1925   1981   
GET /ሴ HTTP/1.1
 1926   1982   
Host:example.amazonaws.com
 1927         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1928   1983   
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
 1929   1984   
new file mode 100644
 1930   1985   
index 0000000..0468d80
 1931         -
-- /dev/null
        1986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 1932   1987   
@@ -0,0 +1,12 @@
        1988  +
{
        1989  +
    "credentials": {
        1990  +
        "access_key_id": "AKIDEXAMPLE",
        1991  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1992  +
    },
        1993  +
    "expiration_in_seconds": 3600,
        1994  +
    "normalize": true,
        1995  +
    "region": "us-east-1",
        1996  +
    "service": "service",
        1997  +
    "sign_body": false,
        1998  +
    "timestamp": "2015-08-30T12:36:00Z"
        1999  +
}
              \
 No newline at end of file
 1933   2000   
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
 1934   2001   
similarity index 100%
 1935   2002   
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
 1936   2003   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 1937   2004   
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
 1938   2005   
new file mode 100644
 1939   2006   
index 0000000..d7f1c1c
 1940         -
-- /dev/null
        2007  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 1941   2008   
@@ -0,0 +1 @@
        2009  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 1942   2010   
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
 1943   2011   
new file mode 100644
 1944   2012   
index 0000000..1c60790
 1945         -
-- /dev/null
        2013  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 1946   2014   
@@ -0,0 +1,5 @@
        2015  +
GET /?Param1=value1 HTTP/1.1
        2016  +
Host:example.amazonaws.com
        2017  +
X-Amz-Date:20150830T123600Z
        2018  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2019  +
 1947   2020   
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
 1948   2021   
similarity index 100%
 1949   2022   
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
 1950   2023   
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
 1951   2024   
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
 1952   2025   
new file mode 100644
 1953   2026   
index 0000000..6a823ed
 1954         -
-- /dev/null
        2027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 1955   2028   
@@ -0,0 +1,7 @@
        2029  +
GET
        2030  +
/
        2031  +
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
        2032  +
host:example.amazonaws.com
        2033  +
        2034  +
host
        2035  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1956   2036   
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
 1957   2037   
new file mode 100644
 1958   2038   
index 0000000..8c77136
 1959         -
-- /dev/null
        2039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 1960   2040   
@@ -0,0 +1 @@
        2041  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 1961   2042   
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
 1962   2043   
new file mode 100644
 1963   2044   
index 0000000..2d337d8
 1964         -
-- /dev/null
        2045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 1965   2046   
@@ -0,0 +1,3 @@
        2047  +
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
        2048  +
Host:example.amazonaws.com
        2049  +
 1966   2050   
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
 1967   2051   
new file mode 100644
 1968   2052   
index 0000000..191a484
 1969         -
-- /dev/null
        2053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 1970   2054   
@@ -0,0 +1,4 @@
        2055  +
AWS4-HMAC-SHA256
        2056  +
20150830T123600Z
        2057  +
20150830/us-east-1/service/aws4_request
        2058  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 1971   2059   
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
 1972   2060   
similarity index 100%
 1973   2061   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 1974   2062   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 1975   2063   
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
 1976   2064   
new file mode 100644
 1977   2065   
index 0000000..0468d80
 1978         -
-- /dev/null
        2066  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 1979   2067   
@@ -0,0 +1,12 @@
        2068  +
{
        2069  +
    "credentials": {
        2070  +
        "access_key_id": "AKIDEXAMPLE",
        2071  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2072  +
    },
        2073  +
    "expiration_in_seconds": 3600,
        2074  +
    "normalize": true,
        2075  +
    "region": "us-east-1",
        2076  +
    "service": "service",
        2077  +
    "sign_body": false,
        2078  +
    "timestamp": "2015-08-30T12:36:00Z"
        2079  +
}
              \
 No newline at end of file
 1980   2080   
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
 1981   2081   
new file mode 100644
 1982   2082   
index 0000000..0c8ba21
 1983         -
-- /dev/null
        2083  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 1984   2084   
@@ -0,0 +1,8 @@
        2085  +
GET
        2086  +
/
        2087  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2088  +
host:example.amazonaws.com
        2089  +
x-amz-date:20150830T123600Z
        2090  +
        2091  +
host;x-amz-date
        2092  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1985   2093   
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
 1986   2094   
new file mode 100644
 1987   2095   
index 0000000..9ab65ed
 1988         -
-- /dev/null
        2096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 1989   2097   
@@ -0,0 +1 @@
        2098  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 1990   2099   
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
 1991   2100   
new file mode 100644
 1992   2101   
index 0000000..0bcdf98
 1993         -
-- /dev/null
        2102  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 1994   2103   
@@ -0,0 +1,5 @@
        2104  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2105  +
Host:example.amazonaws.com
        2106  +
X-Amz-Date:20150830T123600Z
        2107  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2108  +
 1995   2109   
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
 1996   2110   
new file mode 100644
 1997   2111   
index 0000000..bf674ad
 1998         -
-- /dev/null
        2112  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 1999   2113   
@@ -0,0 +1,4 @@
        2114  +
AWS4-HMAC-SHA256
        2115  +
20150830T123600Z
        2116  +
20150830/us-east-1/service/aws4_request
        2117  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2000   2118   
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
 2001   2119   
new file mode 100644
 2002   2120   
index 0000000..3f590a4
 2003         -
-- /dev/null
        2121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2004   2122   
@@ -0,0 +1,7 @@
        2123  +
GET
        2124  +
/
        2125  +
%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
        2126  +
host:example.amazonaws.com
        2127  +
        2128  +
host
        2129  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2005   2130   
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
 2006   2131   
new file mode 100644
 2007   2132   
index 0000000..e225eab
 2008         -
-- /dev/null
        2133  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2009   2134   
@@ -0,0 +1 @@
        2135  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2010   2136   
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
 2011   2137   
new file mode 100644
 2012   2138   
index 0000000..6206719
 2013         -
-- /dev/null
        2139  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2014   2140   
@@ -0,0 +1,3 @@
        2141  +
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
        2142  +
Host:example.amazonaws.com
        2143  +
 2015   2144   
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
 2016   2145   
new file mode 100644
 2017   2146   
index 0000000..81a4210
 2018         -
-- /dev/null
        2147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2019   2148   
@@ -0,0 +1,4 @@
        2149  +
AWS4-HMAC-SHA256
        2150  +
20150830T123600Z
        2151  +
20150830/us-east-1/service/aws4_request
        2152  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2020   2153   
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
 2021   2154   
new file mode 100644
 2022   2155   
index 0000000..368c6e3
 2023         -
-- /dev/null
        2156  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2024   2157   
@@ -0,0 +1,2 @@
        2158  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2159  +
Host:example.amazonaws.com
 2025   2160   
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
 2026   2161   
new file mode 100644
 2027   2162   
index 0000000..0468d80
 2028         -
-- /dev/null
        2163  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2029   2164   
@@ -0,0 +1,12 @@
        2165  +
{
        2166  +
    "credentials": {
        2167  +
        "access_key_id": "AKIDEXAMPLE",
        2168  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2169  +
    },
        2170  +
    "expiration_in_seconds": 3600,
        2171  +
    "normalize": true,
        2172  +
    "region": "us-east-1",
        2173  +
    "service": "service",
        2174  +
    "sign_body": false,
        2175  +
    "timestamp": "2015-08-30T12:36:00Z"
        2176  +
}
              \
 No newline at end of file
 2030   2177   
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
 2031   2178   
similarity index 100%
 2032   2179   
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
 2033   2180   
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
 2034   2181   
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
 2035   2182   
new file mode 100644
 2036   2183   
index 0000000..6a8cb9d
 2037         -
-- /dev/null
        2184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2038   2185   
@@ -0,0 +1 @@
        2186  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2039   2187   
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
 2040   2188   
new file mode 100644
 2041   2189   
index 0000000..f78a9d2
 2042         -
-- /dev/null
        2190  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2043   2191   
@@ -0,0 +1,5 @@
        2192  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2193  +
Host:example.amazonaws.com
        2194  +
X-Amz-Date:20150830T123600Z
        2195  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2196  +
 2044   2197   
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
 2045   2198   
similarity index 100%
 2046   2199   
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
 2047   2200   
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
 2048   2201   
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
 2049   2202   
new file mode 100644
 2050   2203   
index 0000000..a6e1bc7
 2051         -
-- /dev/null
        2204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2052   2205   
@@ -0,0 +1,7 @@
        2206  +
GET
        2207  +
/
        2208  +
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
        2209  +
host:example.amazonaws.com
        2210  +
        2211  +
host
        2212  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2053   2213   
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
 2054   2214   
new file mode 100644
 2055   2215   
index 0000000..d6e6a88
 2056         -
-- /dev/null
        2216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2057   2217   
@@ -0,0 +1 @@
        2218  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2058   2219   
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
 2059   2220   
new file mode 100644
 2060   2221   
index 0000000..538e2f0
 2061         -
-- /dev/null
        2222  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2062   2223   
@@ -0,0 +1,3 @@
        2224  +
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
        2225  +
Host:example.amazonaws.com
        2226  +
 2063   2227   
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
 2064   2228   
new file mode 100644
 2065   2229   
index 0000000..e696085
 2066         -
-- /dev/null
        2230  +
++ 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
 2067   2231   
@@ -0,0 +1,4 @@
        2232  +
AWS4-HMAC-SHA256
        2233  +
20150830T123600Z
        2234  +
20150830/us-east-1/service/aws4_request
        2235  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2068   2236   
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
 2069   2237   
similarity index 100%
 2070   2238   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2071   2239   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2072   2240   
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
 2073   2241   
new file mode 100644
 2074   2242   
index 0000000..0468d80
 2075         -
-- /dev/null
        2243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2076   2244   
@@ -0,0 +1,12 @@
        2245  +
{
        2246  +
    "credentials": {
        2247  +
        "access_key_id": "AKIDEXAMPLE",
        2248  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2249  +
    },
        2250  +
    "expiration_in_seconds": 3600,
        2251  +
    "normalize": true,
        2252  +
    "region": "us-east-1",
        2253  +
    "service": "service",
        2254  +
    "sign_body": false,
        2255  +
    "timestamp": "2015-08-30T12:36:00Z"
        2256  +
}
              \
 No newline at end of file
 2077   2257   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2078   2258   
similarity index 100%
 2079   2259   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2080   2260   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2081   2261   
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
 2082   2262   
new file mode 100644
 2083   2263   
index 0000000..876a64b
 2084         -
-- /dev/null
        2264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2085   2265   
@@ -0,0 +1 @@
        2266  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2086   2267   
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
 2087   2268   
similarity index 50%
 2088   2269   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2089   2270   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2090   2271   
index ba1ef40..9d0d993 100644
 2091         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2272  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2092   2273   
@@ -1,4 +1,5 @@
 2093   2274   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2094   2275   
Host:example.amazonaws.com
 2095   2276   
X-Amz-Date:20150830T123600Z
 2096         -
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
        2277  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2278  +
 2097   2279   
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
 2098   2280   
similarity index 100%
 2099   2281   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2100   2282   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2101   2283   
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
 2102   2284   
new file mode 100644
 2103   2285   
index 0000000..a1bac59
 2104         -
-- /dev/null
        2286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2105   2287   
@@ -0,0 +1,7 @@
        2288  +
GET
        2289  +
/
        2290  +
-._~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
        2291  +
host:example.amazonaws.com
        2292  +
        2293  +
host
        2294  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2106   2295   
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
 2107   2296   
new file mode 100644
 2108   2297   
index 0000000..41881e9
 2109         -
-- /dev/null
        2298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2110   2299   
@@ -0,0 +1 @@
        2300  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2111   2301   
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
 2112   2302   
new file mode 100644
 2113   2303   
index 0000000..3179076
 2114         -
-- /dev/null
        2304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2115   2305   
@@ -0,0 +1,3 @@
        2306  +
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
        2307  +
Host:example.amazonaws.com
        2308  +
 2116   2309   
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
 2117   2310   
new file mode 100644
 2118   2311   
index 0000000..6d675fc
 2119         -
-- /dev/null
        2312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2120   2313   
@@ -0,0 +1,4 @@
        2314  +
AWS4-HMAC-SHA256
        2315  +
20150830T123600Z
        2316  +
20150830/us-east-1/service/aws4_request
        2317  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2121   2318   
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
 2122   2319   
similarity index 100%
 2123   2320   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2124   2321   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2125   2322   
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
 2126   2323   
new file mode 100644
 2127   2324   
index 0000000..0468d80
 2128         -
-- /dev/null
        2325  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2129   2326   
@@ -0,0 +1,12 @@
        2327  +
{
        2328  +
    "credentials": {
        2329  +
        "access_key_id": "AKIDEXAMPLE",
        2330  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2331  +
    },
        2332  +
    "expiration_in_seconds": 3600,
        2333  +
    "normalize": true,
        2334  +
    "region": "us-east-1",
        2335  +
    "service": "service",
        2336  +
    "sign_body": false,
        2337  +
    "timestamp": "2015-08-30T12:36:00Z"
        2338  +
}
              \
 No newline at end of file
 2130   2339   
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
 2131   2340   
similarity index 100%
 2132   2341   
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
 2133   2342   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2134   2343   
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
 2135   2344   
new file mode 100644
 2136   2345   
index 0000000..87f295f
 2137         -
-- /dev/null
        2346  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2138   2347   
@@ -0,0 +1 @@
        2348  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2139   2349   
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
 2140   2350   
new file mode 100644
 2141   2351   
index 0000000..36b86e7
 2142         -
-- /dev/null
        2352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2143   2353   
@@ -0,0 +1,5 @@
        2354  +
GET / HTTP/1.1
        2355  +
Host:example.amazonaws.com
        2356  +
X-Amz-Date:20150830T123600Z
        2357  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2358  +
 2144   2359   
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
 2145   2360   
similarity index 100%
 2146   2361   
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
 2147   2362   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2148   2363   
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
 2149   2364   
new file mode 100644
 2150   2365   
index 0000000..fb2420d
 2151         -
-- /dev/null
        2366  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2152   2367   
@@ -0,0 +1,7 @@
        2368  +
GET
        2369  +
/
        2370  +
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
        2371  +
host:example.amazonaws.com
        2372  +
        2373  +
host
        2374  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2153   2375   
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
 2154   2376   
new file mode 100644
 2155   2377   
index 0000000..da5c905
 2156         -
-- /dev/null
        2378  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2157   2379   
@@ -0,0 +1 @@
        2380  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2158   2381   
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
 2159   2382   
new file mode 100644
 2160   2383   
index 0000000..eeb7a8f
 2161         -
-- /dev/null
        2384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2162   2385   
@@ -0,0 +1,3 @@
        2386  +
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
        2387  +
Host:example.amazonaws.com
        2388  +
 2163   2389   
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
 2164   2390   
new file mode 100644
 2165   2391   
index 0000000..d837e67
 2166         -
-- /dev/null
        2392  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2167   2393   
@@ -0,0 +1,4 @@
        2394  +
AWS4-HMAC-SHA256
        2395  +
20150830T123600Z
        2396  +
20150830/us-east-1/service/aws4_request
        2397  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2168   2398   
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
 2169   2399   
similarity index 100%
 2170   2400   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2171   2401   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2172   2402   
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
 2173   2403   
new file mode 100644
 2174   2404   
index 0000000..0468d80
 2175         -
-- /dev/null
        2405  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2176   2406   
@@ -0,0 +1,12 @@
        2407  +
{
        2408  +
    "credentials": {
        2409  +
        "access_key_id": "AKIDEXAMPLE",
        2410  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2411  +
    },
        2412  +
    "expiration_in_seconds": 3600,
        2413  +
    "normalize": true,
        2414  +
    "region": "us-east-1",
        2415  +
    "service": "service",
        2416  +
    "sign_body": false,
        2417  +
    "timestamp": "2015-08-30T12:36:00Z"
        2418  +
}
              \
 No newline at end of file
 2177   2419   
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
 2178   2420   
similarity index 100%
 2179   2421   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2180   2422   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2181   2423   
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
 2182   2424   
new file mode 100644
 2183   2425   
index 0000000..19a2cc9
 2184         -
-- /dev/null
        2426  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2185   2427   
@@ -0,0 +1 @@
        2428  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2186   2429   
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
 2187   2430   
new file mode 100644
 2188   2431   
index 0000000..acb13ee
 2189         -
-- /dev/null
        2432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2190   2433   
@@ -0,0 +1,5 @@
        2434  +
GET /?ሴ=bar HTTP/1.1
        2435  +
Host:example.amazonaws.com
        2436  +
X-Amz-Date:20150830T123600Z
        2437  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2438  +
 2191   2439   
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
 2192   2440   
similarity index 100%
 2193   2441   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2194   2442   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2195   2443   
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
 2196   2444   
new file mode 100644
 2197   2445   
index 0000000..92cee62
 2198         -
-- /dev/null
        2446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2199   2447   
@@ -0,0 +1,7 @@
        2448  +
GET
        2449  +
/
        2450  +
%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
        2451  +
host:example.amazonaws.com
        2452  +
        2453  +
host
        2454  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2200   2455   
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
 2201   2456   
new file mode 100644
 2202   2457   
index 0000000..c9e49de
 2203         -
-- /dev/null
        2458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2204   2459   
@@ -0,0 +1 @@
        2460  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2205   2461   
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
 2206   2462   
new file mode 100644
 2207   2463   
index 0000000..8f4d8d0
 2208         -
-- /dev/null
        2464  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2209   2465   
@@ -0,0 +1,3 @@
        2466  +
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
        2467  +
Host:example.amazonaws.com
        2468  +
 2210   2469   
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
 2211   2470   
new file mode 100644
 2212   2471   
index 0000000..a6181dc
 2213         -
-- /dev/null
        2472  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2214   2473   
@@ -0,0 +1,4 @@
        2474  +
AWS4-HMAC-SHA256
        2475  +
20150830T123600Z
        2476  +
20150830/us-east-1/service/aws4_request
        2477  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2215   2478   
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
 2216   2479   
similarity index 64%
 2217   2480   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2218   2481   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2219   2482   
index cc2757e..aff333a 100644
 2220         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2221   2484   
@@ -1,3 +1,2 @@
 2222   2485   
GET /?ሴ=bar HTTP/1.1
 2223   2486   
Host:example.amazonaws.com
 2224         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2225   2487   
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
 2226   2488   
similarity index 99%
 2227   2489   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2228   2490   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2229   2491   
index a457c8a..a334e18 100644
 2230   2492   
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
 2231   2493   
new file mode 100644
 2232   2494   
index 0000000..ccacdeb
 2233         -
-- /dev/null
        2495  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2234   2496   
@@ -0,0 +1,9 @@
        2497  +
GET
        2498  +
/
        2499  +
        2500  +
host:example.amazonaws.com
        2501  +
x-amz-date:20150830T123600Z
        2502  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2503  +
        2504  +
host;x-amz-date;x-amz-security-token
        2505  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2235   2506   
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
 2236   2507   
new file mode 100644
 2237   2508   
index 0000000..083e30d
 2238         -
-- /dev/null
        2509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2239   2510   
@@ -0,0 +1 @@
        2511  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2240   2512   
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
 2241   2513   
new file mode 100644
 2242   2514   
index 0000000..5287932
 2243         -
-- /dev/null
        2515  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2244   2516   
@@ -0,0 +1,6 @@
        2517  +
GET / HTTP/1.1
        2518  +
Host:example.amazonaws.com
        2519  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2520  +
X-Amz-Date:20150830T123600Z
        2521  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2522  +
 2245   2523   
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
 2246   2524   
new file mode 100644
 2247   2525   
index 0000000..742b880
 2248         -
-- /dev/null
        2526  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2249   2527   
@@ -0,0 +1,4 @@
        2528  +
AWS4-HMAC-SHA256
        2529  +
20150830T123600Z
        2530  +
20150830/us-east-1/service/aws4_request
        2531  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2250   2532   
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
 2251   2533   
new file mode 100644
 2252   2534   
index 0000000..5e75179
 2253         -
-- /dev/null
        2535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2254   2536   
@@ -0,0 +1,7 @@
        2537  +
GET
        2538  +
/
        2539  +
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
        2540  +
host:example.amazonaws.com
        2541  +
        2542  +
host
        2543  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2255   2544   
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
 2256   2545   
new file mode 100644
 2257   2546   
index 0000000..50b947f
 2258         -
-- /dev/null
        2547  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2259   2548   
@@ -0,0 +1 @@
        2549  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2260   2550   
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
 2261   2551   
new file mode 100644
 2262   2552   
index 0000000..aee910b
 2263         -
-- /dev/null
        2553  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2264   2554   
@@ -0,0 +1,3 @@
        2555  +
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
        2556  +
Host:example.amazonaws.com
        2557  +
 2265   2558   
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
 2266   2559   
new file mode 100644
 2267   2560   
index 0000000..04a6c17
 2268         -
-- /dev/null
        2561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2269   2562   
@@ -0,0 +1,4 @@
        2563  +
AWS4-HMAC-SHA256
        2564  +
20150830T123600Z
        2565  +
20150830/us-east-1/service/aws4_request
        2566  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2270   2567   
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
 2271   2568   
similarity index 100%
 2272   2569   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2273   2570   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2274   2571   
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
 2275   2572   
new file mode 100644
 2276   2573   
index 0000000..0468d80
 2277         -
-- /dev/null
        2574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2278   2575   
@@ -0,0 +1,12 @@
        2576  +
{
        2577  +
    "credentials": {
        2578  +
        "access_key_id": "AKIDEXAMPLE",
        2579  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2580  +
    },
        2581  +
    "expiration_in_seconds": 3600,
        2582  +
    "normalize": true,
        2583  +
    "region": "us-east-1",
        2584  +
    "service": "service",
        2585  +
    "sign_body": false,
        2586  +
    "timestamp": "2015-08-30T12:36:00Z"
        2587  +
}
              \
 No newline at end of file
 2279   2588   
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
 2280   2589   
similarity index 100%
 2281   2590   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2282   2591   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2283   2592   
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
 2284   2593   
new file mode 100644
 2285   2594   
index 0000000..87f295f
 2286         -
-- /dev/null
        2595  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2287   2596   
@@ -0,0 +1 @@
        2597  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2288   2598   
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
 2289   2599   
new file mode 100644
 2290   2600   
index 0000000..36b86e7
 2291         -
-- /dev/null
        2601  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2292   2602   
@@ -0,0 +1,5 @@
        2603  +
GET / HTTP/1.1
        2604  +
Host:example.amazonaws.com
        2605  +
X-Amz-Date:20150830T123600Z
        2606  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2607  +
 2293   2608   
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
 2294   2609   
similarity index 100%
 2295   2610   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2296   2611   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2297   2612   
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
 2298   2613   
new file mode 100644
 2299   2614   
index 0000000..fb2420d
 2300         -
-- /dev/null
        2615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2301   2616   
@@ -0,0 +1,7 @@
        2617  +
GET
        2618  +
/
        2619  +
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
        2620  +
host:example.amazonaws.com
        2621  +
        2622  +
host
        2623  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2302   2624   
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
 2303   2625   
new file mode 100644
 2304   2626   
index 0000000..da5c905
 2305         -
-- /dev/null
        2627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2306   2628   
@@ -0,0 +1 @@
        2629  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2307   2630   
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
 2308   2631   
new file mode 100644
 2309   2632   
index 0000000..eeb7a8f
 2310         -
-- /dev/null
        2633  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2311   2634   
@@ -0,0 +1,3 @@
        2635  +
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
        2636  +
Host:example.amazonaws.com
        2637  +
 2312   2638   
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
 2313   2639   
new file mode 100644
 2314   2640   
index 0000000..d837e67
 2315         -
-- /dev/null
        2641  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2316   2642   
@@ -0,0 +1,4 @@
        2643  +
AWS4-HMAC-SHA256
        2644  +
20150830T123600Z
        2645  +
20150830/us-east-1/service/aws4_request
        2646  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2317   2647   
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
 2318   2648   
similarity index 100%
 2319   2649   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2320   2650   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2321   2651   
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
 2322   2652   
new file mode 100644
 2323   2653   
index 0000000..0468d80
 2324         -
-- /dev/null
        2654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2325   2655   
@@ -0,0 +1,12 @@
        2656  +
{
        2657  +
    "credentials": {
        2658  +
        "access_key_id": "AKIDEXAMPLE",
        2659  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2660  +
    },
        2661  +
    "expiration_in_seconds": 3600,
        2662  +
    "normalize": true,
        2663  +
    "region": "us-east-1",
        2664  +
    "service": "service",
        2665  +
    "sign_body": false,
        2666  +
    "timestamp": "2015-08-30T12:36:00Z"
        2667  +
}
              \
 No newline at end of file
 2326   2668   
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
 2327   2669   
similarity index 100%
 2328   2670   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2329   2671   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2330   2672   
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
 2331   2673   
new file mode 100644
 2332   2674   
index 0000000..629487f
 2333         -
-- /dev/null
        2675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2334   2676   
@@ -0,0 +1 @@
        2677  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2335   2678   
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
 2336   2679   
new file mode 100644
 2337   2680   
index 0000000..0d99b1c
 2338         -
-- /dev/null
        2681  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2339   2682   
@@ -0,0 +1,5 @@
        2683  +
POST / HTTP/1.1
        2684  +
Host:example.amazonaws.com
        2685  +
X-Amz-Date:20150830T123600Z
        2686  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2687  +
 2340   2688   
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
 2341   2689   
similarity index 100%
 2342   2690   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2343   2691   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2344   2692   
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
 2345   2693   
new file mode 100644
 2346   2694   
index 0000000..d3341e7
 2347         -
-- /dev/null
        2695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2348   2696   
@@ -0,0 +1,7 @@
        2697  +
POST
        2698  +
/
        2699  +
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
        2700  +
host:example.amazonaws.com
        2701  +
        2702  +
host
        2703  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2349   2704   
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
 2350   2705   
new file mode 100644
 2351   2706   
index 0000000..79f7e0d
 2352         -
-- /dev/null
        2707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2353   2708   
@@ -0,0 +1 @@
        2709  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2354   2710   
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
 2355   2711   
new file mode 100644
 2356   2712   
index 0000000..94f1b21
 2357         -
-- /dev/null
        2713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2358   2714   
@@ -0,0 +1,3 @@
        2715  +
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
        2716  +
Host:example.amazonaws.com
        2717  +
 2359   2718   
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
 2360   2719   
new file mode 100644
 2361   2720   
index 0000000..e8f335b
 2362         -
-- /dev/null
        2721  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2363   2722   
@@ -0,0 +1,4 @@
        2723  +
AWS4-HMAC-SHA256
        2724  +
20150830T123600Z
        2725  +
20150830/us-east-1/service/aws4_request
        2726  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2364   2727   
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
 2365   2728   
similarity index 100%
 2366   2729   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2367   2730   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2368   2731   
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
 2369   2732   
new file mode 100644
 2370   2733   
index 0000000..0468d80
 2371         -
-- /dev/null
        2734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2372   2735   
@@ -0,0 +1,12 @@
        2736  +
{
        2737  +
    "credentials": {
        2738  +
        "access_key_id": "AKIDEXAMPLE",
        2739  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2740  +
    },
        2741  +
    "expiration_in_seconds": 3600,
        2742  +
    "normalize": true,
        2743  +
    "region": "us-east-1",
        2744  +
    "service": "service",
        2745  +
    "sign_body": false,
        2746  +
    "timestamp": "2015-08-30T12:36:00Z"
        2747  +
}
              \
 No newline at end of file
 2373   2748   
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
 2374   2749   
similarity index 100%
 2375   2750   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2376   2751   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2377   2752   
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
 2378   2753   
new file mode 100644
 2379   2754   
index 0000000..e4e6428
 2380         -
-- /dev/null
        2755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2381   2756   
@@ -0,0 +1 @@
        2757  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2382   2758   
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
 2383   2759   
new file mode 100644
 2384   2760   
index 0000000..e3778f5
 2385         -
-- /dev/null
        2761  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2386   2762   
@@ -0,0 +1,6 @@
        2763  +
POST / HTTP/1.1
        2764  +
Host:example.amazonaws.com
        2765  +
My-Header1:value1
        2766  +
X-Amz-Date:20150830T123600Z
        2767  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2768  +
 2387   2769   
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
 2388   2770   
similarity index 100%
 2389   2771   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2390   2772   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2391   2773   
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
 2392   2774   
new file mode 100644
 2393   2775   
index 0000000..bd7c937
 2394         -
-- /dev/null
        2776  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2395   2777   
@@ -0,0 +1,8 @@
        2778  +
POST
        2779  +
/
        2780  +
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
        2781  +
host:example.amazonaws.com
        2782  +
my-header1:value1
        2783  +
        2784  +
host;my-header1
        2785  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2396   2786   
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
 2397   2787   
new file mode 100644
 2398   2788   
index 0000000..0416f13
 2399         -
-- /dev/null
        2789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2400   2790   
@@ -0,0 +1 @@
        2791  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2401   2792   
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
 2402   2793   
new file mode 100644
 2403   2794   
index 0000000..5e6522f
 2404         -
-- /dev/null
        2795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2405   2796   
@@ -0,0 +1,4 @@
        2797  +
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
        2798  +
Host:example.amazonaws.com
        2799  +
My-Header1:value1
        2800  +
 2406   2801   
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
 2407   2802   
new file mode 100644
 2408   2803   
index 0000000..d06d1df
 2409         -
-- /dev/null
        2804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2410   2805   
@@ -0,0 +1,4 @@
        2806  +
AWS4-HMAC-SHA256
        2807  +
20150830T123600Z
        2808  +
20150830/us-east-1/service/aws4_request
        2809  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2411   2810   
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
 2412   2811   
similarity index 100%
 2413   2812   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2414   2813   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2415   2814   
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
 2416   2815   
new file mode 100644
 2417   2816   
index 0000000..0468d80
 2418         -
-- /dev/null
        2817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2419   2818   
@@ -0,0 +1,12 @@
        2819  +
{
        2820  +
    "credentials": {
        2821  +
        "access_key_id": "AKIDEXAMPLE",
        2822  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2823  +
    },
        2824  +
    "expiration_in_seconds": 3600,
        2825  +
    "normalize": true,
        2826  +
    "region": "us-east-1",
        2827  +
    "service": "service",
        2828  +
    "sign_body": false,
        2829  +
    "timestamp": "2015-08-30T12:36:00Z"
        2830  +
}
              \
 No newline at end of file
 2420   2831   
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
 2421   2832   
similarity index 100%
 2422   2833   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2423   2834   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2424   2835   
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
 2425   2836   
new file mode 100644
 2426   2837   
index 0000000..bb3809c
 2427         -
-- /dev/null
        2838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2428   2839   
@@ -0,0 +1 @@
        2840  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2429   2841   
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
 2430   2842   
new file mode 100644
 2431   2843   
index 0000000..10f6761
 2432         -
-- /dev/null
        2844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2433   2845   
@@ -0,0 +1,6 @@
        2846  +
POST / HTTP/1.1
        2847  +
Host:example.amazonaws.com
        2848  +
My-Header1:VALUE1
        2849  +
X-Amz-Date:20150830T123600Z
        2850  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        2851  +
 2434   2852   
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
 2435   2853   
similarity index 100%
 2436   2854   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2437   2855   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2438   2856   
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
 2439   2857   
new file mode 100644
 2440   2858   
index 0000000..f84856f
 2441         -
-- /dev/null
        2859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2442   2860   
@@ -0,0 +1,8 @@
        2861  +
POST
        2862  +
/
        2863  +
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
        2864  +
host:example.amazonaws.com
        2865  +
my-header1:VALUE1
        2866  +
        2867  +
host;my-header1
        2868  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2443   2869   
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
 2444   2870   
new file mode 100644
 2445   2871   
index 0000000..a9d3cac
 2446         -
-- /dev/null
        2872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2447   2873   
@@ -0,0 +1 @@
        2874  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2448   2875   
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
 2449   2876   
new file mode 100644
 2450   2877   
index 0000000..cf96c7c
 2451         -
-- /dev/null
        2878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2452   2879   
@@ -0,0 +1,4 @@
        2880  +
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
        2881  +
Host:example.amazonaws.com
        2882  +
My-Header1:VALUE1
        2883  +
 2453   2884   
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
 2454   2885   
new file mode 100644
 2455   2886   
index 0000000..47ef566
 2456         -
-- /dev/null
        2887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2457   2888   
@@ -0,0 +1,4 @@
        2889  +
AWS4-HMAC-SHA256
        2890  +
20150830T123600Z
        2891  +
20150830/us-east-1/service/aws4_request
        2892  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2458   2893   
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
 2459   2894   
similarity index 100%
 2460   2895   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2461   2896   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2462   2897   
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
 2463   2898   
similarity index 100%
 2464   2899   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2465   2900   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2466   2901   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2467   2902   
similarity index 100%
 2468   2903   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.creq
 2469   2904   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2470   2905   
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
 2471   2906   
new file mode 100644
 2472   2907   
index 0000000..629487f
 2473         -
-- /dev/null
        2908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2474   2909   
@@ -0,0 +1 @@
        2910  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2475   2911   
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
 2476   2912   
similarity index 67%
 2477   2913   
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
 2478   2914   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2479   2915   
index 291ed07..f96ff9e 100644
 2480         -
-- 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
        2916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2481   2917   
@@ -1,5 +1,6 @@
 2482   2918   
POST / HTTP/1.1
 2483   2919   
Host:example.amazonaws.com
 2484         -
X-Amz-Date:20150830T123600Z
 2485   2920   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2486         -
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
        2921  +
X-Amz-Date:20150830T123600Z
        2922  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2923  +
 2487   2924   
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
 2488   2925   
similarity index 100%
 2489   2926   
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
 2490   2927   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2491   2928   
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
 2492   2929   
new file mode 100644
 2493   2930   
index 0000000..d3341e7
 2494         -
-- /dev/null
        2931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2495   2932   
@@ -0,0 +1,7 @@
        2933  +
POST
        2934  +
/
        2935  +
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
        2936  +
host:example.amazonaws.com
        2937  +
        2938  +
host
        2939  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2496   2940   
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
 2497   2941   
new file mode 100644
 2498   2942   
index 0000000..79f7e0d
 2499         -
-- /dev/null
        2943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2500   2944   
@@ -0,0 +1 @@
        2945  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2501   2946   
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
 2502   2947   
new file mode 100644
 2503   2948   
index 0000000..4983268
 2504         -
-- /dev/null
        2949  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2505   2950   
@@ -0,0 +1,3 @@
        2951  +
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
        2952  +
Host:example.amazonaws.com
        2953  +
 2506   2954   
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
 2507   2955   
new file mode 100644
 2508   2956   
index 0000000..e8f335b
 2509         -
-- /dev/null
        2957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2510   2958   
@@ -0,0 +1,4 @@
        2959  +
AWS4-HMAC-SHA256
        2960  +
20150830T123600Z
        2961  +
20150830/us-east-1/service/aws4_request
        2962  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2511   2963   
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
 2512   2964   
similarity index 100%
 2513   2965   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2514   2966   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2515   2967   
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
 2516   2968   
similarity index 100%
 2517   2969   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2518   2970   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2519   2971   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2520   2972   
similarity index 100%
 2521   2973   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.creq
 2522   2974   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2523   2975   
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
 2524   2976   
new file mode 100644
 2525   2977   
index 0000000..85a7c29
 2526         -
-- /dev/null
        2978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2527   2979   
@@ -0,0 +1 @@
        2980  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2528   2981   
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
 2529   2982   
similarity index 65%
 2530   2983   
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
 2531   2984   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2532   2985   
index 37b2f04..4d0b143 100644
 2533         -
-- 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
        2986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2534   2987   
@@ -1,5 +1,6 @@
 2535   2988   
POST / HTTP/1.1
 2536   2989   
Host:example.amazonaws.com
 2537         -
X-Amz-Date:20150830T123600Z
 2538   2990   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2539         -
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
        2991  +
X-Amz-Date:20150830T123600Z
        2992  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        2993  +
 2540   2994   
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
 2541   2995   
similarity index 100%
 2542   2996   
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
 2543   2997   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2544   2998   
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
 2545   2999   
new file mode 100644
 2546   3000   
index 0000000..57a7bc3
 2547         -
-- /dev/null
        3001  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2548   3002   
@@ -0,0 +1,7 @@
        3003  +
POST
        3004  +
/
        3005  +
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
        3006  +
host:example.amazonaws.com
        3007  +
        3008  +
host
        3009  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2549   3010   
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
 2550   3011   
new file mode 100644
 2551   3012   
index 0000000..eb905d2
 2552         -
-- /dev/null
        3013  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2553   3014   
@@ -0,0 +1 @@
        3015  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2554   3016   
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
 2555   3017   
new file mode 100644
 2556   3018   
index 0000000..1d80ec0
 2557         -
-- /dev/null
        3019  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2558   3020   
@@ -0,0 +1,3 @@
        3021  +
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
        3022  +
Host:example.amazonaws.com
        3023  +
 2559   3024   
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
 2560   3025   
new file mode 100644
 2561   3026   
index 0000000..bd0239a
 2562         -
-- /dev/null
        3027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2563   3028   
@@ -0,0 +1,4 @@
        3029  +
AWS4-HMAC-SHA256
        3030  +
20150830T123600Z
        3031  +
20150830/us-east-1/service/aws4_request
        3032  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2564   3033   
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
 2565   3034   
similarity index 100%
 2566   3035   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2567   3036   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2568   3037   
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
 2569   3038   
new file mode 100644
 2570   3039   
index 0000000..0468d80
 2571         -
-- /dev/null
        3040  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2572   3041   
@@ -0,0 +1,12 @@
        3042  +
{
        3043  +
    "credentials": {
        3044  +
        "access_key_id": "AKIDEXAMPLE",
        3045  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3046  +
    },
        3047  +
    "expiration_in_seconds": 3600,
        3048  +
    "normalize": true,
        3049  +
    "region": "us-east-1",
        3050  +
    "service": "service",
        3051  +
    "sign_body": false,
        3052  +
    "timestamp": "2015-08-30T12:36:00Z"
        3053  +
}
              \
 No newline at end of file
 2573   3054   
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
 2574   3055   
similarity index 100%
 2575   3056   
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
 2576   3057   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2577   3058   
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
 2578   3059   
new file mode 100644
 2579   3060   
index 0000000..80ed433
 2580         -
-- /dev/null
        3061  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2581   3062   
@@ -0,0 +1 @@
        3063  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2582   3064   
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
 2583   3065   
new file mode 100644
 2584   3066   
index 0000000..4e614f8
 2585         -
-- /dev/null
        3067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2586   3068   
@@ -0,0 +1,5 @@
        3069  +
POST /?Param1=value1 HTTP/1.1
        3070  +
Host:example.amazonaws.com
        3071  +
X-Amz-Date:20150830T123600Z
        3072  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3073  +
 2587   3074   
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
 2588   3075   
similarity index 100%
 2589   3076   
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
 2590   3077   
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
 2591   3078   
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
 2592   3079   
new file mode 100644
 2593   3080   
index 0000000..be66403
 2594         -
-- /dev/null
        3081  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2595   3082   
@@ -0,0 +1,7 @@
        3083  +
POST
        3084  +
/
        3085  +
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
        3086  +
host:example.amazonaws.com
        3087  +
        3088  +
host
        3089  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2596   3090   
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
 2597   3091   
new file mode 100644
 2598   3092   
index 0000000..20fd32b
 2599         -
-- /dev/null
        3093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2600   3094   
@@ -0,0 +1 @@
        3095  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2601   3096   
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
 2602   3097   
new file mode 100644
 2603   3098   
index 0000000..d1148d0
 2604         -
-- /dev/null
        3099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2605   3100   
@@ -0,0 +1,3 @@
        3101  +
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
        3102  +
Host:example.amazonaws.com
        3103  +
 2606   3104   
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
 2607   3105   
new file mode 100644
 2608   3106   
index 0000000..1a77103
 2609         -
-- /dev/null
        3107  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2610   3108   
@@ -0,0 +1,4 @@
        3109  +
AWS4-HMAC-SHA256
        3110  +
20150830T123600Z
        3111  +
20150830/us-east-1/service/aws4_request
        3112  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2611   3113   
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
 2612   3114   
similarity index 100%
 2613   3115   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2614   3116   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2615   3117   
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
 2616   3118   
new file mode 100644
 2617   3119   
index 0000000..0468d80
 2618         -
-- /dev/null
        3120  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2619   3121   
@@ -0,0 +1,12 @@
        3122  +
{
        3123  +
    "credentials": {
        3124  +
        "access_key_id": "AKIDEXAMPLE",
        3125  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3126  +
    },
        3127  +
    "expiration_in_seconds": 3600,
        3128  +
    "normalize": true,
        3129  +
    "region": "us-east-1",
        3130  +
    "service": "service",
        3131  +
    "sign_body": false,
        3132  +
    "timestamp": "2015-08-30T12:36:00Z"
        3133  +
}
              \
 No newline at end of file
 2620   3134   
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
 2621   3135   
similarity index 100%
 2622   3136   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2623   3137   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2624   3138   
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
 2625   3139   
new file mode 100644
 2626   3140   
index 0000000..80ed433
 2627         -
-- /dev/null
        3141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2628   3142   
@@ -0,0 +1 @@
        3143  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2629   3144   
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
 2630   3145   
new file mode 100644
 2631   3146   
index 0000000..4e614f8
 2632         -
-- /dev/null
        3147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2633   3148   
@@ -0,0 +1,5 @@
        3149  +
POST /?Param1=value1 HTTP/1.1
        3150  +
Host:example.amazonaws.com
        3151  +
X-Amz-Date:20150830T123600Z
        3152  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3153  +
 2634   3154   
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
 2635   3155   
similarity index 100%
 2636   3156   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2637   3157   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2638   3158   
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
 2639   3159   
new file mode 100644
 2640   3160   
index 0000000..be66403
 2641         -
-- /dev/null
        3161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2642   3162   
@@ -0,0 +1,7 @@
        3163  +
POST
        3164  +
/
        3165  +
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
        3166  +
host:example.amazonaws.com
        3167  +
        3168  +
host
        3169  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2643   3170   
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
 2644   3171   
new file mode 100644
 2645   3172   
index 0000000..20fd32b
 2646         -
-- /dev/null
        3173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2647   3174   
@@ -0,0 +1 @@
        3175  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2648   3176   
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
 2649   3177   
new file mode 100644
 2650   3178   
index 0000000..d1148d0
 2651         -
-- /dev/null
        3179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2652   3180   
@@ -0,0 +1,3 @@
        3181  +
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
        3182  +
Host:example.amazonaws.com
        3183  +
 2653   3184   
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
 2654   3185   
new file mode 100644
 2655   3186   
index 0000000..1a77103
 2656         -
-- /dev/null
        3187  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2657   3188   
@@ -0,0 +1,4 @@
        3189  +
AWS4-HMAC-SHA256
        3190  +
20150830T123600Z
        3191  +
20150830/us-east-1/service/aws4_request
        3192  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2658   3193   
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
 2659   3194   
similarity index 100%
 2660   3195   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2661   3196   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2662   3197   
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
 2663   3198   
new file mode 100644
 2664   3199   
index 0000000..0468d80
 2665         -
-- /dev/null
        3200  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2666   3201   
@@ -0,0 +1,12 @@
        3202  +
{
        3203  +
    "credentials": {
        3204  +
        "access_key_id": "AKIDEXAMPLE",
        3205  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3206  +
    },
        3207  +
    "expiration_in_seconds": 3600,
        3208  +
    "normalize": true,
        3209  +
    "region": "us-east-1",
        3210  +
    "service": "service",
        3211  +
    "sign_body": false,
        3212  +
    "timestamp": "2015-08-30T12:36:00Z"
        3213  +
}
              \
 No newline at end of file
 2667   3214   
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
 2668   3215   
similarity index 100%
 2669   3216   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2670   3217   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2671   3218   
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
 2672   3219   
new file mode 100644
 2673   3220   
index 0000000..629487f
 2674         -
-- /dev/null
        3221  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2675   3222   
@@ -0,0 +1 @@
        3223  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2676   3224   
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
 2677   3225   
new file mode 100644
 2678   3226   
index 0000000..0d99b1c
 2679         -
-- /dev/null
        3227  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2680   3228   
@@ -0,0 +1,5 @@
        3229  +
POST / HTTP/1.1
        3230  +
Host:example.amazonaws.com
        3231  +
X-Amz-Date:20150830T123600Z
        3232  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3233  +
 2681   3234   
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
 2682   3235   
similarity index 100%
 2683   3236   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 2684   3237   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 2685   3238   
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
 2686   3239   
new file mode 100644
 2687   3240   
index 0000000..d3341e7
 2688         -
-- /dev/null
        3241  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 2689   3242   
@@ -0,0 +1,7 @@
        3243  +
POST
        3244  +
/
        3245  +
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
        3246  +
host:example.amazonaws.com
        3247  +
        3248  +
host
        3249  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2690   3250   
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
 2691   3251   
new file mode 100644
 2692   3252   
index 0000000..79f7e0d
 2693         -
-- /dev/null
        3253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 2694   3254   
@@ -0,0 +1 @@
        3255  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2695   3256   
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
 2696   3257   
new file mode 100644
 2697   3258   
index 0000000..94f1b21
 2698         -
-- /dev/null
        3259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 2699   3260   
@@ -0,0 +1,3 @@
        3261  +
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
        3262  +
Host:example.amazonaws.com
        3263  +
 2700   3264   
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
 2701   3265   
new file mode 100644
 2702   3266   
index 0000000..e8f335b
 2703         -
-- /dev/null
        3267  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 2704   3268   
@@ -0,0 +1,4 @@
        3269  +
AWS4-HMAC-SHA256
        3270  +
20150830T123600Z
        3271  +
20150830/us-east-1/service/aws4_request
        3272  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2705   3273   
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
 2706   3274   
similarity index 100%
 2707   3275   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 2708   3276   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 2709   3277   
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
 2710   3278   
similarity index 99%
 2711   3279   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 2712   3280   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2713   3281   
index fc4bce6..0db1df1 100644
 2714   3282   
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
 2715   3283   
new file mode 100644
 2716   3284   
index 0000000..c218fdf
 2717         -
-- /dev/null
        3285  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 2718   3286   
@@ -0,0 +1,11 @@
        3287  +
POST
        3288  +
/
        3289  +
        3290  +
content-length:13
        3291  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3292  +
host:example.amazonaws.com
        3293  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3294  +
x-amz-date:20150830T123600Z
        3295  +
        3296  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3297  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2719   3298   
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
 2720   3299   
new file mode 100644
 2721   3300   
index 0000000..836aa8b
 2722         -
-- /dev/null
        3301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 2723   3302   
@@ -0,0 +1 @@
        3303  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 2724   3304   
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
 2725   3305   
new file mode 100644
 2726   3306   
index 0000000..9262d53
 2727         -
-- /dev/null
        3307  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 2728   3308   
@@ -0,0 +1,9 @@
        3309  +
POST / HTTP/1.1
        3310  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3311  +
Host:example.amazonaws.com
        3312  +
Content-Length:13
        3313  +
X-Amz-Date:20150830T123600Z
        3314  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3315  +
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
        3316  +
        3317  +
Param1=value1
              \
 No newline at end of file
 2729   3318   
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
 2730   3319   
new file mode 100644
 2731   3320   
index 0000000..ddbdccc
 2732         -
-- /dev/null
        3321  +
++ 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
 2733   3322   
@@ -0,0 +1,4 @@
        3323  +
AWS4-HMAC-SHA256
        3324  +
20150830T123600Z
        3325  +
20150830/us-east-1/service/aws4_request
        3326  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 2734   3327   
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
 2735   3328   
new file mode 100644
 2736   3329   
index 0000000..596a579
 2737         -
-- /dev/null
        3330  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 2738   3331   
@@ -0,0 +1,9 @@
        3332  +
POST
        3333  +
/
        3334  +
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
        3335  +
content-length:13
        3336  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3337  +
host:example.amazonaws.com
        3338  +
        3339  +
content-length;content-type;host
        3340  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2739   3341   
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
 2740   3342   
new file mode 100644
 2741   3343   
index 0000000..bc85cd8
 2742         -
-- /dev/null
        3344  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 2743   3345   
@@ -0,0 +1 @@
        3346  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 2744   3347   
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
 2745   3348   
new file mode 100644
 2746   3349   
index 0000000..16b59e5
 2747         -
-- /dev/null
        3350  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 2748   3351   
@@ -0,0 +1,6 @@
        3352  +
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
        3353  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3354  +
Host:example.amazonaws.com
        3355  +
Content-Length:13
        3356  +
        3357  +
Param1=value1
              \
 No newline at end of file
 2749   3358   
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
 2750   3359   
new file mode 100644
 2751   3360   
index 0000000..50074af
 2752         -
-- /dev/null
        3361  +
++ 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
 2753   3362   
@@ -0,0 +1,4 @@
        3363  +
AWS4-HMAC-SHA256
        3364  +
20150830T123600Z
        3365  +
20150830/us-east-1/service/aws4_request
        3366  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 2754   3367   
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
 2755   3368   
similarity index 89%
 2756   3369   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 2757   3370   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2758   3371   
index b711c25..8289eaa 100644
 2759   3372   
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
 2760   3373   
similarity index 99%
 2761   3374   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 2762   3375   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 2763   3376   
index fc4bce6..0db1df1 100644
 2764   3377   
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
 2765   3378   
new file mode 100644
 2766   3379   
index 0000000..4d116a5
 2767         -
-- /dev/null
        3380  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 2768   3381   
@@ -0,0 +1,11 @@
        3382  +
POST
        3383  +
/
        3384  +
        3385  +
content-length:13
        3386  +
content-type:application/x-www-form-urlencoded
        3387  +
host:example.amazonaws.com
        3388  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3389  +
x-amz-date:20150830T123600Z
        3390  +
        3391  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3392  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2769   3393   
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
 2770   3394   
new file mode 100644
 2771   3395   
index 0000000..0d2ac37
 2772         -
-- /dev/null
        3396  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 2773   3397   
@@ -0,0 +1 @@
        3398  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 2774   3399   
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
 2775   3400   
new file mode 100644
 2776   3401   
index 0000000..bd5e49c
 2777         -
-- /dev/null
        3402  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 2778   3403   
@@ -0,0 +1,9 @@
        3404  +
POST / HTTP/1.1
        3405  +
Content-Type:application/x-www-form-urlencoded
        3406  +
Host:example.amazonaws.com
        3407  +
Content-Length:13
        3408  +
X-Amz-Date:20150830T123600Z
        3409  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3410  +
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
        3411  +
        3412  +
Param1=value1
              \
 No newline at end of file
 2779   3413   
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
 2780   3414   
new file mode 100644
 2781   3415   
index 0000000..f1c599c
 2782         -
-- /dev/null
        3416  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 2783   3417   
@@ -0,0 +1,4 @@
        3418  +
AWS4-HMAC-SHA256
        3419  +
20150830T123600Z
        3420  +
20150830/us-east-1/service/aws4_request
        3421  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 2784   3422   
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
 2785   3423   
new file mode 100644
 2786   3424   
index 0000000..1fc1bb7
 2787         -
-- /dev/null
        3425  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 2788   3426   
@@ -0,0 +1,9 @@
        3427  +
POST
        3428  +
/
        3429  +
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
        3430  +
content-length:13
        3431  +
content-type:application/x-www-form-urlencoded
        3432  +
host:example.amazonaws.com
        3433  +
        3434  +
content-length;content-type;host
        3435  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2789   3436   
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
 2790   3437   
new file mode 100644
 2791   3438   
index 0000000..98c91b3
 2792         -
-- /dev/null
        3439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 2793   3440   
@@ -0,0 +1 @@
        3441  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 2794   3442   
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
 2795   3443   
new file mode 100644
 2796   3444   
index 0000000..055cd7a
 2797         -
-- /dev/null
        3445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 2798   3446   
@@ -0,0 +1,6 @@
        3447  +
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
        3448  +
Content-Type:application/x-www-form-urlencoded
        3449  +
Host:example.amazonaws.com
        3450  +
Content-Length:13
        3451  +
        3452  +
Param1=value1
              \
 No newline at end of file
 2799   3453   
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
 2800   3454   
new file mode 100644
 2801   3455   
index 0000000..db7fc27
 2802         -
-- /dev/null
        3456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 2803   3457   
@@ -0,0 +1,4 @@
        3458  +
AWS4-HMAC-SHA256
        3459  +
20150830T123600Z
        3460  +
20150830/us-east-1/service/aws4_request
        3461  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 2804   3462   
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
 2805   3463   
similarity index 88%
 2806   3464   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 2807   3465   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 2808   3466   
index 0091102..760b2d3 100644
 2809   3467   
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
 2810   3468   
new file mode 100644
 2811   3469   
index 0000000..0468d80
 2812         -
-- /dev/null
        3470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 2813   3471   
@@ -0,0 +1,12 @@
        3472  +
{
        3473  +
    "credentials": {
        3474  +
        "access_key_id": "AKIDEXAMPLE",
        3475  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3476  +
    },
        3477  +
    "expiration_in_seconds": 3600,
        3478  +
    "normalize": true,
        3479  +
    "region": "us-east-1",
        3480  +
    "service": "service",
        3481  +
    "sign_body": false,
        3482  +
    "timestamp": "2015-08-30T12:36:00Z"
        3483  +
}
              \
 No newline at end of file
 2814   3484   
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
 2815   3485   
similarity index 99%
 2816   3486   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 2817   3487   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 2818   3488   
index ccb5f43..1bc448e 100644
 2819   3489   
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
 2820   3490   
new file mode 100644
 2821   3491   
index 0000000..489c182
 2822         -
-- /dev/null
        3492  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 2823   3493   
@@ -0,0 +1 @@
        3494  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 2824   3495   
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
 2825   3496   
new file mode 100644
 2826   3497   
index 0000000..e1b8dbf
 2827         -
-- /dev/null
        3498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 2828   3499   
@@ -0,0 +1,9 @@
        3500  +
GET / HTTP/1.1
        3501  +
Host:example.amazonaws.com
        3502  +
My-Header1:value2
        3503  +
My-Header1:value2
        3504  +
My-Header1:value1
        3505  +
X-Amz-Date:20150830T123600Z
        3506  +
X-Amz-Region-Set:us-east-1
        3507  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3508  +
 2829   3509   
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
 2830   3510   
similarity index 99%
 2831   3511   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 2832   3512   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 2833   3513   
index 8783461..bfc4619 100644
 2834   3514   
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
 2835   3515   
new file mode 100644
 2836   3516   
index 0000000..379dcb2
 2837         -
-- /dev/null
        3517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 2838   3518   
@@ -0,0 +1,4 @@
        3519  +
{
        3520  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3521  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3522  +
}
 2839   3523   
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
 2840   3524   
similarity index 99%
 2841   3525   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 2842   3526   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 2843   3527   
index 9561297..c05c3f5 100644
 2844   3528   
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
 2845   3529   
new file mode 100644
 2846   3530   
index 0000000..de9a4c3
 2847         -
-- /dev/null
        3531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 2848   3532   
@@ -0,0 +1 @@
        3533  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 2849   3534   
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
 2850   3535   
new file mode 100644
 2851   3536   
index 0000000..6c6b8c4
 2852         -
-- /dev/null
        3537  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 2853   3538   
@@ -0,0 +1,6 @@
        3539  +
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
        3540  +
Host:example.amazonaws.com
        3541  +
My-Header1:value2
        3542  +
My-Header1:value2
        3543  +
My-Header1:value1
        3544  +
 2854   3545   
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
 2855   3546   
similarity index 99%
 2856   3547   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 2857   3548   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 2858   3549   
index 3140f6f..4eef106 100644
 2859   3550   
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
 2860   3551   
similarity index 78%
 2861   3552   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 2862   3553   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 2863   3554   
index 08a0364..40455ce 100644
 2864         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 2865   3556   
@@ -1,6 +1,5 @@
 2866   3557   
GET / HTTP/1.1
 2867   3558   
Host:example.amazonaws.com
 2868   3559   
My-Header1:value2
 2869   3560   
My-Header1:value2
 2870   3561   
My-Header1:value1
 2871         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2872   3562   
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
 2873   3563   
new file mode 100644
 2874   3564   
index 0000000..0468d80
 2875         -
-- /dev/null
        3565  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 2876   3566   
@@ -0,0 +1,12 @@
        3567  +
{
        3568  +
    "credentials": {
        3569  +
        "access_key_id": "AKIDEXAMPLE",
        3570  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3571  +
    },
        3572  +
    "expiration_in_seconds": 3600,
        3573  +
    "normalize": true,
        3574  +
    "region": "us-east-1",
        3575  +
    "service": "service",
        3576  +
    "sign_body": false,
        3577  +
    "timestamp": "2015-08-30T12:36:00Z"
        3578  +
}
              \
 No newline at end of file
 2877   3579   
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
 2878   3580   
new file mode 100644
 2879   3581   
index 0000000..69526cd
 2880         -
-- /dev/null
        3582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 2881   3583   
@@ -0,0 +1,10 @@
        3584  +
GET
        3585  +
/
        3586  +
        3587  +
host:example.amazonaws.com
        3588  +
my-header1:value1 value2 value3
        3589  +
x-amz-date:20150830T123600Z
        3590  +
x-amz-region-set:us-east-1
        3591  +
        3592  +
host;my-header1;x-amz-date;x-amz-region-set
        3593  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2882   3594   
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
 2883   3595   
new file mode 100644
 2884   3596   
index 0000000..d51b4f3
 2885         -
-- /dev/null
        3597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 2886   3598   
@@ -0,0 +1 @@
        3599  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 2887   3600   
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
 2888   3601   
new file mode 100644
 2889   3602   
index 0000000..8131420
 2890         -
-- /dev/null
        3603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 2891   3604   
@@ -0,0 +1,9 @@
        3605  +
GET / HTTP/1.1
        3606  +
Host:example.amazonaws.com
        3607  +
My-Header1:value1
        3608  +
  value2
        3609  +
     value3
        3610  +
X-Amz-Date:20150830T123600Z
        3611  +
X-Amz-Region-Set:us-east-1
        3612  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3613  +
 2892   3614   
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
 2893   3615   
new file mode 100644
 2894   3616   
index 0000000..e4d99fa
 2895         -
-- /dev/null
        3617  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 2896   3618   
@@ -0,0 +1,4 @@
        3619  +
AWS4-ECDSA-P256-SHA256
        3620  +
20150830T123600Z
        3621  +
20150830/service/aws4_request
        3622  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 2897   3623   
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
 2898   3624   
new file mode 100644
 2899   3625   
index 0000000..379dcb2
 2900         -
-- /dev/null
        3626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 2901   3627   
@@ -0,0 +1,4 @@
        3628  +
{
        3629  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3630  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3631  +
}
 2902   3632   
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
 2903   3633   
new file mode 100644
 2904   3634   
index 0000000..3c4d52f
 2905         -
-- /dev/null
        3635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 2906   3636   
@@ -0,0 +1,8 @@
        3637  +
GET
        3638  +
/
        3639  +
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
        3640  +
host:example.amazonaws.com
        3641  +
my-header1:value1 value2 value3
        3642  +
        3643  +
host;my-header1
        3644  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2907   3645   
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
 2908   3646   
new file mode 100644
 2909   3647   
index 0000000..4e63f9a
 2910         -
-- /dev/null
        3648  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 2911   3649   
@@ -0,0 +1 @@
        3650  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 2912   3651   
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
 2913   3652   
new file mode 100644
 2914   3653   
index 0000000..adf1f09
 2915         -
-- /dev/null
        3654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 2916   3655   
@@ -0,0 +1,6 @@
        3656  +
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
        3657  +
Host:example.amazonaws.com
        3658  +
My-Header1:value1
        3659  +
  value2
        3660  +
     value3
        3661  +
 2917   3662   
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
 2918   3663   
new file mode 100644
 2919   3664   
index 0000000..e085407
 2920         -
-- /dev/null
        3665  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 2921   3666   
@@ -0,0 +1,4 @@
        3667  +
AWS4-ECDSA-P256-SHA256
        3668  +
20150830T123600Z
        3669  +
20150830/service/aws4_request
        3670  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 2922   3671   
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
 2923   3672   
new file mode 100644
 2924   3673   
index 0000000..b5026cd
 2925         -
-- /dev/null
        3674  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 2926   3675   
@@ -0,0 +1,5 @@
        3676  +
GET / HTTP/1.1
        3677  +
Host:example.amazonaws.com
        3678  +
My-Header1:value1
        3679  +
  value2
        3680  +
     value3
 2927   3681   
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
 2928   3682   
new file mode 100644
 2929   3683   
index 0000000..0468d80
 2930         -
-- /dev/null
        3684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 2931   3685   
@@ -0,0 +1,12 @@
        3686  +
{
        3687  +
    "credentials": {
        3688  +
        "access_key_id": "AKIDEXAMPLE",
        3689  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3690  +
    },
        3691  +
    "expiration_in_seconds": 3600,
        3692  +
    "normalize": true,
        3693  +
    "region": "us-east-1",
        3694  +
    "service": "service",
        3695  +
    "sign_body": false,
        3696  +
    "timestamp": "2015-08-30T12:36:00Z"
        3697  +
}
              \
 No newline at end of file
 2932   3698   
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
 2933   3699   
similarity index 99%
 2934   3700   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 2935   3701   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 2936   3702   
index 9375193..533afdb 100644
 2937   3703   
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
 2938   3704   
new file mode 100644
 2939   3705   
index 0000000..057b426
 2940         -
-- /dev/null
        3706  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 2941   3707   
@@ -0,0 +1 @@
        3708  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 2942   3709   
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
 2943   3710   
new file mode 100644
 2944   3711   
index 0000000..4e4ccf0
 2945         -
-- /dev/null
        3712  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 2946   3713   
@@ -0,0 +1,10 @@
        3714  +
GET / HTTP/1.1
        3715  +
Host:example.amazonaws.com
        3716  +
My-Header1:value4
        3717  +
My-Header1:value1
        3718  +
My-Header1:value3
        3719  +
My-Header1:value2
        3720  +
X-Amz-Date:20150830T123600Z
        3721  +
X-Amz-Region-Set:us-east-1
        3722  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        3723  +
 2947   3724   
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
 2948   3725   
similarity index 99%
 2949   3726   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 2950   3727   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 2951   3728   
index 6400baf..e68c952 100644
 2952   3729   
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
 2953   3730   
new file mode 100644
 2954   3731   
index 0000000..379dcb2
 2955         -
-- /dev/null
        3732  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 2956   3733   
@@ -0,0 +1,4 @@
        3734  +
{
        3735  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3736  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3737  +
}
 2957   3738   
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
 2958   3739   
similarity index 99%
 2959   3740   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 2960   3741   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 2961   3742   
index ecf494a..68450fe 100644
 2962   3743   
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
 2963   3744   
new file mode 100644
 2964   3745   
index 0000000..9df2eb3
 2965         -
-- /dev/null
        3746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 2966   3747   
@@ -0,0 +1 @@
        3748  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 2967   3749   
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
 2968   3750   
new file mode 100644
 2969   3751   
index 0000000..62f8cb7
 2970         -
-- /dev/null
        3752  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 2971   3753   
@@ -0,0 +1,7 @@
        3754  +
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
        3755  +
Host:example.amazonaws.com
        3756  +
My-Header1:value4
        3757  +
My-Header1:value1
        3758  +
My-Header1:value3
        3759  +
My-Header1:value2
        3760  +
 2972   3761   
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
 2973   3762   
similarity index 99%
 2974   3763   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 2975   3764   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 2976   3765   
index b584179..2bcf7b1 100644
 2977   3766   
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
 2978   3767   
similarity index 80%
 2979   3768   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 2980   3769   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 2981   3770   
index f7bd9e6..2c6f49d 100644
 2982         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        3771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 2983   3772   
@@ -1,7 +1,6 @@
 2984   3773   
GET / HTTP/1.1
 2985   3774   
Host:example.amazonaws.com
 2986   3775   
My-Header1:value4
 2987   3776   
My-Header1:value1
 2988   3777   
My-Header1:value3
 2989   3778   
My-Header1:value2
 2990         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2991   3779   
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
 2992   3780   
new file mode 100644
 2993   3781   
index 0000000..0468d80
 2994         -
-- /dev/null
        3782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 2995   3783   
@@ -0,0 +1,12 @@
        3784  +
{
        3785  +
    "credentials": {
        3786  +
        "access_key_id": "AKIDEXAMPLE",
        3787  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3788  +
    },
        3789  +
    "expiration_in_seconds": 3600,
        3790  +
    "normalize": true,
        3791  +
    "region": "us-east-1",
        3792  +
    "service": "service",
        3793  +
    "sign_body": false,
        3794  +
    "timestamp": "2015-08-30T12:36:00Z"
        3795  +
}
              \
 No newline at end of file
 2996   3796   
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
 2997   3797   
similarity index 99%
 2998   3798   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 2999   3799   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3000   3800   
index e91e952..94b6be5 100644
 3001   3801   
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
 3002   3802   
new file mode 100644
 3003   3803   
index 0000000..bf8c3cb
 3004         -
-- /dev/null
        3804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3005   3805   
@@ -0,0 +1 @@
        3806  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3006   3807   
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
 3007   3808   
new file mode 100644
 3008   3809   
index 0000000..f7f054d
 3009         -
-- /dev/null
        3810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3010   3811   
@@ -0,0 +1,8 @@
        3812  +
GET / HTTP/1.1
        3813  +
Host:example.amazonaws.com
        3814  +
My-Header1: value1
        3815  +
My-Header2: "a   b   c"
        3816  +
X-Amz-Date:20150830T123600Z
        3817  +
X-Amz-Region-Set:us-east-1
        3818  +
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
        3819  +
 3011   3820   
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
 3012   3821   
similarity index 99%
 3013   3822   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3014   3823   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3015   3824   
index 0e407d8..a2c9c05 100644
 3016   3825   
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
 3017   3826   
new file mode 100644
 3018   3827   
index 0000000..379dcb2
 3019         -
-- /dev/null
        3828  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3020   3829   
@@ -0,0 +1,4 @@
        3830  +
{
        3831  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3832  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3833  +
}
 3021   3834   
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
 3022   3835   
similarity index 99%
 3023   3836   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3024   3837   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3025   3838   
index 8a3b042..3a51150 100644
 3026   3839   
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
 3027   3840   
new file mode 100644
 3028   3841   
index 0000000..0033053
 3029         -
-- /dev/null
        3842  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3030   3843   
@@ -0,0 +1 @@
        3844  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3031   3845   
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
 3032   3846   
new file mode 100644
 3033   3847   
index 0000000..1537888
 3034         -
-- /dev/null
        3848  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3035   3849   
@@ -0,0 +1,5 @@
        3850  +
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
        3851  +
Host:example.amazonaws.com
        3852  +
My-Header1: value1
        3853  +
My-Header2: "a   b   c"
        3854  +
 3036   3855   
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
 3037   3856   
similarity index 99%
 3038   3857   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3039   3858   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3040   3859   
index 5eead25..633dc1f 100644
 3041   3860   
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
 3042   3861   
similarity index 75%
 3043   3862   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3044   3863   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3045   3864   
index 901f36c..ad1ea98 100644
 3046         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        3865  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3047   3866   
@@ -1,5 +1,4 @@
 3048   3867   
GET / HTTP/1.1
 3049   3868   
Host:example.amazonaws.com
 3050   3869   
My-Header1: value1
 3051   3870   
My-Header2: "a   b   c"
 3052         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3053   3871   
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
 3054   3872   
new file mode 100644
 3055   3873   
index 0000000..0468d80
 3056         -
-- /dev/null
        3874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3057   3875   
@@ -0,0 +1,12 @@
        3876  +
{
        3877  +
    "credentials": {
        3878  +
        "access_key_id": "AKIDEXAMPLE",
        3879  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3880  +
    },
        3881  +
    "expiration_in_seconds": 3600,
        3882  +
    "normalize": true,
        3883  +
    "region": "us-east-1",
        3884  +
    "service": "service",
        3885  +
    "sign_body": false,
        3886  +
    "timestamp": "2015-08-30T12:36:00Z"
        3887  +
}
              \
 No newline at end of file
 3058   3888   
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
 3059   3889   
similarity index 99%
 3060   3890   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3061   3891   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3062   3892   
index 47e7128..76db73d 100644
 3063   3893   
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
 3064   3894   
new file mode 100644
 3065   3895   
index 0000000..cbd6ae2
 3066         -
-- /dev/null
        3896  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3067   3897   
@@ -0,0 +1 @@
        3898  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3068   3899   
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
 3069   3900   
new file mode 100644
 3070   3901   
index 0000000..a343fcf
 3071         -
-- /dev/null
        3902  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3072   3903   
@@ -0,0 +1,6 @@
        3904  +
GET /example/.. HTTP/1.1
        3905  +
Host:example.amazonaws.com
        3906  +
X-Amz-Date:20150830T123600Z
        3907  +
X-Amz-Region-Set:us-east-1
        3908  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        3909  +
 3073   3910   
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
 3074   3911   
similarity index 99%
 3075   3912   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3076   3913   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3077   3914   
index 95d7219..600f1d8 100644
 3078   3915   
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
 3079   3916   
new file mode 100644
 3080   3917   
index 0000000..379dcb2
 3081         -
-- /dev/null
        3918  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3082   3919   
@@ -0,0 +1,4 @@
        3920  +
{
        3921  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3922  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3923  +
}
 3083   3924   
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
 3084   3925   
similarity index 99%
 3085   3926   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3086   3927   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3087   3928   
index a34ea26..779c51c 100644
 3088   3929   
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
 3089   3930   
new file mode 100644
 3090   3931   
index 0000000..3cc88e6
 3091         -
-- /dev/null
        3932  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3092   3933   
@@ -0,0 +1 @@
        3934  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3093   3935   
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
 3094   3936   
new file mode 100644
 3095   3937   
index 0000000..f68dde8
 3096         -
-- /dev/null
        3938  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3097   3939   
@@ -0,0 +1,3 @@
        3940  +
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
        3941  +
Host:example.amazonaws.com
        3942  +
 3098   3943   
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
 3099   3944   
similarity index 99%
 3100   3945   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3101   3946   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3102   3947   
index 48f855c..6e29a7e 100644
 3103   3948   
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
 3104   3949   
similarity index 65%
 3105   3950   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3106   3951   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3107   3952   
index 9d6d7ca..6aa9f99 100644
 3108         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        3953  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3109   3954   
@@ -1,3 +1,2 @@
 3110   3955   
GET /example/.. HTTP/1.1
 3111   3956   
Host:example.amazonaws.com
 3112         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3113   3957   
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
 3114   3958   
new file mode 100644
 3115   3959   
index 0000000..0468d80
 3116         -
-- /dev/null
        3960  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3117   3961   
@@ -0,0 +1,12 @@
        3962  +
{
        3963  +
    "credentials": {
        3964  +
        "access_key_id": "AKIDEXAMPLE",
        3965  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3966  +
    },
        3967  +
    "expiration_in_seconds": 3600,
        3968  +
    "normalize": true,
        3969  +
    "region": "us-east-1",
        3970  +
    "service": "service",
        3971  +
    "sign_body": false,
        3972  +
    "timestamp": "2015-08-30T12:36:00Z"
        3973  +
}
              \
 No newline at end of file
 3118   3974   
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
 3119   3975   
similarity index 99%
 3120   3976   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3121   3977   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3122   3978   
index 47e7128..76db73d 100644
 3123   3979   
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
 3124   3980   
new file mode 100644
 3125   3981   
index 0000000..f7a7ebe
 3126         -
-- /dev/null
        3982  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3127   3983   
@@ -0,0 +1 @@
        3984  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3128   3985   
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
 3129   3986   
new file mode 100644
 3130   3987   
index 0000000..9d2c50d
 3131         -
-- /dev/null
        3988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3132   3989   
@@ -0,0 +1,6 @@
        3990  +
GET /example1/example2/../.. HTTP/1.1
        3991  +
Host:example.amazonaws.com
        3992  +
X-Amz-Date:20150830T123600Z
        3993  +
X-Amz-Region-Set:us-east-1
        3994  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        3995  +
 3133   3996   
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
 3134   3997   
similarity index 99%
 3135   3998   
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
 3136   3999   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3137   4000   
index 95d7219..600f1d8 100644
 3138   4001   
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
 3139   4002   
new file mode 100644
 3140   4003   
index 0000000..379dcb2
 3141         -
-- /dev/null
        4004  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3142   4005   
@@ -0,0 +1,4 @@
        4006  +
{
        4007  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4008  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4009  +
}
 3143   4010   
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
 3144   4011   
similarity index 99%
 3145   4012   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3146   4013   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3147   4014   
index a34ea26..779c51c 100644
 3148   4015   
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
 3149   4016   
new file mode 100644
 3150   4017   
index 0000000..45ef286
 3151         -
-- /dev/null
        4018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3152   4019   
@@ -0,0 +1 @@
        4020  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3153   4021   
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
 3154   4022   
new file mode 100644
 3155   4023   
index 0000000..0d16f66
 3156         -
-- /dev/null
        4024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3157   4025   
@@ -0,0 +1,3 @@
        4026  +
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
        4027  +
Host:example.amazonaws.com
        4028  +
 3158   4029   
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
 3159   4030   
similarity index 99%
 3160   4031   
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
 3161   4032   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3162   4033   
index 48f855c..6e29a7e 100644
 3163   4034   
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
 3164   4035   
similarity index 70%
 3165   4036   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3166   4037   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3167   4038   
index cfd4e8b..a856c10 100644
 3168         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3169   4040   
@@ -1,3 +1,2 @@
 3170   4041   
GET /example1/example2/../.. HTTP/1.1
 3171   4042   
Host:example.amazonaws.com
 3172         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3173   4043   
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
 3174   4044   
new file mode 100644
 3175   4045   
index 0000000..7bee5c7
 3176         -
-- /dev/null
        4046  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3177   4047   
@@ -0,0 +1,12 @@
        4048  +
{
        4049  +
    "credentials": {
        4050  +
        "access_key_id": "AKIDEXAMPLE",
        4051  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4052  +
    },
        4053  +
    "expiration_in_seconds": 3600,
        4054  +
    "normalize": false,
        4055  +
    "region": "us-east-1",
        4056  +
    "service": "service",
        4057  +
    "sign_body": false,
        4058  +
    "timestamp": "2015-08-30T12:36:00Z"
        4059  +
}
              \
 No newline at end of file
 3178   4060   
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
 3179   4061   
similarity index 99%
 3180   4062   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3181   4063   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3182   4064   
index 5e1d1cf..e4e6d57 100644
 3183   4065   
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
 3184   4066   
new file mode 100644
 3185   4067   
index 0000000..2d1b47c
 3186         -
-- /dev/null
        4068  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3187   4069   
@@ -0,0 +1 @@
        4070  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3188   4071   
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
 3189   4072   
new file mode 100644
 3190   4073   
index 0000000..7158179
 3191         -
-- /dev/null
        4074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3192   4075   
@@ -0,0 +1,6 @@
        4076  +
GET /example1/example2/../.. HTTP/1.1
        4077  +
Host:example.amazonaws.com
        4078  +
X-Amz-Date:20150830T123600Z
        4079  +
X-Amz-Region-Set:us-east-1
        4080  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4081  +
 3193   4082   
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
 3194   4083   
similarity index 99%
 3195   4084   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3196   4085   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3197   4086   
index 1cca6cf..db60c8e 100644
 3198   4087   
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
 3199   4088   
new file mode 100644
 3200   4089   
index 0000000..379dcb2
 3201         -
-- /dev/null
        4090  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3202   4091   
@@ -0,0 +1,4 @@
        4092  +
{
        4093  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4094  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4095  +
}
 3203   4096   
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
 3204   4097   
similarity index 99%
 3205   4098   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3206   4099   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3207   4100   
index 95dc104..0d963ba 100644
 3208   4101   
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
 3209   4102   
new file mode 100644
 3210   4103   
index 0000000..ae774e4
 3211         -
-- /dev/null
        4104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3212   4105   
@@ -0,0 +1 @@
        4106  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3213   4107   
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
 3214   4108   
new file mode 100644
 3215   4109   
index 0000000..be6b86e
 3216         -
-- /dev/null
        4110  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3217   4111   
@@ -0,0 +1,3 @@
        4112  +
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
        4113  +
Host:example.amazonaws.com
        4114  +
 3218   4115   
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
 3219   4116   
similarity index 99%
 3220   4117   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3221   4118   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3222   4119   
index 50edce6..fcc70cd 100644
 3223   4120   
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
 3224   4121   
new file mode 100644
 3225   4122   
index 0000000..a856c10
 3226         -
-- /dev/null
        4123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3227   4124   
@@ -0,0 +1,2 @@
        4125  +
GET /example1/example2/../.. HTTP/1.1
        4126  +
Host:example.amazonaws.com
 3228   4127   
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
 3229   4128   
new file mode 100644
 3230   4129   
index 0000000..7bee5c7
 3231         -
-- /dev/null
        4130  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3232   4131   
@@ -0,0 +1,12 @@
        4132  +
{
        4133  +
    "credentials": {
        4134  +
        "access_key_id": "AKIDEXAMPLE",
        4135  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4136  +
    },
        4137  +
    "expiration_in_seconds": 3600,
        4138  +
    "normalize": false,
        4139  +
    "region": "us-east-1",
        4140  +
    "service": "service",
        4141  +
    "sign_body": false,
        4142  +
    "timestamp": "2015-08-30T12:36:00Z"
        4143  +
}
              \
 No newline at end of file
 3233   4144   
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
 3234   4145   
similarity index 99%
 3235   4146   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3236   4147   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3237   4148   
index d6a0abe..22def1a 100644
 3238   4149   
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
 3239   4150   
new file mode 100644
 3240   4151   
index 0000000..9251bad
 3241         -
-- /dev/null
        4152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3242   4153   
@@ -0,0 +1 @@
        4154  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3243   4155   
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
 3244   4156   
new file mode 100644
 3245   4157   
index 0000000..f1bb60f
 3246         -
-- /dev/null
        4158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3247   4159   
@@ -0,0 +1,6 @@
        4160  +
GET /example/.. HTTP/1.1
        4161  +
Host:example.amazonaws.com
        4162  +
X-Amz-Date:20150830T123600Z
        4163  +
X-Amz-Region-Set:us-east-1
        4164  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4165  +
 3248   4166   
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
 3249   4167   
similarity index 99%
 3250   4168   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3251   4169   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3252   4170   
index 4a34e93..5673a20 100644
 3253   4171   
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
 3254   4172   
new file mode 100644
 3255   4173   
index 0000000..379dcb2
 3256         -
-- /dev/null
        4174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3257   4175   
@@ -0,0 +1,4 @@
        4176  +
{
        4177  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4178  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4179  +
}
 3258   4180   
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
 3259   4181   
similarity index 99%
 3260   4182   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3261   4183   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3262   4184   
index b1d123e..a1c22e0 100644
 3263   4185   
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
 3264   4186   
new file mode 100644
 3265   4187   
index 0000000..9f0f686
 3266         -
-- /dev/null
        4188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3267   4189   
@@ -0,0 +1 @@
        4190  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3268   4191   
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
 3269   4192   
new file mode 100644
 3270   4193   
index 0000000..d1d451a
 3271         -
-- /dev/null
        4194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3272   4195   
@@ -0,0 +1,3 @@
        4196  +
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
        4197  +
Host:example.amazonaws.com
        4198  +
 3273   4199   
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
 3274   4200   
similarity index 99%
 3275   4201   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3276   4202   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3277   4203   
index a17f5ab..81b41e8 100644
 3278   4204   
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
 3279   4205   
new file mode 100644
 3280   4206   
index 0000000..6aa9f99
 3281         -
-- /dev/null
        4207  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3282   4208   
@@ -0,0 +1,2 @@
        4209  +
GET /example/.. HTTP/1.1
        4210  +
Host:example.amazonaws.com
 3283   4211   
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
 3284   4212   
new file mode 100644
 3285   4213   
index 0000000..0468d80
 3286         -
-- /dev/null
        4214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3287   4215   
@@ -0,0 +1,12 @@
        4216  +
{
        4217  +
    "credentials": {
        4218  +
        "access_key_id": "AKIDEXAMPLE",
        4219  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4220  +
    },
        4221  +
    "expiration_in_seconds": 3600,
        4222  +
    "normalize": true,
        4223  +
    "region": "us-east-1",
        4224  +
    "service": "service",
        4225  +
    "sign_body": false,
        4226  +
    "timestamp": "2015-08-30T12:36:00Z"
        4227  +
}
              \
 No newline at end of file
 3288   4228   
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
 3289   4229   
similarity index 99%
 3290   4230   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3291   4231   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3292   4232   
index 47e7128..76db73d 100644
 3293   4233   
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
 3294   4234   
new file mode 100644
 3295   4235   
index 0000000..ca6e84e
 3296         -
-- /dev/null
        4236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3297   4237   
@@ -0,0 +1 @@
        4238  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3298   4239   
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
 3299   4240   
new file mode 100644
 3300   4241   
index 0000000..a7c764c
 3301         -
-- /dev/null
        4242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3302   4243   
@@ -0,0 +1,6 @@
        4244  +
GET /./ HTTP/1.1
        4245  +
Host:example.amazonaws.com
        4246  +
X-Amz-Date:20150830T123600Z
        4247  +
X-Amz-Region-Set:us-east-1
        4248  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4249  +
 3303   4250   
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
 3304   4251   
similarity index 99%
 3305   4252   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3306   4253   
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
 3307   4254   
index 95d7219..600f1d8 100644
 3308   4255   
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
 3309   4256   
new file mode 100644
 3310   4257   
index 0000000..379dcb2
 3311         -
-- /dev/null
        4258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3312   4259   
@@ -0,0 +1,4 @@
        4260  +
{
        4261  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4262  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4263  +
}
 3313   4264   
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
 3314   4265   
similarity index 99%
 3315   4266   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3316   4267   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3317   4268   
index a34ea26..779c51c 100644
 3318   4269   
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
 3319   4270   
new file mode 100644
 3320   4271   
index 0000000..4b6ed09
 3321         -
-- /dev/null
        4272  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3322   4273   
@@ -0,0 +1 @@
        4274  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3323   4275   
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
 3324   4276   
new file mode 100644
 3325   4277   
index 0000000..d6c7176
 3326         -
-- /dev/null
        4278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3327   4279   
@@ -0,0 +1,3 @@
        4280  +
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
        4281  +
Host:example.amazonaws.com
        4282  +
 3328   4283   
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
 3329   4284   
similarity index 99%
 3330   4285   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3331   4286   
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
 3332   4287   
index 48f855c..6e29a7e 100644
 3333   4288   
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
 3334   4289   
similarity index 61%
 3335   4290   
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
 3336   4291   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3337   4292   
index f3537b7..2c5ff38 100644
 3338         -
-- 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
        4293  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3339   4294   
@@ -1,3 +1,2 @@
 3340   4295   
GET /./ HTTP/1.1
 3341   4296   
Host:example.amazonaws.com
 3342         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3343   4297   
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
 3344   4298   
new file mode 100644
 3345   4299   
index 0000000..7bee5c7
 3346         -
-- /dev/null
        4300  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3347   4301   
@@ -0,0 +1,12 @@
        4302  +
{
        4303  +
    "credentials": {
        4304  +
        "access_key_id": "AKIDEXAMPLE",
        4305  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4306  +
    },
        4307  +
    "expiration_in_seconds": 3600,
        4308  +
    "normalize": false,
        4309  +
    "region": "us-east-1",
        4310  +
    "service": "service",
        4311  +
    "sign_body": false,
        4312  +
    "timestamp": "2015-08-30T12:36:00Z"
        4313  +
}
              \
 No newline at end of file
 3348   4314   
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
 3349   4315   
similarity index 99%
 3350   4316   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3351   4317   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3352   4318   
index d05303d..9257ac4 100644
 3353   4319   
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
 3354   4320   
new file mode 100644
 3355   4321   
index 0000000..2eb1aa5
 3356         -
-- /dev/null
        4322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3357   4323   
@@ -0,0 +1 @@
        4324  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3358   4325   
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
 3359   4326   
new file mode 100644
 3360   4327   
index 0000000..df3b1da
 3361         -
-- /dev/null
        4328  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3362   4329   
@@ -0,0 +1,6 @@
        4330  +
GET /./ HTTP/1.1
        4331  +
Host:example.amazonaws.com
        4332  +
X-Amz-Date:20150830T123600Z
        4333  +
X-Amz-Region-Set:us-east-1
        4334  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4335  +
 3363   4336   
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
 3364   4337   
similarity index 99%
 3365   4338   
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
 3366   4339   
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
 3367   4340   
index e1bfb39..754b3ed 100644
 3368   4341   
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
 3369   4342   
new file mode 100644
 3370   4343   
index 0000000..379dcb2
 3371         -
-- /dev/null
        4344  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3372   4345   
@@ -0,0 +1,4 @@
        4346  +
{
        4347  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4348  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4349  +
}
 3373   4350   
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
 3374   4351   
similarity index 99%
 3375   4352   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3376   4353   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3377   4354   
index f048d0f..c8edce3 100644
 3378   4355   
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
 3379   4356   
new file mode 100644
 3380   4357   
index 0000000..d3af3b8
 3381         -
-- /dev/null
        4358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3382   4359   
@@ -0,0 +1 @@
        4360  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3383   4361   
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
 3384   4362   
new file mode 100644
 3385   4363   
index 0000000..eb38155
 3386         -
-- /dev/null
        4364  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3387   4365   
@@ -0,0 +1,3 @@
        4366  +
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
        4367  +
Host:example.amazonaws.com
        4368  +
 3388   4369   
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
 3389   4370   
similarity index 99%
 3390   4371   
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
 3391   4372   
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
 3392   4373   
index bfcf245..4f20b8f 100644
 3393   4374   
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
 3394   4375   
new file mode 100644
 3395   4376   
index 0000000..2c5ff38
 3396         -
-- /dev/null
        4377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3397   4378   
@@ -0,0 +1,2 @@
        4379  +
GET /./ HTTP/1.1
        4380  +
Host:example.amazonaws.com
 3398   4381   
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
 3399   4382   
new file mode 100644
 3400   4383   
index 0000000..0468d80
 3401         -
-- /dev/null
        4384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3402   4385   
@@ -0,0 +1,12 @@
        4386  +
{
        4387  +
    "credentials": {
        4388  +
        "access_key_id": "AKIDEXAMPLE",
        4389  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4390  +
    },
        4391  +
    "expiration_in_seconds": 3600,
        4392  +
    "normalize": true,
        4393  +
    "region": "us-east-1",
        4394  +
    "service": "service",
        4395  +
    "sign_body": false,
        4396  +
    "timestamp": "2015-08-30T12:36:00Z"
        4397  +
}
              \
 No newline at end of file
 3403   4398   
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
 3404   4399   
similarity index 99%
 3405   4400   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 3406   4401   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3407   4402   
index 47e7128..76db73d 100644
 3408   4403   
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
 3409   4404   
new file mode 100644
 3410   4405   
index 0000000..0c049ca
 3411         -
-- /dev/null
        4406  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 3412   4407   
@@ -0,0 +1 @@
        4408  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 3413   4409   
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
 3414   4410   
new file mode 100644
 3415   4411   
index 0000000..f4bb1e1
 3416         -
-- /dev/null
        4412  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 3417   4413   
@@ -0,0 +1,6 @@
        4414  +
GET // HTTP/1.1
        4415  +
Host:example.amazonaws.com
        4416  +
X-Amz-Date:20150830T123600Z
        4417  +
X-Amz-Region-Set:us-east-1
        4418  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4419  +
 3418   4420   
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
 3419   4421   
similarity index 99%
 3420   4422   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 3421   4423   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3422   4424   
index 95d7219..600f1d8 100644
 3423   4425   
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
 3424   4426   
new file mode 100644
 3425   4427   
index 0000000..379dcb2
 3426         -
-- /dev/null
        4428  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 3427   4429   
@@ -0,0 +1,4 @@
        4430  +
{
        4431  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4432  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4433  +
}
 3428   4434   
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
 3429   4435   
similarity index 99%
 3430   4436   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 3431   4437   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3432   4438   
index a34ea26..779c51c 100644
 3433   4439   
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
 3434   4440   
new file mode 100644
 3435   4441   
index 0000000..ca52293
 3436         -
-- /dev/null
        4442  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 3437   4443   
@@ -0,0 +1 @@
        4444  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 3438   4445   
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
 3439   4446   
new file mode 100644
 3440   4447   
index 0000000..4a212a9
 3441         -
-- /dev/null
        4448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 3442   4449   
@@ -0,0 +1,3 @@
        4450  +
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
        4451  +
Host:example.amazonaws.com
        4452  +
 3443   4453   
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
 3444   4454   
similarity index 99%
 3445   4455   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 3446   4456   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3447   4457   
index 48f855c..6e29a7e 100644
 3448   4458   
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
 3449   4459   
similarity index 61%
 3450   4460   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 3451   4461   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3452   4462   
index ede8e3c..25bc21e 100644
 3453         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        4463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3454   4464   
@@ -1,3 +1,2 @@
 3455   4465   
GET // HTTP/1.1
 3456   4466   
Host:example.amazonaws.com
 3457         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3458   4467   
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
 3459   4468   
new file mode 100644
 3460   4469   
index 0000000..0468d80
 3461         -
-- /dev/null
        4470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 3462   4471   
@@ -0,0 +1,12 @@
        4472  +
{
        4473  +
    "credentials": {
        4474  +
        "access_key_id": "AKIDEXAMPLE",
        4475  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4476  +
    },
        4477  +
    "expiration_in_seconds": 3600,
        4478  +
    "normalize": true,
        4479  +
    "region": "us-east-1",
        4480  +
    "service": "service",
        4481  +
    "sign_body": false,
        4482  +
    "timestamp": "2015-08-30T12:36:00Z"
        4483  +
}
              \
 No newline at end of file
 3463   4484   
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
 3464   4485   
similarity index 99%
 3465   4486   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3466   4487   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3467   4488   
index 2e36c20..a51f1ba 100644
 3468   4489   
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
 3469   4490   
new file mode 100644
 3470   4491   
index 0000000..f5c871f
 3471         -
-- /dev/null
        4492  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 3472   4493   
@@ -0,0 +1 @@
        4494  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 3473   4495   
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
 3474   4496   
new file mode 100644
 3475   4497   
index 0000000..bda4718
 3476         -
-- /dev/null
        4498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 3477   4499   
@@ -0,0 +1,6 @@
        4500  +
GET /./example HTTP/1.1
        4501  +
Host:example.amazonaws.com
        4502  +
X-Amz-Date:20150830T123600Z
        4503  +
X-Amz-Region-Set:us-east-1
        4504  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        4505  +
 3478   4506   
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
 3479   4507   
similarity index 99%
 3480   4508   
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
 3481   4509   
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
 3482   4510   
index cd30e8b..2ffe879 100644
 3483   4511   
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
 3484   4512   
new file mode 100644
 3485   4513   
index 0000000..379dcb2
 3486         -
-- /dev/null
        4514  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 3487   4515   
@@ -0,0 +1,4 @@
        4516  +
{
        4517  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4518  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4519  +
}
 3488   4520   
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
 3489   4521   
similarity index 99%
 3490   4522   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3491   4523   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3492   4524   
index 77cf28d..45151ea 100644
 3493   4525   
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
 3494   4526   
new file mode 100644
 3495   4527   
index 0000000..11ad7bf
 3496         -
-- /dev/null
        4528  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 3497   4529   
@@ -0,0 +1 @@
        4530  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 3498   4531   
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
 3499   4532   
new file mode 100644
 3500   4533   
index 0000000..a7537b1
 3501         -
-- /dev/null
        4534  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 3502   4535   
@@ -0,0 +1,3 @@
        4536  +
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
        4537  +
Host:example.amazonaws.com
        4538  +
 3503   4539   
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
 3504   4540   
similarity index 99%
 3505   4541   
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
 3506   4542   
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
 3507   4543   
index 49d9b24..b486672 100644
 3508   4544   
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
 3509   4545   
similarity index 65%
 3510   4546   
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
 3511   4547   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3512   4548   
index 3c91071..5d919c9 100644
 3513         -
-- 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
        4549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3514   4550   
@@ -1,3 +1,2 @@
 3515   4551   
GET /./example HTTP/1.1
 3516   4552   
Host:example.amazonaws.com
 3517         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3518   4553   
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
 3519   4554   
new file mode 100644
 3520   4555   
index 0000000..7bee5c7
 3521         -
-- /dev/null
        4556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 3522   4557   
@@ -0,0 +1,12 @@
        4558  +
{
        4559  +
    "credentials": {
        4560  +
        "access_key_id": "AKIDEXAMPLE",
        4561  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4562  +
    },
        4563  +
    "expiration_in_seconds": 3600,
        4564  +
    "normalize": false,
        4565  +
    "region": "us-east-1",
        4566  +
    "service": "service",
        4567  +
    "sign_body": false,
        4568  +
    "timestamp": "2015-08-30T12:36:00Z"
        4569  +
}
              \
 No newline at end of file
 3523   4570   
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
 3524   4571   
similarity index 99%
 3525   4572   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3526   4573   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3527   4574   
index 4444842..2355a69 100644
 3528   4575   
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
 3529   4576   
new file mode 100644
 3530   4577   
index 0000000..9c8f737
 3531         -
-- /dev/null
        4578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 3532   4579   
@@ -0,0 +1 @@
        4580  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 3533   4581   
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
 3534   4582   
new file mode 100644
 3535   4583   
index 0000000..aa5980d
 3536         -
-- /dev/null
        4584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 3537   4585   
@@ -0,0 +1,6 @@
        4586  +
GET /./example HTTP/1.1
        4587  +
Host:example.amazonaws.com
        4588  +
X-Amz-Date:20150830T123600Z
        4589  +
X-Amz-Region-Set:us-east-1
        4590  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        4591  +
 3538   4592   
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
 3539   4593   
similarity index 99%
 3540   4594   
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
 3541   4595   
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
 3542   4596   
index cc63510..d056816 100644
 3543   4597   
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
 3544   4598   
new file mode 100644
 3545   4599   
index 0000000..379dcb2
 3546         -
-- /dev/null
        4600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 3547   4601   
@@ -0,0 +1,4 @@
        4602  +
{
        4603  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4604  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4605  +
}
 3548   4606   
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
 3549   4607   
similarity index 99%
 3550   4608   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3551   4609   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3552   4610   
index ed2cb2d..df9928e 100644
 3553   4611   
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
 3554   4612   
new file mode 100644
 3555   4613   
index 0000000..bb4d86b
 3556         -
-- /dev/null
        4614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 3557   4615   
@@ -0,0 +1 @@
        4616  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 3558   4617   
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
 3559   4618   
new file mode 100644
 3560   4619   
index 0000000..0061136
 3561         -
-- /dev/null
        4620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 3562   4621   
@@ -0,0 +1,3 @@
        4622  +
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
        4623  +
Host:example.amazonaws.com
        4624  +
 3563   4625   
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
 3564   4626   
similarity index 99%
 3565   4627   
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
 3566   4628   
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
 3567   4629   
index c9f3b6d..418f2d6 100644
 3568   4630   
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
 3569   4631   
new file mode 100644
 3570   4632   
index 0000000..5d919c9
 3571         -
-- /dev/null
        4633  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 3572   4634   
@@ -0,0 +1,2 @@
        4635  +
GET /./example HTTP/1.1
        4636  +
Host:example.amazonaws.com
 3573   4637   
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
 3574   4638   
new file mode 100644
 3575   4639   
index 0000000..7bee5c7
 3576         -
-- /dev/null
        4640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 3577   4641   
@@ -0,0 +1,12 @@
        4642  +
{
        4643  +
    "credentials": {
        4644  +
        "access_key_id": "AKIDEXAMPLE",
        4645  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4646  +
    },
        4647  +
    "expiration_in_seconds": 3600,
        4648  +
    "normalize": false,
        4649  +
    "region": "us-east-1",
        4650  +
    "service": "service",
        4651  +
    "sign_body": false,
        4652  +
    "timestamp": "2015-08-30T12:36:00Z"
        4653  +
}
              \
 No newline at end of file
 3578   4654   
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
 3579   4655   
similarity index 99%
 3580   4656   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 3581   4657   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 3582   4658   
index 8a4d33b..5f809da 100644
 3583   4659   
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
 3584   4660   
new file mode 100644
 3585   4661   
index 0000000..60179e9
 3586         -
-- /dev/null
        4662  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 3587   4663   
@@ -0,0 +1 @@
        4664  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 3588   4665   
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
 3589   4666   
new file mode 100644
 3590   4667   
index 0000000..72bf1b7
 3591         -
-- /dev/null
        4668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 3592   4669   
@@ -0,0 +1,6 @@
        4670  +
GET // HTTP/1.1
        4671  +
Host:example.amazonaws.com
        4672  +
X-Amz-Date:20150830T123600Z
        4673  +
X-Amz-Region-Set:us-east-1
        4674  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        4675  +
 3593   4676   
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
 3594   4677   
similarity index 99%
 3595   4678   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 3596   4679   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 3597   4680   
index 874c01c..2b3bf67 100644
 3598   4681   
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
 3599   4682   
new file mode 100644
 3600   4683   
index 0000000..379dcb2
 3601         -
-- /dev/null
        4684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 3602   4685   
@@ -0,0 +1,4 @@
        4686  +
{
        4687  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4688  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4689  +
}
 3603   4690   
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
 3604   4691   
similarity index 99%
 3605   4692   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 3606   4693   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 3607   4694   
index 81d7b0b..d10ad29 100644
 3608   4695   
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
 3609   4696   
new file mode 100644
 3610   4697   
index 0000000..d9bd824
 3611         -
-- /dev/null
        4698  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 3612   4699   
@@ -0,0 +1 @@
        4700  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 3613   4701   
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
 3614   4702   
new file mode 100644
 3615   4703   
index 0000000..19d1d46
 3616         -
-- /dev/null
        4704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 3617   4705   
@@ -0,0 +1,3 @@
        4706  +
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
        4707  +
Host:example.amazonaws.com
        4708  +
 3618   4709   
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
 3619   4710   
similarity index 99%
 3620   4711   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 3621   4712   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 3622   4713   
index 17e5279..24c8a5e 100644
 3623   4714   
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
 3624   4715   
new file mode 100644
 3625   4716   
index 0000000..25bc21e
 3626         -
-- /dev/null
        4717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 3627   4718   
@@ -0,0 +1,2 @@
        4719  +
GET // HTTP/1.1
        4720  +
Host:example.amazonaws.com
 3628   4721   
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
 3629   4722   
new file mode 100644
 3630   4723   
index 0000000..0468d80
 3631         -
-- /dev/null
        4724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 3632   4725   
@@ -0,0 +1,12 @@
        4726  +
{
        4727  +
    "credentials": {
        4728  +
        "access_key_id": "AKIDEXAMPLE",
        4729  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4730  +
    },
        4731  +
    "expiration_in_seconds": 3600,
        4732  +
    "normalize": true,
        4733  +
    "region": "us-east-1",
        4734  +
    "service": "service",
        4735  +
    "sign_body": false,
        4736  +
    "timestamp": "2015-08-30T12:36:00Z"
        4737  +
}
              \
 No newline at end of file
 3633   4738   
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
 3634   4739   
similarity index 99%
 3635   4740   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 3636   4741   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 3637   4742   
index fdf9c48..a8e9e02 100644
 3638   4743   
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
 3639   4744   
new file mode 100644
 3640   4745   
index 0000000..ffe1b60
 3641         -
-- /dev/null
        4746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 3642   4747   
@@ -0,0 +1 @@
        4748  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 3643   4749   
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
 3644   4750   
new file mode 100644
 3645   4751   
index 0000000..3189f55
 3646         -
-- /dev/null
        4752  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 3647   4753   
@@ -0,0 +1,6 @@
        4754  +
GET //example// HTTP/1.1
        4755  +
Host:example.amazonaws.com
        4756  +
X-Amz-Date:20150830T123600Z
        4757  +
X-Amz-Region-Set:us-east-1
        4758  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        4759  +
 3648   4760   
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
 3649   4761   
similarity index 99%
 3650   4762   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 3651   4763   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 3652   4764   
index 8f9c95e..430020e 100644
 3653   4765   
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
 3654   4766   
new file mode 100644
 3655   4767   
index 0000000..379dcb2
 3656         -
-- /dev/null
        4768  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 3657   4769   
@@ -0,0 +1,4 @@
        4770  +
{
        4771  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4772  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4773  +
}
 3658   4774   
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
 3659   4775   
similarity index 99%
 3660   4776   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 3661   4777   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 3662   4778   
index 1046735..8d41e37 100644
 3663   4779   
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
 3664   4780   
new file mode 100644
 3665   4781   
index 0000000..93a0fa4
 3666         -
-- /dev/null
        4782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 3667   4783   
@@ -0,0 +1 @@
        4784  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 3668   4785   
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
 3669   4786   
new file mode 100644
 3670   4787   
index 0000000..65c8cb6
 3671         -
-- /dev/null
        4788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 3672   4789   
@@ -0,0 +1,3 @@
        4790  +
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
        4791  +
Host:example.amazonaws.com
        4792  +
 3673   4793   
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
 3674   4794   
similarity index 99%
 3675   4795   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 3676   4796   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 3677   4797   
index b293cc2..0f4c4c5 100644
 3678   4798   
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
 3679   4799   
similarity index 65%
 3680   4800   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 3681   4801   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3682   4802   
index a4307ce..12e0931 100644
 3683         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        4803  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3684   4804   
@@ -1,3 +1,2 @@
 3685   4805   
GET //example// HTTP/1.1
 3686   4806   
Host:example.amazonaws.com
 3687         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3688   4807   
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
 3689   4808   
new file mode 100644
 3690   4809   
index 0000000..7bee5c7
 3691         -
-- /dev/null
        4810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 3692   4811   
@@ -0,0 +1,12 @@
        4812  +
{
        4813  +
    "credentials": {
        4814  +
        "access_key_id": "AKIDEXAMPLE",
        4815  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4816  +
    },
        4817  +
    "expiration_in_seconds": 3600,
        4818  +
    "normalize": false,
        4819  +
    "region": "us-east-1",
        4820  +
    "service": "service",
        4821  +
    "sign_body": false,
        4822  +
    "timestamp": "2015-08-30T12:36:00Z"
        4823  +
}
              \
 No newline at end of file
 3693   4824   
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
 3694   4825   
similarity index 99%
 3695   4826   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 3696   4827   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 3697   4828   
index a9c55f6..76f55ed 100644
 3698   4829   
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
 3699   4830   
new file mode 100644
 3700   4831   
index 0000000..de333b2
 3701         -
-- /dev/null
        4832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 3702   4833   
@@ -0,0 +1 @@
        4834  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 3703   4835   
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
 3704   4836   
new file mode 100644
 3705   4837   
index 0000000..773ce63
 3706         -
-- /dev/null
        4838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 3707   4839   
@@ -0,0 +1,6 @@
        4840  +
GET //example// HTTP/1.1
        4841  +
Host:example.amazonaws.com
        4842  +
X-Amz-Date:20150830T123600Z
        4843  +
X-Amz-Region-Set:us-east-1
        4844  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        4845  +
 3708   4846   
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
 3709   4847   
similarity index 99%
 3710   4848   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 3711   4849   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 3712   4850   
index 5c4c2cd..46c3265 100644
 3713   4851   
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
 3714   4852   
new file mode 100644
 3715   4853   
index 0000000..379dcb2
 3716         -
-- /dev/null
        4854  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 3717   4855   
@@ -0,0 +1,4 @@
        4856  +
{
        4857  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4858  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4859  +
}
 3718   4860   
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
 3719   4861   
similarity index 99%
 3720   4862   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 3721   4863   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 3722   4864   
index c878ab4..6047ccf 100644
 3723   4865   
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
 3724   4866   
new file mode 100644
 3725   4867   
index 0000000..d61fcd0
 3726         -
-- /dev/null
        4868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 3727   4869   
@@ -0,0 +1 @@
        4870  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 3728   4871   
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
 3729   4872   
new file mode 100644
 3730   4873   
index 0000000..3e37b5b
 3731         -
-- /dev/null
        4874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 3732   4875   
@@ -0,0 +1,3 @@
        4876  +
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
        4877  +
Host:example.amazonaws.com
        4878  +
 3733   4879   
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
 3734   4880   
similarity index 99%
 3735   4881   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 3736   4882   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 3737   4883   
index 5f59645..2537d28 100644
 3738   4884   
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
 3739   4885   
new file mode 100644
 3740   4886   
index 0000000..12e0931
 3741         -
-- /dev/null
        4887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 3742   4888   
@@ -0,0 +1,2 @@
        4889  +
GET //example// HTTP/1.1
        4890  +
Host:example.amazonaws.com
 3743   4891   
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
 3744   4892   
new file mode 100644
 3745   4893   
index 0000000..0468d80
 3746         -
-- /dev/null
        4894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 3747   4895   
@@ -0,0 +1,12 @@
        4896  +
{
        4897  +
    "credentials": {
        4898  +
        "access_key_id": "AKIDEXAMPLE",
        4899  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4900  +
    },
        4901  +
    "expiration_in_seconds": 3600,
        4902  +
    "normalize": true,
        4903  +
    "region": "us-east-1",
        4904  +
    "service": "service",
        4905  +
    "sign_body": false,
        4906  +
    "timestamp": "2015-08-30T12:36:00Z"
        4907  +
}
              \
 No newline at end of file
 3748   4908   
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
 3749   4909   
new file mode 100644
 3750   4910   
index 0000000..0b2b616
 3751         -
-- /dev/null
        4911  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 3752   4912   
@@ -0,0 +1,9 @@
        4913  +
GET
        4914  +
/example%20space/
        4915  +
        4916  +
host:example.amazonaws.com
        4917  +
x-amz-date:20150830T123600Z
        4918  +
x-amz-region-set:us-east-1
        4919  +
        4920  +
host;x-amz-date;x-amz-region-set
        4921  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3753   4922   
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
 3754   4923   
new file mode 100644
 3755   4924   
index 0000000..6e7841d
 3756         -
-- /dev/null
        4925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 3757   4926   
@@ -0,0 +1 @@
        4927  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 3758   4928   
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
 3759   4929   
new file mode 100644
 3760   4930   
index 0000000..0969cd3
 3761         -
-- /dev/null
        4931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 3762   4932   
@@ -0,0 +1,6 @@
        4933  +
GET /example space/ HTTP/1.1
        4934  +
Host:example.amazonaws.com
        4935  +
X-Amz-Date:20150830T123600Z
        4936  +
X-Amz-Region-Set:us-east-1
        4937  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        4938  +
 3763   4939   
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
 3764   4940   
new file mode 100644
 3765   4941   
index 0000000..ddae6e2
 3766         -
-- /dev/null
        4942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 3767   4943   
@@ -0,0 +1,4 @@
        4944  +
AWS4-ECDSA-P256-SHA256
        4945  +
20150830T123600Z
        4946  +
20150830/service/aws4_request
        4947  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 3768   4948   
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
 3769   4949   
new file mode 100644
 3770   4950   
index 0000000..379dcb2
 3771         -
-- /dev/null
        4951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 3772   4952   
@@ -0,0 +1,4 @@
        4953  +
{
        4954  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4955  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4956  +
}
 3773   4957   
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
 3774   4958   
new file mode 100644
 3775   4959   
index 0000000..a66b3cb
 3776         -
-- /dev/null
        4960  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 3777   4961   
@@ -0,0 +1,7 @@
        4962  +
GET
        4963  +
/example%20space/
        4964  +
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
        4965  +
host:example.amazonaws.com
        4966  +
        4967  +
host
        4968  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3778   4969   
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
 3779   4970   
new file mode 100644
 3780   4971   
index 0000000..b3253ae
 3781         -
-- /dev/null
        4972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 3782   4973   
@@ -0,0 +1 @@
        4974  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 3783   4975   
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
 3784   4976   
new file mode 100644
 3785   4977   
index 0000000..9e335b2
 3786         -
-- /dev/null
        4978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 3787   4979   
@@ -0,0 +1,3 @@
        4980  +
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
        4981  +
Host:example.amazonaws.com
        4982  +
 3788   4983   
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
 3789   4984   
new file mode 100644
 3790   4985   
index 0000000..b6ff6fb
 3791         -
-- /dev/null
        4986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 3792   4987   
@@ -0,0 +1,4 @@
        4988  +
AWS4-ECDSA-P256-SHA256
        4989  +
20150830T123600Z
        4990  +
20150830/service/aws4_request
        4991  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 3793   4992   
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
 3794   4993   
new file mode 100644
 3795   4994   
index 0000000..ab509ab
 3796         -
-- /dev/null
        4995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 3797   4996   
@@ -0,0 +1,2 @@
        4997  +
GET /example space/ HTTP/1.1
        4998  +
Host:example.amazonaws.com
 3798   4999   
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
 3799   5000   
new file mode 100644
 3800   5001   
index 0000000..7bee5c7
 3801         -
-- /dev/null
        5002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 3802   5003   
@@ -0,0 +1,12 @@
        5004  +
{
        5005  +
    "credentials": {
        5006  +
        "access_key_id": "AKIDEXAMPLE",
        5007  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5008  +
    },
        5009  +
    "expiration_in_seconds": 3600,
        5010  +
    "normalize": false,
        5011  +
    "region": "us-east-1",
        5012  +
    "service": "service",
        5013  +
    "sign_body": false,
        5014  +
    "timestamp": "2015-08-30T12:36:00Z"
        5015  +
}
              \
 No newline at end of file
 3803   5016   
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
 3804   5017   
new file mode 100644
 3805   5018   
index 0000000..0b2b616
 3806         -
-- /dev/null
        5019  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 3807   5020   
@@ -0,0 +1,9 @@
        5021  +
GET
        5022  +
/example%20space/
        5023  +
        5024  +
host:example.amazonaws.com
        5025  +
x-amz-date:20150830T123600Z
        5026  +
x-amz-region-set:us-east-1
        5027  +
        5028  +
host;x-amz-date;x-amz-region-set
        5029  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3808   5030   
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
 3809   5031   
new file mode 100644
 3810   5032   
index 0000000..e75ae08
 3811         -
-- /dev/null
        5033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 3812   5034   
@@ -0,0 +1 @@
        5035  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 3813   5036   
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
 3814   5037   
new file mode 100644
 3815   5038   
index 0000000..cb089db
 3816         -
-- /dev/null
        5039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 3817   5040   
@@ -0,0 +1,6 @@
        5041  +
GET /example space/ HTTP/1.1
        5042  +
Host:example.amazonaws.com
        5043  +
X-Amz-Date:20150830T123600Z
        5044  +
X-Amz-Region-Set:us-east-1
        5045  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5046  +
 3818   5047   
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
 3819   5048   
new file mode 100644
 3820   5049   
index 0000000..ddae6e2
 3821         -
-- /dev/null
        5050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 3822   5051   
@@ -0,0 +1,4 @@
        5052  +
AWS4-ECDSA-P256-SHA256
        5053  +
20150830T123600Z
        5054  +
20150830/service/aws4_request
        5055  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 3823   5056   
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
 3824   5057   
new file mode 100644
 3825   5058   
index 0000000..379dcb2
 3826         -
-- /dev/null
        5059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 3827   5060   
@@ -0,0 +1,4 @@
        5061  +
{
        5062  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5063  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5064  +
}
 3828   5065   
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
 3829   5066   
new file mode 100644
 3830   5067   
index 0000000..a66b3cb
 3831         -
-- /dev/null
        5068  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 3832   5069   
@@ -0,0 +1,7 @@
        5070  +
GET
        5071  +
/example%20space/
        5072  +
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
        5073  +
host:example.amazonaws.com
        5074  +
        5075  +
host
        5076  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3833   5077   
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
 3834   5078   
new file mode 100644
 3835   5079   
index 0000000..66a80c3
 3836         -
-- /dev/null
        5080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 3837   5081   
@@ -0,0 +1 @@
        5082  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 3838   5083   
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
 3839   5084   
new file mode 100644
 3840   5085   
index 0000000..7d1b9d9
 3841         -
-- /dev/null
        5086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 3842   5087   
@@ -0,0 +1,3 @@
        5088  +
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
        5089  +
Host:example.amazonaws.com
        5090  +
 3843   5091   
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
 3844   5092   
new file mode 100644
 3845   5093   
index 0000000..b6ff6fb
 3846         -
-- /dev/null
        5094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 3847   5095   
@@ -0,0 +1,4 @@
        5096  +
AWS4-ECDSA-P256-SHA256
        5097  +
20150830T123600Z
        5098  +
20150830/service/aws4_request
        5099  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 3848   5100   
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
 3849   5101   
new file mode 100644
 3850   5102   
index 0000000..ab509ab
 3851         -
-- /dev/null
        5103  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 3852   5104   
@@ -0,0 +1,2 @@
        5105  +
GET /example space/ HTTP/1.1
        5106  +
Host:example.amazonaws.com
 3853   5107   
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
 3854   5108   
new file mode 100644
 3855   5109   
index 0000000..0468d80
 3856         -
-- /dev/null
        5110  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 3857   5111   
@@ -0,0 +1,12 @@
        5112  +
{
        5113  +
    "credentials": {
        5114  +
        "access_key_id": "AKIDEXAMPLE",
        5115  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5116  +
    },
        5117  +
    "expiration_in_seconds": 3600,
        5118  +
    "normalize": true,
        5119  +
    "region": "us-east-1",
        5120  +
    "service": "service",
        5121  +
    "sign_body": false,
        5122  +
    "timestamp": "2015-08-30T12:36:00Z"
        5123  +
}
              \
 No newline at end of file
 3858   5124   
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
 3859   5125   
similarity index 99%
 3860   5126   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 3861   5127   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 3862   5128   
index b0db648..46d76bb 100644
 3863   5129   
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
 3864   5130   
new file mode 100644
 3865   5131   
index 0000000..53c0cb6
 3866         -
-- /dev/null
        5132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 3867   5133   
@@ -0,0 +1 @@
        5134  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 3868   5135   
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
 3869   5136   
new file mode 100644
 3870   5137   
index 0000000..3bdb653
 3871         -
-- /dev/null
        5138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 3872   5139   
@@ -0,0 +1,6 @@
        5140  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5141  +
Host:example.amazonaws.com
        5142  +
X-Amz-Date:20150830T123600Z
        5143  +
X-Amz-Region-Set:us-east-1
        5144  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5145  +
 3873   5146   
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
 3874   5147   
similarity index 99%
 3875   5148   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 3876   5149   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 3877   5150   
index 20c7cd6..3b30173 100644
 3878   5151   
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
 3879   5152   
new file mode 100644
 3880   5153   
index 0000000..379dcb2
 3881         -
-- /dev/null
        5154  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 3882   5155   
@@ -0,0 +1,4 @@
        5156  +
{
        5157  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5158  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5159  +
}
 3883   5160   
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
 3884   5161   
similarity index 99%
 3885   5162   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 3886   5163   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 3887   5164   
index f9fb726..7e93f58 100644
 3888   5165   
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
 3889   5166   
new file mode 100644
 3890   5167   
index 0000000..48311a8
 3891         -
-- /dev/null
        5168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 3892   5169   
@@ -0,0 +1 @@
        5170  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 3893   5171   
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
 3894   5172   
new file mode 100644
 3895   5173   
index 0000000..82da9be
 3896         -
-- /dev/null
        5174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 3897   5175   
@@ -0,0 +1,3 @@
        5176  +
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
        5177  +
Host:example.amazonaws.com
        5178  +
 3898   5179   
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
 3899   5180   
similarity index 99%
 3900   5181   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 3901   5182   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 3902   5183   
index ef06e89..4aab9a2 100644
 3903   5184   
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
 3904   5185   
similarity index 80%
 3905   5186   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 3906   5187   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 3907   5188   
index da760cd..a149694 100644
 3908         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5189  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 3909   5190   
@@ -1,3 +1,2 @@
 3910   5191   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 3911   5192   
Host:example.amazonaws.com
 3912         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3913   5193   
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
 3914   5194   
new file mode 100644
 3915   5195   
index 0000000..0468d80
 3916         -
-- /dev/null
        5196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 3917   5197   
@@ -0,0 +1,12 @@
        5198  +
{
        5199  +
    "credentials": {
        5200  +
        "access_key_id": "AKIDEXAMPLE",
        5201  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5202  +
    },
        5203  +
    "expiration_in_seconds": 3600,
        5204  +
    "normalize": true,
        5205  +
    "region": "us-east-1",
        5206  +
    "service": "service",
        5207  +
    "sign_body": false,
        5208  +
    "timestamp": "2015-08-30T12:36:00Z"
        5209  +
}
              \
 No newline at end of file
 3918   5210   
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
 3919   5211   
new file mode 100644
 3920   5212   
index 0000000..0f1afe7
 3921         -
-- /dev/null
        5213  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 3922   5214   
@@ -0,0 +1,9 @@
        5215  +
GET
        5216  +
/%E1%88%B4
        5217  +
        5218  +
host:example.amazonaws.com
        5219  +
x-amz-date:20150830T123600Z
        5220  +
x-amz-region-set:us-east-1
        5221  +
        5222  +
host;x-amz-date;x-amz-region-set
        5223  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3923   5224   
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
 3924   5225   
new file mode 100644
 3925   5226   
index 0000000..4b9af6c
 3926         -
-- /dev/null
        5227  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 3927   5228   
@@ -0,0 +1 @@
        5229  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 3928   5230   
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
 3929   5231   
new file mode 100644
 3930   5232   
index 0000000..d42d7b3
 3931         -
-- /dev/null
        5233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 3932   5234   
@@ -0,0 +1,6 @@
        5235  +
GET /ሴ HTTP/1.1
        5236  +
Host:example.amazonaws.com
        5237  +
X-Amz-Date:20150830T123600Z
        5238  +
X-Amz-Region-Set:us-east-1
        5239  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        5240  +
 3933   5241   
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
 3934   5242   
new file mode 100644
 3935   5243   
index 0000000..0827f62
 3936         -
-- /dev/null
        5244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 3937   5245   
@@ -0,0 +1,4 @@
        5246  +
AWS4-ECDSA-P256-SHA256
        5247  +
20150830T123600Z
        5248  +
20150830/service/aws4_request
        5249  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 3938   5250   
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
 3939   5251   
new file mode 100644
 3940   5252   
index 0000000..379dcb2
 3941         -
-- /dev/null
        5253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 3942   5254   
@@ -0,0 +1,4 @@
        5255  +
{
        5256  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5257  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5258  +
}
 3943   5259   
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
 3944   5260   
new file mode 100644
 3945   5261   
index 0000000..a41a2f8
 3946         -
-- /dev/null
        5262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 3947   5263   
@@ -0,0 +1,7 @@
        5264  +
GET
        5265  +
/%E1%88%B4
        5266  +
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
        5267  +
host:example.amazonaws.com
        5268  +
        5269  +
host
        5270  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3948   5271   
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
 3949   5272   
new file mode 100644
 3950   5273   
index 0000000..a5c7f4f
 3951         -
-- /dev/null
        5274  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 3952   5275   
@@ -0,0 +1 @@
        5276  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 3953   5277   
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
 3954   5278   
new file mode 100644
 3955   5279   
index 0000000..492ed33
 3956         -
-- /dev/null
        5280  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 3957   5281   
@@ -0,0 +1,3 @@
        5282  +
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
        5283  +
Host:example.amazonaws.com
        5284  +
 3958   5285   
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
 3959   5286   
new file mode 100644
 3960   5287   
index 0000000..a93108f
 3961         -
-- /dev/null
        5288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 3962   5289   
@@ -0,0 +1,4 @@
        5290  +
AWS4-ECDSA-P256-SHA256
        5291  +
20150830T123600Z
        5292  +
20150830/service/aws4_request
        5293  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 3963   5294   
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
 3964   5295   
new file mode 100644
 3965   5296   
index 0000000..9e273f6
 3966         -
-- /dev/null
        5297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 3967   5298   
@@ -0,0 +1,2 @@
        5299  +
GET /ሴ HTTP/1.1
        5300  +
Host:example.amazonaws.com
 3968   5301   
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
 3969   5302   
new file mode 100644
 3970   5303   
index 0000000..0468d80
 3971         -
-- /dev/null
        5304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 3972   5305   
@@ -0,0 +1,12 @@
        5306  +
{
        5307  +
    "credentials": {
        5308  +
        "access_key_id": "AKIDEXAMPLE",
        5309  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5310  +
    },
        5311  +
    "expiration_in_seconds": 3600,
        5312  +
    "normalize": true,
        5313  +
    "region": "us-east-1",
        5314  +
    "service": "service",
        5315  +
    "sign_body": false,
        5316  +
    "timestamp": "2015-08-30T12:36:00Z"
        5317  +
}
              \
 No newline at end of file
 3973   5318   
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
 3974   5319   
similarity index 99%
 3975   5320   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 3976   5321   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 3977   5322   
index bb9d4bf..edc0bb4 100644
 3978   5323   
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
 3979   5324   
new file mode 100644
 3980   5325   
index 0000000..ee9a272
 3981         -
-- /dev/null
        5326  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 3982   5327   
@@ -0,0 +1 @@
        5328  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 3983   5329   
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
 3984   5330   
new file mode 100644
 3985   5331   
index 0000000..2090343
 3986         -
-- /dev/null
        5332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 3987   5333   
@@ -0,0 +1,6 @@
        5334  +
GET /?Param1=value1 HTTP/1.1
        5335  +
Host:example.amazonaws.com
        5336  +
X-Amz-Date:20150830T123600Z
        5337  +
X-Amz-Region-Set:us-east-1
        5338  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        5339  +
 3988   5340   
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
 3989   5341   
similarity index 99%
 3990   5342   
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
 3991   5343   
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
 3992   5344   
index a176f1d..06ed74f 100644
 3993   5345   
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
 3994   5346   
new file mode 100644
 3995   5347   
index 0000000..379dcb2
 3996         -
-- /dev/null
        5348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 3997   5349   
@@ -0,0 +1,4 @@
        5350  +
{
        5351  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5352  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5353  +
}
 3998   5354   
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
 3999   5355   
similarity index 99%
 4000   5356   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4001   5357   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4002   5358   
index 344384b..a875d70 100644
 4003   5359   
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
 4004   5360   
new file mode 100644
 4005   5361   
index 0000000..ef93624
 4006         -
-- /dev/null
        5362  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4007   5363   
@@ -0,0 +1 @@
        5364  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4008   5365   
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
 4009   5366   
new file mode 100644
 4010   5367   
index 0000000..92829f7
 4011         -
-- /dev/null
        5368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4012   5369   
@@ -0,0 +1,3 @@
        5370  +
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
        5371  +
Host:example.amazonaws.com
        5372  +
 4013   5373   
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
 4014   5374   
similarity index 99%
 4015   5375   
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
 4016   5376   
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
 4017   5377   
index b625052..4ff9191 100644
 4018   5378   
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
 4019   5379   
similarity index 67%
 4020   5380   
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
 4021   5381   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4022   5382   
index 970d0a0..f4a03bb 100644
 4023         -
-- 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
        5383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4024   5384   
@@ -1,3 +1,2 @@
 4025   5385   
GET /?Param1=value1 HTTP/1.1
 4026   5386   
Host:example.amazonaws.com
 4027         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4028   5387   
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
 4029   5388   
new file mode 100644
 4030   5389   
index 0000000..0468d80
 4031         -
-- /dev/null
        5390  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4032   5391   
@@ -0,0 +1,12 @@
        5392  +
{
        5393  +
    "credentials": {
        5394  +
        "access_key_id": "AKIDEXAMPLE",
        5395  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5396  +
    },
        5397  +
    "expiration_in_seconds": 3600,
        5398  +
    "normalize": true,
        5399  +
    "region": "us-east-1",
        5400  +
    "service": "service",
        5401  +
    "sign_body": false,
        5402  +
    "timestamp": "2015-08-30T12:36:00Z"
        5403  +
}
              \
 No newline at end of file
 4033   5404   
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
 4034   5405   
new file mode 100644
 4035   5406   
index 0000000..da07537
 4036         -
-- /dev/null
        5407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4037   5408   
@@ -0,0 +1,9 @@
        5409  +
GET
        5410  +
/
        5411  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        5412  +
host:example.amazonaws.com
        5413  +
x-amz-date:20150830T123600Z
        5414  +
x-amz-region-set:us-east-1
        5415  +
        5416  +
host;x-amz-date;x-amz-region-set
        5417  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4038   5418   
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
 4039   5419   
new file mode 100644
 4040   5420   
index 0000000..edb21e5
 4041         -
-- /dev/null
        5421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4042   5422   
@@ -0,0 +1 @@
        5423  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4043   5424   
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
 4044   5425   
new file mode 100644
 4045   5426   
index 0000000..e60394c
 4046         -
-- /dev/null
        5427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4047   5428   
@@ -0,0 +1,6 @@
        5429  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5430  +
Host:example.amazonaws.com
        5431  +
X-Amz-Date:20150830T123600Z
        5432  +
X-Amz-Region-Set:us-east-1
        5433  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        5434  +
 4048   5435   
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
 4049   5436   
new file mode 100644
 4050   5437   
index 0000000..1dfc886
 4051         -
-- /dev/null
        5438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4052   5439   
@@ -0,0 +1,4 @@
        5440  +
AWS4-ECDSA-P256-SHA256
        5441  +
20150830T123600Z
        5442  +
20150830/service/aws4_request
        5443  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4053   5444   
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
 4054   5445   
new file mode 100644
 4055   5446   
index 0000000..379dcb2
 4056         -
-- /dev/null
        5447  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4057   5448   
@@ -0,0 +1,4 @@
        5449  +
{
        5450  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5451  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5452  +
}
 4058   5453   
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
 4059   5454   
new file mode 100644
 4060   5455   
index 0000000..e94dc0c
 4061         -
-- /dev/null
        5456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4062   5457   
@@ -0,0 +1,7 @@
        5458  +
GET
        5459  +
/
        5460  +
%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
        5461  +
host:example.amazonaws.com
        5462  +
        5463  +
host
        5464  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4063   5465   
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
 4064   5466   
new file mode 100644
 4065   5467   
index 0000000..7489437
 4066         -
-- /dev/null
        5468  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4067   5469   
@@ -0,0 +1 @@
        5470  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4068   5471   
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
 4069   5472   
new file mode 100644
 4070   5473   
index 0000000..90c0e73
 4071         -
-- /dev/null
        5474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4072   5475   
@@ -0,0 +1,3 @@
        5476  +
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
        5477  +
Host:example.amazonaws.com
        5478  +
 4073   5479   
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
 4074   5480   
new file mode 100644
 4075   5481   
index 0000000..ab8a711
 4076         -
-- /dev/null
        5482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4077   5483   
@@ -0,0 +1,4 @@
        5484  +
AWS4-ECDSA-P256-SHA256
        5485  +
20150830T123600Z
        5486  +
20150830/service/aws4_request
        5487  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4078   5488   
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
 4079   5489   
new file mode 100644
 4080   5490   
index 0000000..368c6e3
 4081         -
-- /dev/null
        5491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4082   5492   
@@ -0,0 +1,2 @@
        5493  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5494  +
Host:example.amazonaws.com
 4083   5495   
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
 4084   5496   
new file mode 100644
 4085   5497   
index 0000000..0468d80
 4086         -
-- /dev/null
        5498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4087   5499   
@@ -0,0 +1,12 @@
        5500  +
{
        5501  +
    "credentials": {
        5502  +
        "access_key_id": "AKIDEXAMPLE",
        5503  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5504  +
    },
        5505  +
    "expiration_in_seconds": 3600,
        5506  +
    "normalize": true,
        5507  +
    "region": "us-east-1",
        5508  +
    "service": "service",
        5509  +
    "sign_body": false,
        5510  +
    "timestamp": "2015-08-30T12:36:00Z"
        5511  +
}
              \
 No newline at end of file
 4088   5512   
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
 4089   5513   
similarity index 99%
 4090   5514   
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
 4091   5515   
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
 4092   5516   
index 74f625a..3db56f7 100644
 4093   5517   
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
 4094   5518   
new file mode 100644
 4095   5519   
index 0000000..e6042bc
 4096         -
-- /dev/null
        5520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4097   5521   
@@ -0,0 +1 @@
        5522  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4098   5523   
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
 4099   5524   
new file mode 100644
 4100   5525   
index 0000000..5505969
 4101         -
-- /dev/null
        5526  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4102   5527   
@@ -0,0 +1,6 @@
        5528  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        5529  +
Host:example.amazonaws.com
        5530  +
X-Amz-Date:20150830T123600Z
        5531  +
X-Amz-Region-Set:us-east-1
        5532  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        5533  +
 4103   5534   
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
 4104   5535   
similarity index 99%
 4105   5536   
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
 4106   5537   
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
 4107   5538   
index 44873b7..e8f5e31 100644
 4108   5539   
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
 4109   5540   
new file mode 100644
 4110   5541   
index 0000000..379dcb2
 4111         -
-- /dev/null
        5542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4112   5543   
@@ -0,0 +1,4 @@
        5544  +
{
        5545  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5546  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5547  +
}
 4113   5548   
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
 4114   5549   
similarity index 99%
 4115   5550   
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
 4116   5551   
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
 4117   5552   
index 6d30727..3fe6a9f 100644
 4118   5553   
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
 4119   5554   
new file mode 100644
 4120   5555   
index 0000000..3f35de8
 4121         -
-- /dev/null
        5556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4122   5557   
@@ -0,0 +1 @@
        5558  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 4123   5559   
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
 4124   5560   
new file mode 100644
 4125   5561   
index 0000000..30b336b
 4126         -
-- /dev/null
        5562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 4127   5563   
@@ -0,0 +1,3 @@
        5564  +
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
        5565  +
Host:example.amazonaws.com
        5566  +
 4128   5567   
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
 4129   5568   
similarity index 99%
 4130   5569   
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
 4131   5570   
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
 4132   5571   
index 99d0510..7f0565f 100644
 4133   5572   
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
 4134   5573   
similarity index 100%
 4135   5574   
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
 4136   5575   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 4137   5576   
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
 4138   5577   
new file mode 100644
 4139   5578   
index 0000000..0468d80
 4140         -
-- /dev/null
        5579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 4141   5580   
@@ -0,0 +1,12 @@
        5581  +
{
        5582  +
    "credentials": {
        5583  +
        "access_key_id": "AKIDEXAMPLE",
        5584  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5585  +
    },
        5586  +
    "expiration_in_seconds": 3600,
        5587  +
    "normalize": true,
        5588  +
    "region": "us-east-1",
        5589  +
    "service": "service",
        5590  +
    "sign_body": false,
        5591  +
    "timestamp": "2015-08-30T12:36:00Z"
        5592  +
}
              \
 No newline at end of file
 4142   5593   
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
 4143   5594   
similarity index 99%
 4144   5595   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 4145   5596   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4146   5597   
index 816c862..cc4537a 100644
 4147   5598   
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
 4148   5599   
new file mode 100644
 4149   5600   
index 0000000..70d38c1
 4150         -
-- /dev/null
        5601  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 4151   5602   
@@ -0,0 +1 @@
        5603  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 4152   5604   
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
 4153   5605   
new file mode 100644
 4154   5606   
index 0000000..0647eea
 4155         -
-- /dev/null
        5607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 4156   5608   
@@ -0,0 +1,6 @@
        5609  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5610  +
Host:example.amazonaws.com
        5611  +
X-Amz-Date:20150830T123600Z
        5612  +
X-Amz-Region-Set:us-east-1
        5613  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        5614  +
 4157   5615   
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
 4158   5616   
similarity index 99%
 4159   5617   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 4160   5618   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4161   5619   
index 6129fc5..cc19d14 100644
 4162   5620   
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
 4163   5621   
new file mode 100644
 4164   5622   
index 0000000..379dcb2
 4165         -
-- /dev/null
        5623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 4166   5624   
@@ -0,0 +1,4 @@
        5625  +
{
        5626  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5627  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5628  +
}
 4167   5629   
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
 4168   5630   
similarity index 99%
 4169   5631   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 4170   5632   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4171   5633   
index b77ee9f..ed6a10e 100644
 4172   5634   
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
 4173   5635   
new file mode 100644
 4174   5636   
index 0000000..2ceba7b
 4175         -
-- /dev/null
        5637  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 4176   5638   
@@ -0,0 +1 @@
        5639  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 4177   5640   
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
 4178   5641   
new file mode 100644
 4179   5642   
index 0000000..0cd6d0a
 4180         -
-- /dev/null
        5643  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 4181   5644   
@@ -0,0 +1,3 @@
        5645  +
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
        5646  +
Host:example.amazonaws.com
        5647  +
 4182   5648   
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
 4183   5649   
similarity index 99%
 4184   5650   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 4185   5651   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4186   5652   
index 1cfed7a..aad1421 100644
 4187   5653   
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
 4188   5654   
similarity index 86%
 4189   5655   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 4190   5656   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4191   5657   
index d2833b3..36b2fe3 100644
 4192         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        5658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4193   5659   
@@ -1,3 +1,2 @@
 4194   5660   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4195   5661   
Host:example.amazonaws.com
 4196         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4197   5662   
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
 4198   5663   
new file mode 100644
 4199   5664   
index 0000000..0468d80
 4200         -
-- /dev/null
        5665  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 4201   5666   
@@ -0,0 +1,12 @@
        5667  +
{
        5668  +
    "credentials": {
        5669  +
        "access_key_id": "AKIDEXAMPLE",
        5670  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5671  +
    },
        5672  +
    "expiration_in_seconds": 3600,
        5673  +
    "normalize": true,
        5674  +
    "region": "us-east-1",
        5675  +
    "service": "service",
        5676  +
    "sign_body": false,
        5677  +
    "timestamp": "2015-08-30T12:36:00Z"
        5678  +
}
              \
 No newline at end of file
 4202   5679   
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
 4203   5680   
new file mode 100644
 4204   5681   
index 0000000..76db73d
 4205         -
-- /dev/null
        5682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 4206   5683   
@@ -0,0 +1,9 @@
        5684  +
GET
        5685  +
/
        5686  +
        5687  +
host:example.amazonaws.com
        5688  +
x-amz-date:20150830T123600Z
        5689  +
x-amz-region-set:us-east-1
        5690  +
        5691  +
host;x-amz-date;x-amz-region-set
        5692  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4207   5693   
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
 4208   5694   
new file mode 100644
 4209   5695   
index 0000000..281cc62
 4210         -
-- /dev/null
        5696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 4211   5697   
@@ -0,0 +1 @@
        5698  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 4212   5699   
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
 4213   5700   
new file mode 100644
 4214   5701   
index 0000000..cce9925
 4215         -
-- /dev/null
        5702  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 4216   5703   
@@ -0,0 +1,6 @@
        5704  +
GET / HTTP/1.1
        5705  +
Host:example.amazonaws.com
        5706  +
X-Amz-Date:20150830T123600Z
        5707  +
X-Amz-Region-Set:us-east-1
        5708  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        5709  +
 4217   5710   
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
 4218   5711   
new file mode 100644
 4219   5712   
index 0000000..600f1d8
 4220         -
-- /dev/null
        5713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 4221   5714   
@@ -0,0 +1,4 @@
        5715  +
AWS4-ECDSA-P256-SHA256
        5716  +
20150830T123600Z
        5717  +
20150830/service/aws4_request
        5718  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4222   5719   
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
 4223   5720   
new file mode 100644
 4224   5721   
index 0000000..379dcb2
 4225         -
-- /dev/null
        5722  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 4226   5723   
@@ -0,0 +1,4 @@
        5724  +
{
        5725  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5726  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5727  +
}
 4227   5728   
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
 4228   5729   
new file mode 100644
 4229   5730   
index 0000000..779c51c
 4230         -
-- /dev/null
        5731  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 4231   5732   
@@ -0,0 +1,7 @@
        5733  +
GET
        5734  +
/
        5735  +
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
        5736  +
host:example.amazonaws.com
        5737  +
        5738  +
host
        5739  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4232   5740   
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
 4233   5741   
new file mode 100644
 4234   5742   
index 0000000..2979e5e
 4235         -
-- /dev/null
        5743  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 4236   5744   
@@ -0,0 +1 @@
        5745  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 4237   5746   
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
 4238   5747   
new file mode 100644
 4239   5748   
index 0000000..1b3179c
 4240         -
-- /dev/null
        5749  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 4241   5750   
@@ -0,0 +1,3 @@
        5751  +
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
        5752  +
Host:example.amazonaws.com
        5753  +
 4242   5754   
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
 4243   5755   
new file mode 100644
 4244   5756   
index 0000000..6e29a7e
 4245         -
-- /dev/null
        5757  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 4246   5758   
@@ -0,0 +1,4 @@
        5759  +
AWS4-ECDSA-P256-SHA256
        5760  +
20150830T123600Z
        5761  +
20150830/service/aws4_request
        5762  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4247   5763   
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
 4248   5764   
similarity index 60%
 4249   5765   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 4250   5766   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4251   5767   
index 0f7a9bf..e659c3b 100644
 4252         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        5768  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4253   5769   
@@ -1,3 +1,2 @@
 4254   5770   
GET / HTTP/1.1
 4255   5771   
Host:example.amazonaws.com
 4256         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4257   5772   
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
 4258   5773   
new file mode 100644
 4259   5774   
index 0000000..0468d80
 4260         -
-- /dev/null
        5775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 4261   5776   
@@ -0,0 +1,12 @@
        5777  +
{
        5778  +
    "credentials": {
        5779  +
        "access_key_id": "AKIDEXAMPLE",
        5780  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5781  +
    },
        5782  +
    "expiration_in_seconds": 3600,
        5783  +
    "normalize": true,
        5784  +
    "region": "us-east-1",
        5785  +
    "service": "service",
        5786  +
    "sign_body": false,
        5787  +
    "timestamp": "2015-08-30T12:36:00Z"
        5788  +
}
              \
 No newline at end of file
 4262   5789   
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
 4263   5790   
new file mode 100644
 4264   5791   
index 0000000..8841ddf
 4265         -
-- /dev/null
        5792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 4266   5793   
@@ -0,0 +1,9 @@
        5794  +
GET
        5795  +
/
        5796  +
%E1%88%B4=bar
        5797  +
host:example.amazonaws.com
        5798  +
x-amz-date:20150830T123600Z
        5799  +
x-amz-region-set:us-east-1
        5800  +
        5801  +
host;x-amz-date;x-amz-region-set
        5802  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4267   5803   
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
 4268   5804   
new file mode 100644
 4269   5805   
index 0000000..1497add
 4270         -
-- /dev/null
        5806  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 4271   5807   
@@ -0,0 +1 @@
        5808  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 4272   5809   
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
 4273   5810   
new file mode 100644
 4274   5811   
index 0000000..961bc10
 4275         -
-- /dev/null
        5812  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 4276   5813   
@@ -0,0 +1,6 @@
        5814  +
GET /?ሴ=bar HTTP/1.1
        5815  +
Host:example.amazonaws.com
        5816  +
X-Amz-Date:20150830T123600Z
        5817  +
X-Amz-Region-Set:us-east-1
        5818  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        5819  +
 4277   5820   
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
 4278   5821   
new file mode 100644
 4279   5822   
index 0000000..e78ed70
 4280         -
-- /dev/null
        5823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 4281   5824   
@@ -0,0 +1,4 @@
        5825  +
AWS4-ECDSA-P256-SHA256
        5826  +
20150830T123600Z
        5827  +
20150830/service/aws4_request
        5828  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 4282   5829   
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
 4283   5830   
new file mode 100644
 4284   5831   
index 0000000..379dcb2
 4285         -
-- /dev/null
        5832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 4286   5833   
@@ -0,0 +1,4 @@
        5834  +
{
        5835  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5836  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5837  +
}
 4287   5838   
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
 4288   5839   
new file mode 100644
 4289   5840   
index 0000000..6d5ae93
 4290         -
-- /dev/null
        5841  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 4291   5842   
@@ -0,0 +1,7 @@
        5843  +
GET
        5844  +
/
        5845  +
%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
        5846  +
host:example.amazonaws.com
        5847  +
        5848  +
host
        5849  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4292   5850   
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
 4293   5851   
new file mode 100644
 4294   5852   
index 0000000..92107f2
 4295         -
-- /dev/null
        5853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 4296   5854   
@@ -0,0 +1 @@
        5855  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 4297   5856   
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
 4298   5857   
new file mode 100644
 4299   5858   
index 0000000..bb8a75b
 4300         -
-- /dev/null
        5859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 4301   5860   
@@ -0,0 +1,3 @@
        5861  +
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
        5862  +
Host:example.amazonaws.com
        5863  +
 4302   5864   
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
 4303   5865   
new file mode 100644
 4304   5866   
index 0000000..9fa94c7
 4305         -
-- /dev/null
        5867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 4306   5868   
@@ -0,0 +1,4 @@
        5869  +
AWS4-ECDSA-P256-SHA256
        5870  +
20150830T123600Z
        5871  +
20150830/service/aws4_request
        5872  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 4307   5873   
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
 4308   5874   
new file mode 100644
 4309   5875   
index 0000000..aff333a
 4310         -
-- /dev/null
        5876  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 4311   5877   
@@ -0,0 +1,2 @@
        5878  +
GET /?ሴ=bar HTTP/1.1
        5879  +
Host:example.amazonaws.com
 4312   5880   
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
 4313   5881   
new file mode 100644
 4314   5882   
index 0000000..a334e18
 4315         -
-- /dev/null
        5883  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 4316   5884   
@@ -0,0 +1,13 @@
        5885  +
{
        5886  +
    "credentials": {
        5887  +
        "access_key_id": "AKIDEXAMPLE",
        5888  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        5889  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        5890  +
    },
        5891  +
    "expiration_in_seconds": 3600,
        5892  +
    "normalize": true,
        5893  +
    "region": "us-east-1",
        5894  +
    "service": "service",
        5895  +
    "sign_body": false,
        5896  +
    "timestamp": "2015-08-30T12:36:00Z"
        5897  +
}
              \
 No newline at end of file
 4317   5898   
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
 4318   5899   
similarity index 99%
 4319   5900   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 4320   5901   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 4321   5902   
index f14defd..0e9ad42 100644
 4322   5903   
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
 4323   5904   
new file mode 100644
 4324   5905   
index 0000000..a7673b5
 4325         -
-- /dev/null
        5906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 4326   5907   
@@ -0,0 +1 @@
        5908  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 4327   5909   
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
 4328   5910   
new file mode 100644
 4329   5911   
index 0000000..ed16e76
 4330         -
-- /dev/null
        5912  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 4331   5913   
@@ -0,0 +1,7 @@
        5914  +
GET / HTTP/1.1
        5915  +
Host:example.amazonaws.com
        5916  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        5917  +
X-Amz-Date:20150830T123600Z
        5918  +
X-Amz-Region-Set:us-east-1
        5919  +
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
        5920  +
 4332   5921   
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
 4333   5922   
similarity index 99%
 4334   5923   
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
 4335   5924   
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
 4336   5925   
index 4edece5..6c1ec65 100644
 4337   5926   
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
 4338   5927   
new file mode 100644
 4339   5928   
index 0000000..379dcb2
 4340         -
-- /dev/null
        5929  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 4341   5930   
@@ -0,0 +1,4 @@
        5931  +
{
        5932  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5933  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5934  +
}
 4342   5935   
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
 4343   5936   
similarity index 99%
 4344   5937   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 4345   5938   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 4346   5939   
index 7c042af..1876b42 100644
 4347   5940   
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
 4348   5941   
new file mode 100644
 4349   5942   
index 0000000..903dfb4
 4350         -
-- /dev/null
        5943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 4351   5944   
@@ -0,0 +1 @@
        5945  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 4352   5946   
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
 4353   5947   
new file mode 100644
 4354   5948   
index 0000000..bf1d246
 4355         -
-- /dev/null
        5949  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 4356   5950   
@@ -0,0 +1,3 @@
        5951  +
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
        5952  +
Host:example.amazonaws.com
        5953  +
 4357   5954   
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
 4358   5955   
similarity index 99%
 4359   5956   
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
 4360   5957   
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
 4361   5958   
index 0fd066a..f1b1790 100644
 4362   5959   
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
 4363   5960   
similarity index 60%
 4364   5961   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 4365   5962   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4366   5963   
index 0f7a9bf..e659c3b 100644
 4367         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        5964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4368   5965   
@@ -1,3 +1,2 @@
 4369   5966   
GET / HTTP/1.1
 4370   5967   
Host:example.amazonaws.com
 4371         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4372   5968   
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
 4373   5969   
new file mode 100644
 4374   5970   
index 0000000..76db73d
 4375         -
-- /dev/null
        5971  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 4376   5972   
@@ -0,0 +1,9 @@
        5973  +
GET
        5974  +
/
        5975  +
        5976  +
host:example.amazonaws.com
        5977  +
x-amz-date:20150830T123600Z
        5978  +
x-amz-region-set:us-east-1
        5979  +
        5980  +
host;x-amz-date;x-amz-region-set
        5981  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4377   5982   
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
 4378   5983   
new file mode 100644
 4379   5984   
index 0000000..0468d80
 4380         -
-- /dev/null
        5985  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 4381   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
 4382   5999   
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
 4383   6000   
new file mode 100644
 4384   6001   
index 0000000..76db73d
 4385         -
-- /dev/null
        6002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 4386   6003   
@@ -0,0 +1,9 @@
        6004  +
GET
        6005  +
/
        6006  +
        6007  +
host:example.amazonaws.com
        6008  +
x-amz-date:20150830T123600Z
        6009  +
x-amz-region-set:us-east-1
        6010  +
        6011  +
host;x-amz-date;x-amz-region-set
        6012  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4387   6013   
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
 4388   6014   
new file mode 100644
 4389   6015   
index 0000000..a96ff24
 4390         -
-- /dev/null
        6016  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 4391   6017   
@@ -0,0 +1 @@
        6018  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 4392   6019   
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
 4393   6020   
new file mode 100644
 4394   6021   
index 0000000..689078b
 4395         -
-- /dev/null
        6022  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 4396   6023   
@@ -0,0 +1,6 @@
        6024  +
GET / HTTP/1.1
        6025  +
Host:example.amazonaws.com
        6026  +
X-Amz-Date:20150830T123600Z
        6027  +
X-Amz-Region-Set:us-east-1
        6028  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6029  +
 4397   6030   
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
 4398   6031   
new file mode 100644
 4399   6032   
index 0000000..600f1d8
 4400         -
-- /dev/null
        6033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 4401   6034   
@@ -0,0 +1,4 @@
        6035  +
AWS4-ECDSA-P256-SHA256
        6036  +
20150830T123600Z
        6037  +
20150830/service/aws4_request
        6038  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4402   6039   
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
 4403   6040   
new file mode 100644
 4404   6041   
index 0000000..379dcb2
 4405         -
-- /dev/null
        6042  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 4406   6043   
@@ -0,0 +1,4 @@
        6044  +
{
        6045  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6046  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6047  +
}
 4407   6048   
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
 4408   6049   
new file mode 100644
 4409   6050   
index 0000000..779c51c
 4410         -
-- /dev/null
        6051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 4411   6052   
@@ -0,0 +1,7 @@
        6053  +
GET
        6054  +
/
        6055  +
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
        6056  +
host:example.amazonaws.com
        6057  +
        6058  +
host
        6059  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4412   6060   
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
 4413   6061   
new file mode 100644
 4414   6062   
index 0000000..cc42158
 4415         -
-- /dev/null
        6063  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 4416   6064   
@@ -0,0 +1 @@
        6065  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 4417   6066   
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
 4418   6067   
new file mode 100644
 4419   6068   
index 0000000..dc6d01d
 4420         -
-- /dev/null
        6069  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 4421   6070   
@@ -0,0 +1,3 @@
        6071  +
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
        6072  +
Host:example.amazonaws.com
        6073  +
 4422   6074   
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
 4423   6075   
new file mode 100644
 4424   6076   
index 0000000..6e29a7e
 4425         -
-- /dev/null
        6077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 4426   6078   
@@ -0,0 +1,4 @@
        6079  +
AWS4-ECDSA-P256-SHA256
        6080  +
20150830T123600Z
        6081  +
20150830/service/aws4_request
        6082  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4427   6083   
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
 4428   6084   
new file mode 100644
 4429   6085   
index 0000000..e659c3b
 4430         -
-- /dev/null
        6086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 4431   6087   
@@ -0,0 +1,2 @@
        6088  +
GET / HTTP/1.1
        6089  +
Host:example.amazonaws.com
 4432   6090   
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
 4433   6091   
new file mode 100644
 4434   6092   
index 0000000..600f1d8
 4435         -
-- /dev/null
        6093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 4436   6094   
@@ -0,0 +1,4 @@
        6095  +
AWS4-ECDSA-P256-SHA256
        6096  +
20150830T123600Z
        6097  +
20150830/service/aws4_request
        6098  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4437   6099   
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
 4438   6100   
new file mode 100644
 4439   6101   
index 0000000..0468d80
 4440         -
-- /dev/null
        6102  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 4441   6103   
@@ -0,0 +1,12 @@
        6104  +
{
        6105  +
    "credentials": {
        6106  +
        "access_key_id": "AKIDEXAMPLE",
        6107  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6108  +
    },
        6109  +
    "expiration_in_seconds": 3600,
        6110  +
    "normalize": true,
        6111  +
    "region": "us-east-1",
        6112  +
    "service": "service",
        6113  +
    "sign_body": false,
        6114  +
    "timestamp": "2015-08-30T12:36:00Z"
        6115  +
}
              \
 No newline at end of file
 4442   6116   
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
 4443   6117   
similarity index 99%
 4444   6118   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 4445   6119   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 4446   6120   
index a6942c1..e881ac7 100644
 4447   6121   
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
 4448   6122   
new file mode 100644
 4449   6123   
index 0000000..4210210
 4450         -
-- /dev/null
        6124  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 4451   6125   
@@ -0,0 +1 @@
        6126  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 4452   6127   
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
 4453   6128   
new file mode 100644
 4454   6129   
index 0000000..257b110
 4455         -
-- /dev/null
        6130  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 4456   6131   
@@ -0,0 +1,6 @@
        6132  +
POST / HTTP/1.1
        6133  +
Host:example.amazonaws.com
        6134  +
X-Amz-Date:20150830T123600Z
        6135  +
X-Amz-Region-Set:us-east-1
        6136  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        6137  +
 4457   6138   
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
 4458   6139   
similarity index 99%
 4459   6140   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 4460   6141   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 4461   6142   
index d5650cb..f8adf13 100644
 4462   6143   
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
 4463   6144   
new file mode 100644
 4464   6145   
index 0000000..379dcb2
 4465         -
-- /dev/null
        6146  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 4466   6147   
@@ -0,0 +1,4 @@
        6148  +
{
        6149  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6150  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6151  +
}
 4467   6152   
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
 4468   6153   
similarity index 99%
 4469   6154   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 4470   6155   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 4471   6156   
index e48ce07..5ea8e3c 100644
 4472   6157   
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
 4473   6158   
new file mode 100644
 4474   6159   
index 0000000..9e2069e
 4475         -
-- /dev/null
        6160  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 4476   6161   
@@ -0,0 +1 @@
        6162  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 4477   6163   
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
 4478   6164   
new file mode 100644
 4479   6165   
index 0000000..67f5d29
 4480         -
-- /dev/null
        6166  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 4481   6167   
@@ -0,0 +1,3 @@
        6168  +
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
        6169  +
Host:example.amazonaws.com
        6170  +
 4482   6171   
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
 4483   6172   
similarity index 99%
 4484   6173   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 4485   6174   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 4486   6175   
index 34e3382..711c162 100644
 4487   6176   
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
 4488   6177   
similarity index 61%
 4489   6178   
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
 4490   6179   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4491   6180   
index 3dc4179..3f0a82a 100644
 4492         -
-- 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
        6181  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4493   6182   
@@ -1,3 +1,2 @@
 4494   6183   
POST / HTTP/1.1
 4495   6184   
Host:example.amazonaws.com
 4496         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4497   6185   
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
 4498   6186   
new file mode 100644
 4499   6187   
index 0000000..0468d80
 4500         -
-- /dev/null
        6188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 4501   6189   
@@ -0,0 +1,12 @@
        6190  +
{
        6191  +
    "credentials": {
        6192  +
        "access_key_id": "AKIDEXAMPLE",
        6193  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6194  +
    },
        6195  +
    "expiration_in_seconds": 3600,
        6196  +
    "normalize": true,
        6197  +
    "region": "us-east-1",
        6198  +
    "service": "service",
        6199  +
    "sign_body": false,
        6200  +
    "timestamp": "2015-08-30T12:36:00Z"
        6201  +
}
              \
 No newline at end of file
 4502   6202   
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
 4503   6203   
similarity index 99%
 4504   6204   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 4505   6205   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 4506   6206   
index a8e1727..2883822 100644
 4507   6207   
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
 4508   6208   
new file mode 100644
 4509   6209   
index 0000000..e3c2e6e
 4510         -
-- /dev/null
        6210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 4511   6211   
@@ -0,0 +1 @@
        6212  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 4512   6213   
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
 4513   6214   
new file mode 100644
 4514   6215   
index 0000000..1d6e288
 4515         -
-- /dev/null
        6216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 4516   6217   
@@ -0,0 +1,7 @@
        6218  +
POST / HTTP/1.1
        6219  +
Host:example.amazonaws.com
        6220  +
My-Header1:value1
        6221  +
X-Amz-Date:20150830T123600Z
        6222  +
X-Amz-Region-Set:us-east-1
        6223  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        6224  +
 4517   6225   
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
 4518   6226   
similarity index 99%
 4519   6227   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 4520   6228   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 4521   6229   
index f6e3e9b..7c5236a 100644
 4522   6230   
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
 4523   6231   
new file mode 100644
 4524   6232   
index 0000000..379dcb2
 4525         -
-- /dev/null
        6233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 4526   6234   
@@ -0,0 +1,4 @@
        6235  +
{
        6236  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6237  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6238  +
}
 4527   6239   
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
 4528   6240   
similarity index 99%
 4529   6241   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 4530   6242   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 4531   6243   
index 0ae73e1..2cf3f29 100644
 4532   6244   
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
 4533   6245   
new file mode 100644
 4534   6246   
index 0000000..2a08401
 4535         -
-- /dev/null
        6247  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 4536   6248   
@@ -0,0 +1 @@
        6249  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 4537   6250   
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
 4538   6251   
new file mode 100644
 4539   6252   
index 0000000..8d2343f
 4540         -
-- /dev/null
        6253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 4541   6254   
@@ -0,0 +1,4 @@
        6255  +
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
        6256  +
Host:example.amazonaws.com
        6257  +
My-Header1:value1
        6258  +
 4542   6259   
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
 4543   6260   
similarity index 99%
 4544   6261   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 4545   6262   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 4546   6263   
index 8cb96bf..2c4db7a 100644
 4547   6264   
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
 4548   6265   
similarity index 69%
 4549   6266   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 4550   6267   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4551   6268   
index 0253f19..917720e 100644
 4552         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        6269  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4553   6270   
@@ -1,4 +1,3 @@
 4554   6271   
POST / HTTP/1.1
 4555   6272   
Host:example.amazonaws.com
 4556   6273   
My-Header1:value1
 4557         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4558   6274   
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
 4559   6275   
new file mode 100644
 4560   6276   
index 0000000..0468d80
 4561         -
-- /dev/null
        6277  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 4562   6278   
@@ -0,0 +1,12 @@
        6279  +
{
        6280  +
    "credentials": {
        6281  +
        "access_key_id": "AKIDEXAMPLE",
        6282  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6283  +
    },
        6284  +
    "expiration_in_seconds": 3600,
        6285  +
    "normalize": true,
        6286  +
    "region": "us-east-1",
        6287  +
    "service": "service",
        6288  +
    "sign_body": false,
        6289  +
    "timestamp": "2015-08-30T12:36:00Z"
        6290  +
}
              \
 No newline at end of file
 4563   6291   
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
 4564   6292   
similarity index 99%
 4565   6293   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 4566   6294   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 4567   6295   
index 1dc3ef8..164e65c 100644
 4568   6296   
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
 4569   6297   
new file mode 100644
 4570   6298   
index 0000000..7072b0e
 4571         -
-- /dev/null
        6299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 4572   6300   
@@ -0,0 +1 @@
        6301  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 4573   6302   
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
 4574   6303   
new file mode 100644
 4575   6304   
index 0000000..17f5e3e
 4576         -
-- /dev/null
        6305  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 4577   6306   
@@ -0,0 +1,7 @@
        6307  +
POST / HTTP/1.1
        6308  +
Host:example.amazonaws.com
        6309  +
My-Header1:VALUE1
        6310  +
X-Amz-Date:20150830T123600Z
        6311  +
X-Amz-Region-Set:us-east-1
        6312  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        6313  +
 4578   6314   
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
 4579   6315   
similarity index 99%
 4580   6316   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 4581   6317   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 4582   6318   
index 59c7e45..620f54e 100644
 4583   6319   
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
 4584   6320   
new file mode 100644
 4585   6321   
index 0000000..379dcb2
 4586         -
-- /dev/null
        6322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 4587   6323   
@@ -0,0 +1,4 @@
        6324  +
{
        6325  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6326  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6327  +
}
 4588   6328   
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
 4589   6329   
similarity index 99%
 4590   6330   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 4591   6331   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 4592   6332   
index 377e6f3..23e0da3 100644
 4593   6333   
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
 4594   6334   
new file mode 100644
 4595   6335   
index 0000000..a18acb8
 4596         -
-- /dev/null
        6336  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 4597   6337   
@@ -0,0 +1 @@
        6338  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 4598   6339   
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
 4599   6340   
new file mode 100644
 4600   6341   
index 0000000..7cbdcfa
 4601         -
-- /dev/null
        6342  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 4602   6343   
@@ -0,0 +1,4 @@
        6344  +
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
        6345  +
Host:example.amazonaws.com
        6346  +
My-Header1:VALUE1
        6347  +
 4603   6348   
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
 4604   6349   
similarity index 99%
 4605   6350   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 4606   6351   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 4607   6352   
index 84a7afd..0c90627 100644
 4608   6353   
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
 4609   6354   
similarity index 69%
 4610   6355   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 4611   6356   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4612   6357   
index 3f9987a..5f14c91 100644
 4613         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        6358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4614   6359   
@@ -1,4 +1,3 @@
 4615   6360   
POST / HTTP/1.1
 4616   6361   
Host:example.amazonaws.com
 4617   6362   
My-Header1:VALUE1
 4618         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4619   6363   
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
 4620   6364   
new file mode 100644
 4621   6365   
index 0000000..8f1d5ce
 4622         -
-- /dev/null
        6366  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 4623   6367   
@@ -0,0 +1,14 @@
        6368  +
{
        6369  +
    "credentials": {
        6370  +
        "access_key_id": "AKIDEXAMPLE",
        6371  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6372  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6373  +
    },
        6374  +
    "expiration_in_seconds": 3600,
        6375  +
    "normalize": true,
        6376  +
    "region": "us-east-1",
        6377  +
    "service": "service",
        6378  +
    "sign_body": false,
        6379  +
    "timestamp": "2015-08-30T12:36:00Z",
        6380  +
    "omit_session_token": true
        6381  +
}
 4624   6382   
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
 4625   6383   
similarity index 99%
 4626   6384   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 4627   6385   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 4628   6386   
index a6942c1..e881ac7 100644
 4629   6387   
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
 4630   6388   
new file mode 100644
 4631   6389   
index 0000000..9c5ecb9
 4632         -
-- /dev/null
        6390  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 4633   6391   
@@ -0,0 +1 @@
        6392  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 4634   6393   
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
 4635   6394   
similarity index 52%
 4636   6395   
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
 4637   6396   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4638   6397   
index 9d91775..61b6527 100644
 4639         -
-- 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
        6398  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4640   6399   
@@ -1,4 +1,7 @@
 4641   6400   
POST / HTTP/1.1
 4642   6401   
Host:example.amazonaws.com
 4643         -
X-Amz-Date:20150830T123600Z
 4644   6402   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6403  +
X-Amz-Date:20150830T123600Z
        6404  +
X-Amz-Region-Set:us-east-1
        6405  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        6406  +
 4645   6407   
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
 4646   6408   
similarity index 99%
 4647   6409   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 4648   6410   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 4649   6411   
index d5650cb..f8adf13 100644
 4650   6412   
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
 4651   6413   
new file mode 100644
 4652   6414   
index 0000000..379dcb2
 4653         -
-- /dev/null
        6415  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 4654   6416   
@@ -0,0 +1,4 @@
        6417  +
{
        6418  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6419  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6420  +
}
 4655   6421   
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
 4656   6422   
similarity index 99%
 4657   6423   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 4658   6424   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 4659   6425   
index e48ce07..5ea8e3c 100644
 4660   6426   
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
 4661   6427   
new file mode 100644
 4662   6428   
index 0000000..ff8823a
 4663         -
-- /dev/null
        6429  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 4664   6430   
@@ -0,0 +1 @@
        6431  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 4665   6432   
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
 4666   6433   
new file mode 100644
 4667   6434   
index 0000000..cfac41b
 4668         -
-- /dev/null
        6435  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 4669   6436   
@@ -0,0 +1,3 @@
        6437  +
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
        6438  +
Host:example.amazonaws.com
        6439  +
 4670   6440   
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
 4671   6441   
similarity index 99%
 4672   6442   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 4673   6443   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 4674   6444   
index 34e3382..711c162 100644
 4675   6445   
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
 4676   6446   
similarity index 61%
 4677   6447   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 4678   6448   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4679   6449   
index 3dc4179..3f0a82a 100644
 4680         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        6450  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4681   6451   
@@ -1,3 +1,2 @@
 4682   6452   
POST / HTTP/1.1
 4683   6453   
Host:example.amazonaws.com
 4684         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4685   6454   
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
 4686   6455   
new file mode 100644
 4687   6456   
index 0000000..5187392
 4688         -
-- /dev/null
        6457  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 4689   6458   
@@ -0,0 +1,14 @@
        6459  +
{
        6460  +
    "credentials": {
        6461  +
        "access_key_id": "AKIDEXAMPLE",
        6462  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6463  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6464  +
    },
        6465  +
    "expiration_in_seconds": 3600,
        6466  +
    "normalize": true,
        6467  +
    "region": "us-east-1",
        6468  +
    "service": "service",
        6469  +
    "sign_body": false,
        6470  +
    "timestamp": "2015-08-30T12:36:00Z",
        6471  +
    "omit_session_token": false
        6472  +
}
 4690   6473   
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
 4691   6474   
similarity index 99%
 4692   6475   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 4693   6476   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 4694   6477   
index dd408c8..e95924e 100644
 4695   6478   
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
 4696   6479   
new file mode 100644
 4697   6480   
index 0000000..1573f07
 4698         -
-- /dev/null
        6481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 4699   6482   
@@ -0,0 +1 @@
        6483  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 4700   6484   
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
 4701   6485   
new file mode 100644
 4702   6486   
index 0000000..6ef9a08
 4703         -
-- /dev/null
        6487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 4704   6488   
@@ -0,0 +1,7 @@
        6489  +
POST / HTTP/1.1
        6490  +
Host:example.amazonaws.com
        6491  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6492  +
X-Amz-Date:20150830T123600Z
        6493  +
X-Amz-Region-Set:us-east-1
        6494  +
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
        6495  +
 4705   6496   
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
 4706   6497   
similarity index 99%
 4707   6498   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 4708   6499   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 4709   6500   
index f352b54..3c3235f 100644
 4710   6501   
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
 4711   6502   
new file mode 100644
 4712   6503   
index 0000000..379dcb2
 4713         -
-- /dev/null
        6504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 4714   6505   
@@ -0,0 +1,4 @@
        6506  +
{
        6507  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6508  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6509  +
}
 4715   6510   
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
 4716   6511   
similarity index 99%
 4717   6512   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 4718   6513   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 4719   6514   
index 832cdc0..63b7de5 100644
 4720   6515   
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
 4721   6516   
new file mode 100644
 4722   6517   
index 0000000..713f57c
 4723         -
-- /dev/null
        6518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 4724   6519   
@@ -0,0 +1 @@
        6520  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 4725   6521   
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
 4726   6522   
new file mode 100644
 4727   6523   
index 0000000..32c3bb3
 4728         -
-- /dev/null
        6524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 4729   6525   
@@ -0,0 +1,3 @@
        6526  +
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
        6527  +
Host:example.amazonaws.com
        6528  +
 4730   6529   
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
 4731   6530   
similarity index 99%
 4732   6531   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 4733   6532   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 4734   6533   
index d7f3668..b46cd8c 100644
 4735   6534   
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
 4736   6535   
similarity index 60%
 4737   6536   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 4738   6537   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4739   6538   
index 8b5efc8..3f0a82a 100644
 4740         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        6539  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4741   6540   
@@ -1,3 +1,2 @@
 4742   6541   
POST / HTTP/1.1
 4743   6542   
Host:example.amazonaws.com
 4744         -
X-Amz-Date:20150830T123600Z
 4745   6543   
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
 4746   6544   
new file mode 100644
 4747   6545   
index 0000000..0468d80
 4748         -
-- /dev/null
        6546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 4749   6547   
@@ -0,0 +1,12 @@
        6548  +
{
        6549  +
    "credentials": {
        6550  +
        "access_key_id": "AKIDEXAMPLE",
        6551  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6552  +
    },
        6553  +
    "expiration_in_seconds": 3600,
        6554  +
    "normalize": true,
        6555  +
    "region": "us-east-1",
        6556  +
    "service": "service",
        6557  +
    "sign_body": false,
        6558  +
    "timestamp": "2015-08-30T12:36:00Z"
        6559  +
}
              \
 No newline at end of file
 4750   6560   
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
 4751   6561   
similarity index 99%
 4752   6562   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 4753   6563   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 4754   6564   
index 02af60f..34b8c11 100644
 4755   6565   
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
 4756   6566   
new file mode 100644
 4757   6567   
index 0000000..aac6427
 4758         -
-- /dev/null
        6568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 4759   6569   
@@ -0,0 +1 @@
        6570  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 4760   6571   
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
 4761   6572   
new file mode 100644
 4762   6573   
index 0000000..a611436
 4763         -
-- /dev/null
        6574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 4764   6575   
@@ -0,0 +1,6 @@
        6576  +
POST /?Param1=value1 HTTP/1.1
        6577  +
Host:example.amazonaws.com
        6578  +
X-Amz-Date:20150830T123600Z
        6579  +
X-Amz-Region-Set:us-east-1
        6580  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        6581  +
 4765   6582   
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
 4766   6583   
similarity index 99%
 4767   6584   
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
 4768   6585   
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
 4769   6586   
index 4256b4f..ad88dff 100644
 4770   6587   
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
 4771   6588   
new file mode 100644
 4772   6589   
index 0000000..379dcb2
 4773         -
-- /dev/null
        6590  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 4774   6591   
@@ -0,0 +1,4 @@
        6592  +
{
        6593  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6594  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6595  +
}
 4775   6596   
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
 4776   6597   
similarity index 99%
 4777   6598   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 4778   6599   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 4779   6600   
index fa84bbd..76d5ad6 100644
 4780   6601   
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
 4781   6602   
new file mode 100644
 4782   6603   
index 0000000..4cb1c94
 4783         -
-- /dev/null
        6604  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 4784   6605   
@@ -0,0 +1 @@
        6606  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 4785   6607   
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
 4786   6608   
new file mode 100644
 4787   6609   
index 0000000..bd22b97
 4788         -
-- /dev/null
        6610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 4789   6611   
@@ -0,0 +1,3 @@
        6612  +
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
        6613  +
Host:example.amazonaws.com
        6614  +
 4790   6615   
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
 4791   6616   
similarity index 99%
 4792   6617   
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
 4793   6618   
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
 4794   6619   
index de270ef..8c9d319 100644
 4795   6620   
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
 4796   6621   
similarity index 67%
 4797   6622   
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
 4798   6623   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 4799   6624   
index 9157bc7..c9d6e5d 100644
 4800         -
-- 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
        6625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 4801   6626   
@@ -1,3 +1,2 @@
 4802   6627   
POST /?Param1=value1 HTTP/1.1
 4803   6628   
Host:example.amazonaws.com
 4804         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4805   6629   
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
 4806   6630   
new file mode 100644
 4807   6631   
index 0000000..0468d80
 4808         -
-- /dev/null
        6632  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 4809   6633   
@@ -0,0 +1,12 @@
        6634  +
{
        6635  +
    "credentials": {
        6636  +
        "access_key_id": "AKIDEXAMPLE",
        6637  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6638  +
    },
        6639  +
    "expiration_in_seconds": 3600,
        6640  +
    "normalize": true,
        6641  +
    "region": "us-east-1",
        6642  +
    "service": "service",
        6643  +
    "sign_body": false,
        6644  +
    "timestamp": "2015-08-30T12:36:00Z"
        6645  +
}
              \
 No newline at end of file
 4810   6646   
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
 4811   6647   
similarity index 99%
 4812   6648   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 4813   6649   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 4814   6650   
index 02af60f..34b8c11 100644
 4815   6651   
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
 4816   6652   
new file mode 100644
 4817   6653   
index 0000000..34f75c8
 4818         -
-- /dev/null
        6654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 4819   6655   
@@ -0,0 +1 @@
        6656  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 4820   6657   
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
 4821   6658   
new file mode 100644
 4822   6659   
index 0000000..c731408
 4823         -
-- /dev/null
        6660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 4824   6661   
@@ -0,0 +1,6 @@
        6662  +
POST /?Param1=value1 HTTP/1.1
        6663  +
Host:example.amazonaws.com
        6664  +
X-Amz-Date:20150830T123600Z
        6665  +
X-Amz-Region-Set:us-east-1
        6666  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        6667  +
 4825   6668   
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
 4826   6669   
similarity index 99%
 4827   6670   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 4828   6671   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 4829   6672   
index 4256b4f..ad88dff 100644
 4830   6673   
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
 4831   6674   
new file mode 100644
 4832   6675   
index 0000000..379dcb2
 4833         -
-- /dev/null
        6676  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 4834   6677   
@@ -0,0 +1,4 @@
        6678  +
{
        6679  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6680  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6681  +
}
 4835   6682   
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
 4836   6683   
similarity index 99%
 4837   6684   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 4838   6685   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 4839   6686   
index fa84bbd..76d5ad6 100644
 4840   6687   
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
 4841   6688   
new file mode 100644
 4842   6689   
index 0000000..ae000d6
 4843         -
-- /dev/null
        6690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 4844   6691   
@@ -0,0 +1 @@
        6692  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 4845   6693   
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
 4846   6694   
new file mode 100644
 4847   6695   
index 0000000..a868f7d
 4848         -
-- /dev/null
        6696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 4849   6697   
@@ -0,0 +1,3 @@
        6698  +
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
        6699  +
Host:example.amazonaws.com
        6700  +
 4850   6701   
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
 4851   6702   
similarity index 99%
 4852   6703   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 4853   6704   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 4854   6705   
index de270ef..8c9d319 100644
 4855   6706   
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
 4856   6707   
similarity index 67%
 4857   6708   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 4858   6709   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 4859   6710   
index 9157bc7..c9d6e5d 100644
 4860         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        6711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 4861   6712   
@@ -1,3 +1,2 @@
 4862   6713   
POST /?Param1=value1 HTTP/1.1
 4863   6714   
Host:example.amazonaws.com
 4864         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4865   6715   
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
 4866   6716   
new file mode 100644
 4867   6717   
index 0000000..0468d80
 4868         -
-- /dev/null
        6718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 4869   6719   
@@ -0,0 +1,12 @@
        6720  +
{
        6721  +
    "credentials": {
        6722  +
        "access_key_id": "AKIDEXAMPLE",
        6723  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6724  +
    },
        6725  +
    "expiration_in_seconds": 3600,
        6726  +
    "normalize": true,
        6727  +
    "region": "us-east-1",
        6728  +
    "service": "service",
        6729  +
    "sign_body": false,
        6730  +
    "timestamp": "2015-08-30T12:36:00Z"
        6731  +
}
              \
 No newline at end of file
 4870   6732   
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
 4871   6733   
similarity index 99%
 4872   6734   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 4873   6735   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 4874   6736   
index a6942c1..e881ac7 100644
 4875   6737   
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
 4876   6738   
new file mode 100644
 4877   6739   
index 0000000..7c5e47b
 4878         -
-- /dev/null
        6740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 4879   6741   
@@ -0,0 +1 @@
        6742  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 4880   6743   
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
 4881   6744   
new file mode 100644
 4882   6745   
index 0000000..c0e50a0
 4883         -
-- /dev/null
        6746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 4884   6747   
@@ -0,0 +1,6 @@
        6748  +
POST / HTTP/1.1
        6749  +
Host:example.amazonaws.com
        6750  +
X-Amz-Date:20150830T123600Z
        6751  +
X-Amz-Region-Set:us-east-1
        6752  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        6753  +
 4885   6754   
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
 4886   6755   
similarity index 99%
 4887   6756   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 4888   6757   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 4889   6758   
index d5650cb..f8adf13 100644
 4890   6759   
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
 4891   6760   
new file mode 100644
 4892   6761   
index 0000000..379dcb2
 4893         -
-- /dev/null
        6762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 4894   6763   
@@ -0,0 +1,4 @@
        6764  +
{
        6765  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6766  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6767  +
}
 4895   6768   
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
 4896   6769   
similarity index 99%
 4897   6770   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 4898   6771   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 4899   6772   
index e48ce07..5ea8e3c 100644
 4900   6773   
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
 4901   6774   
new file mode 100644
 4902   6775   
index 0000000..ea8e3b4
 4903         -
-- /dev/null
        6776  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 4904   6777   
@@ -0,0 +1 @@
        6778  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 4905   6779   
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
 4906   6780   
new file mode 100644
 4907   6781   
index 0000000..616973f
 4908         -
-- /dev/null
        6782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 4909   6783   
@@ -0,0 +1,3 @@
        6784  +
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
        6785  +
Host:example.amazonaws.com
        6786  +
 4910   6787   
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
 4911   6788   
similarity index 99%
 4912   6789   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 4913   6790   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 4914   6791   
index 34e3382..711c162 100644
 4915   6792   
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
 4916   6793   
new file mode 100644
 4917   6794   
index 0000000..3f0a82a
 4918         -
-- /dev/null
        6795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 4919   6796   
@@ -0,0 +1,2 @@
        6797  +
POST / HTTP/1.1
        6798  +
Host:example.amazonaws.com
 4920   6799   
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
 4921   6800   
new file mode 100644
 4922   6801   
index 0000000..0db1df1
 4923         -
-- /dev/null
        6802  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 4924   6803   
@@ -0,0 +1,12 @@
        6804  +
{
        6805  +
    "credentials": {
        6806  +
        "access_key_id": "AKIDEXAMPLE",
        6807  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6808  +
    },
        6809  +
    "expiration_in_seconds": 3600,
        6810  +
    "normalize": true,
        6811  +
    "region": "us-east-1",
        6812  +
    "service": "service",
        6813  +
    "sign_body": true,
        6814  +
    "timestamp": "2015-08-30T12:36:00Z"
        6815  +
}
              \
 No newline at end of file
 4925   6816   
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
 4926   6817   
similarity index 62%
 4927   6818   
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
 4928   6819   
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
 4929   6820   
index 05ab787..62639b2 100644
 4930         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        6821  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 4931   6822   
@@ -1,12 +1,12 @@
 4932   6823   
POST
 4933   6824   
/
 4934   6825   
 4935   6826   
content-length:13
 4936   6827   
content-type:application/x-www-form-urlencoded; charset=utf-8
 4937   6828   
host:example.amazonaws.com
 4938         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6829  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 4939   6830   
x-amz-date:20150830T123600Z
 4940   6831   
x-amz-region-set:us-east-1
 4941   6832   
 4942   6833   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 4943         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6834  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 4944   6835   
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
 4945   6836   
new file mode 100644
 4946   6837   
index 0000000..006ec2e
 4947         -
-- /dev/null
        6838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 4948   6839   
@@ -0,0 +1 @@
        6840  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 4949   6841   
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
 4950   6842   
new file mode 100644
 4951   6843   
index 0000000..87a11f2
 4952         -
-- /dev/null
        6844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 4953   6845   
@@ -0,0 +1,10 @@
        6846  +
POST / HTTP/1.1
        6847  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        6848  +
Host:example.amazonaws.com
        6849  +
Content-Length:13
        6850  +
X-Amz-Date:20150830T123600Z
        6851  +
X-Amz-Region-Set:us-east-1
        6852  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        6853  +
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
        6854  +
        6855  +
Param1=value1
              \
 No newline at end of file
 4954   6856   
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
 4955   6857   
new file mode 100644
 4956   6858   
index 0000000..c047afb
 4957         -
-- /dev/null
        6859  +
++ 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
 4958   6860   
@@ -0,0 +1,4 @@
        6861  +
AWS4-ECDSA-P256-SHA256
        6862  +
20150830T123600Z
        6863  +
20150830/service/aws4_request
        6864  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 4959   6865   
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
 4960   6866   
new file mode 100644
 4961   6867   
index 0000000..379dcb2
 4962         -
-- /dev/null
        6868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 4963   6869   
@@ -0,0 +1,4 @@
        6870  +
{
        6871  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6872  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6873  +
}
 4964   6874   
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
 4965   6875   
similarity index 85%
 4966   6876   
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
 4967   6877   
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
 4968   6878   
index fcc454f..6933a8c 100644
 4969         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        6879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 4970   6880   
@@ -1,9 +1,9 @@
 4971   6881   
POST
 4972   6882   
/
 4973   6883   
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
 4974   6884   
content-length:13
 4975   6885   
content-type:application/x-www-form-urlencoded; charset=utf-8
 4976   6886   
host:example.amazonaws.com
 4977   6887   
 4978   6888   
content-length;content-type;host
 4979         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6889  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 4980   6890   
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
 4981   6891   
new file mode 100644
 4982   6892   
index 0000000..34a2e12
 4983         -
-- /dev/null
        6893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 4984   6894   
@@ -0,0 +1 @@
        6895  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 4985   6896   
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
 4986   6897   
new file mode 100644
 4987   6898   
index 0000000..197b99e
 4988         -
-- /dev/null
        6899  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 4989   6900   
@@ -0,0 +1,6 @@
        6901  +
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
        6902  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        6903  +
Host:example.amazonaws.com
        6904  +
Content-Length:13
        6905  +
        6906  +
Param1=value1
              \
 No newline at end of file
 4990   6907   
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
 4991   6908   
new file mode 100644
 4992   6909   
index 0000000..9d2bc74
 4993         -
-- /dev/null
        6910  +
++ 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
 4994   6911   
@@ -0,0 +1,4 @@
        6912  +
AWS4-ECDSA-P256-SHA256
        6913  +
20150830T123600Z
        6914  +
20150830/service/aws4_request
        6915  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 4995   6916   
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
 4996   6917   
similarity index 80%
 4997   6918   
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
 4998   6919   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 4999   6920   
index 36015f1..8289eaa 100644
 5000         -
-- 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
        6921  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5001   6922   
@@ -1,6 +1,6 @@
 5002   6923   
POST / HTTP/1.1
 5003   6924   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 5004   6925   
Host:example.amazonaws.com
 5005         -
X-Amz-Date:20150830T123600Z
        6926  +
Content-Length:13
 5006   6927   
 5007   6928   
Param1=value1
              \
 No newline at end of file
 5008   6929   
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
 5009   6930   
new file mode 100644
 5010   6931   
index 0000000..0db1df1
 5011         -
-- /dev/null
        6932  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 5012   6933   
@@ -0,0 +1,12 @@
        6934  +
{
        6935  +
    "credentials": {
        6936  +
        "access_key_id": "AKIDEXAMPLE",
        6937  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6938  +
    },
        6939  +
    "expiration_in_seconds": 3600,
        6940  +
    "normalize": true,
        6941  +
    "region": "us-east-1",
        6942  +
    "service": "service",
        6943  +
    "sign_body": true,
        6944  +
    "timestamp": "2015-08-30T12:36:00Z"
        6945  +
}
              \
 No newline at end of file
 5013   6946   
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
 5014   6947   
similarity index 61%
 5015   6948   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 5016   6949   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5017   6950   
index 69009dc..797632b 100644
 5018         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        6951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5019   6952   
@@ -1,12 +1,12 @@
 5020   6953   
POST
 5021   6954   
/
 5022   6955   
 5023   6956   
content-length:13
 5024   6957   
content-type:application/x-www-form-urlencoded
 5025   6958   
host:example.amazonaws.com
 5026         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6959  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5027   6960   
x-amz-date:20150830T123600Z
 5028   6961   
x-amz-region-set:us-east-1
 5029   6962   
 5030   6963   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5031         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6964  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5032   6965   
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
 5033   6966   
new file mode 100644
 5034   6967   
index 0000000..f5a641c
 5035         -
-- /dev/null
        6968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 5036   6969   
@@ -0,0 +1 @@
        6970  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 5037   6971   
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
 5038   6972   
new file mode 100644
 5039   6973   
index 0000000..7bd94a7
 5040         -
-- /dev/null
        6974  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 5041   6975   
@@ -0,0 +1,10 @@
        6976  +
POST / HTTP/1.1
        6977  +
Content-Type:application/x-www-form-urlencoded
        6978  +
Host:example.amazonaws.com
        6979  +
Content-Length:13
        6980  +
X-Amz-Date:20150830T123600Z
        6981  +
X-Amz-Region-Set:us-east-1
        6982  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        6983  +
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
        6984  +
        6985  +
Param1=value1
              \
 No newline at end of file
 5042   6986   
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
 5043   6987   
new file mode 100644
 5044   6988   
index 0000000..8d25ba9
 5045         -
-- /dev/null
        6989  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 5046   6990   
@@ -0,0 +1,4 @@
        6991  +
AWS4-ECDSA-P256-SHA256
        6992  +
20150830T123600Z
        6993  +
20150830/service/aws4_request
        6994  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 5047   6995   
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
 5048   6996   
new file mode 100644
 5049   6997   
index 0000000..379dcb2
 5050         -
-- /dev/null
        6998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 5051   6999   
@@ -0,0 +1,4 @@
        7000  +
{
        7001  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7002  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7003  +
}
 5052   7004   
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
 5053   7005   
similarity index 99%
 5054   7006   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 5055   7007   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 5056   7008   
index 9ed065b..563ff58 100644
 5057   7009   
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
 5058   7010   
new file mode 100644
 5059   7011   
index 0000000..0c77daf
 5060         -
-- /dev/null
        7012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 5061   7013   
@@ -0,0 +1 @@
        7014  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 5062   7015   
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
 5063   7016   
new file mode 100644
 5064   7017   
index 0000000..71d6de9
 5065         -
-- /dev/null
        7018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 5066   7019   
@@ -0,0 +1,6 @@
        7020  +
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
        7021  +
Content-Type:application/x-www-form-urlencoded
        7022  +
Host:example.amazonaws.com
        7023  +
Content-Length:13
        7024  +
        7025  +
Param1=value1
              \
 No newline at end of file
 5067   7026   
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
 5068   7027   
similarity index 99%
 5069   7028   
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
 5070   7029   
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
 5071   7030   
index bef3143..cc7a224 100644
 5072   7031   
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
 5073   7032   
new file mode 100644
 5074   7033   
index 0000000..760b2d3
 5075         -
-- /dev/null
        7034  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 5076   7035   
@@ -0,0 +1,6 @@
        7036  +
POST / HTTP/1.1
        7037  +
Content-Type:application/x-www-form-urlencoded
        7038  +
Host:example.amazonaws.com
        7039  +
Content-Length:13
        7040  +
        7041  +
Param1=value1
              \
 No newline at end of file
 5077   7042   
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
 5078   7043   
index 9bd636f..b53f33f 100644
 5079         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        7044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 5080   7045   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 5081   7046   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 5082   7047   
        }
 5083   7048   
 5084   7049   
        if let SignatureValues::QueryParams(values) = values {
 5085   7050   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 5086   7051   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 5087   7052   
 5088   7053   
            #[cfg(feature = "sigv4a")]
 5089   7054   
            if let Some(regions) = values.region_set {
 5090   7055   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 5091   7056   
            }
 5092   7057   
 5093   7058   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 5094   7059   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 5095   7060   
            add_param(
 5096   7061   
                &mut params,
 5097   7062   
                param::X_AMZ_SIGNED_HEADERS,
 5098   7063   
                values.signed_headers.as_str(),
 5099   7064   
            );
 5100   7065   
 5101   7066   
            if let Some(security_token) = values.security_token {
 5102   7067   
                add_param(
 5103   7068   
                    &mut params,
 5104   7069   
                    settings
 5105   7070   
                        .session_token_name_override
 5106   7071   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 5107   7072   
                    security_token,
 5108   7073   
                );
 5109   7074   
            }
 5110   7075   
        }
 5111         -
        // Sort by param name, and then by param value
        7076  +
        7077  +
        // Sort on the _encoded_ key/value pairs
        7078  +
        let mut params: Vec<(String, String)> = params
        7079  +
            .into_iter()
        7080  +
            .map(|x| {
        7081  +
                use aws_smithy_http::query::fmt_string;
        7082  +
                let enc_k = fmt_string(&x.0);
        7083  +
                let enc_v = fmt_string(&x.1);
        7084  +
                (enc_k, enc_v)
        7085  +
            })
        7086  +
            .collect();
        7087  +
 5112   7088   
        params.sort();
 5113   7089   
 5114   7090   
        let mut query = QueryWriter::new(uri);
 5115   7091   
        query.clear_params();
 5116   7092   
        for (key, value) in params {
 5117         -
            query.insert(&key, &value);
        7093  +
            query.insert_encoded(&key, &value);
 5118   7094   
        }
 5119   7095   
 5120   7096   
        let query = query.build_query();
 5121   7097   
        if query.is_empty() {
 5122   7098   
            None
 5123   7099   
        } else {
 5124   7100   
            Some(query)
 5125   7101   
        }
 5126   7102   
    }
 5127   7103   
 5128   7104   
    fn insert_host_header(
 5129   7105   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 5130   7106   
        uri: &Uri,
 5131   7107   
    ) -> HeaderValue {
 5132   7108   
        match canonical_headers.get(&HOST) {
 5133   7109   
            Some(header) => header.clone(),
 5134   7110   
            None => {
 5135   7111   
                let port = uri.port();
 5136   7112   
                let scheme = uri.scheme();
 5137   7113   
                let authority = uri
 5138   7114   
                    .authority()
 5139   7115   
                    .expect("request uri authority must be set for signing")
 5140   7116   
                    .as_str();
 5141   7117   
                let host = uri
 5142   7118   
                    .host()
 5143   7119   
                    .expect("request uri host must be set for signing");
 5144   7120   
 5145   7121   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 5146   7122   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 5147   7123   
                // sent in the Host header (and Hyper strips default ports if they are present)
 5148   7124   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 5149   7125   
            service,
 5150   7126   
            hashed_creq,
 5151   7127   
            signature_version: SignatureVersion::V4a,
 5152   7128   
        }
 5153   7129   
    }
 5154   7130   
}
 5155   7131   
 5156   7132   
impl fmt::Display for StringToSign<'_> {
 5157   7133   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 5158   7134   
        write!(
 5159   7135   
            f,
 5160   7136   
            "{}\n{}\n{}\n{}",
 5161   7137   
            self.algorithm,
 5162   7138   
            format_date_time(self.time),
 5163   7139   
            match self.signature_version {
 5164   7140   
                SignatureVersion::V4 => self.scope.to_string(),
 5165   7141   
                SignatureVersion::V4a => self.scope.v4a_display(),
 5166   7142   
            },
 5167   7143   
            self.hashed_creq
 5168   7144   
        )
 5169   7145   
    }
 5170   7146   
}
 5171   7147   
 5172   7148   
#[cfg(test)]
 5173   7149   
mod tests {
 5174   7150   
    use crate::date_time::test_parsers::parse_date_time;
 5175   7151   
    use crate::http_request::canonical_request::{
 5176   7152   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 5177   7153   
    };
 5178   7154   
    use crate::http_request::test;
        7155  +
    use crate::http_request::test::SigningSuiteTest;
 5179   7156   
    use crate::http_request::{
 5180   7157   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 5181   7158   
        SigningParams, SigningSettings,
 5182   7159   
    };
 5183   7160   
    use crate::sign::v4;
 5184   7161   
    use crate::sign::v4::sha256_hex_string;
 5185   7162   
    use aws_credential_types::Credentials;
 5186   7163   
    use aws_smithy_http::query_writer::QueryWriter;
 5187   7164   
    use aws_smithy_runtime_api::client::identity::Identity;
 5188   7165   
    use http0::{HeaderValue, Uri};
 5189   7166   
    use pretty_assertions::assert_eq;
 5190   7167   
    use proptest::{prelude::*, proptest};
 5191   7168   
    use std::borrow::Cow;
 5192   7169   
    use std::time::Duration;
 5193   7170   
 5194   7171   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 5195   7172   
        v4::signing_params::Builder::default()
 5196   7173   
            .identity(identity)
 5197   7174   
            .region("test-region")
 5198   7175   
            .name("testservicename")
 5199   7176   
            .time(parse_date_time("20210511T154045Z").unwrap())
 5200   7177   
            .settings(settings)
 5201   7178   
            .build()
 5202   7179   
            .unwrap()
 5203   7180   
            .into()
 5204   7181   
    }
 5205   7182   
 5206   7183   
    #[test]
 5207   7184   
    fn test_repeated_header() {
 5208         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7185  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7186  +
        let mut req = test.request();
 5209   7187   
        req.headers.push((
 5210   7188   
            "x-amz-object-attributes".to_string(),
 5211   7189   
            "Checksum".to_string(),
 5212   7190   
        ));
 5213   7191   
        req.headers.push((
 5214   7192   
            "x-amz-object-attributes".to_string(),
 5215   7193   
            "ObjectSize".to_string(),
 5216   7194   
        ));
 5217   7195   
        let req = SignableRequest::from(&req);
 5218   7196   
        let settings = SigningSettings {
 5219   7197   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5220   7198   
            session_token_mode: SessionTokenMode::Exclude,
 5221   7199   
            ..Default::default()
 5222   7200   
        };
 5223   7201   
        let identity = Credentials::for_tests().into();
 5224   7202   
        let signing_params = signing_params(&identity, settings);
 5225   7203   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5226   7204   
 5227   7205   
        assert_eq!(
 5228   7206   
            creq.values.signed_headers().to_string(),
 5229   7207   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 5230   7208   
        );
 5231   7209   
        assert_eq!(
 5232   7210   
            creq.header_values_for("x-amz-object-attributes"),
 5233   7211   
            "Checksum,ObjectSize",
 5234   7212   
        );
 5235   7213   
    }
 5236   7214   
 5237   7215   
    #[test]
 5238   7216   
    fn test_host_header_properly_handles_ports() {
 5239   7217   
        fn host_header_test_setup(endpoint: String) -> String {
 5240         -
            let mut req = test::v4::test_request("get-vanilla");
        7218  +
            let test = SigningSuiteTest::v4("get-vanilla");
        7219  +
            let mut req = test.request();
 5241   7220   
            req.uri = endpoint;
 5242   7221   
            let req = SignableRequest::from(&req);
 5243   7222   
            let settings = SigningSettings {
 5244   7223   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5245   7224   
                session_token_mode: SessionTokenMode::Exclude,
 5246   7225   
                ..Default::default()
 5247   7226   
            };
 5248   7227   
            let identity = Credentials::for_tests().into();
 5249   7228   
            let signing_params = signing_params(&identity, settings);
 5250   7229   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5251   7230   
            creq.header_values_for("host")
 5252   7231   
        }
 5253   7232   
 5254   7233   
        // HTTP request with 80 port should not be signed with that port
 5255   7234   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 5256   7235   
        assert_eq!(http_80_host_header, "localhost",);
 5257   7236   
 5258   7237   
        // HTTP request with non-80 port should be signed with that port
 5259   7238   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 5260   7239   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 5261   7240   
 5262   7241   
        // HTTPS request with 443 port should not be signed with that port
 5263   7242   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 5264   7243   
        assert_eq!(https_443_host_header, "localhost",);
 5265   7244   
 5266   7245   
        // HTTPS request with non-443 port should be signed with that port
 5267   7246   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 5268   7247   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 5269   7248   
    }
 5270   7249   
 5271   7250   
    #[test]
 5272   7251   
    fn test_set_xamz_sha_256() {
 5273         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7252  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7253  +
        let req = test.request();
 5274   7254   
        let req = SignableRequest::from(&req);
 5275   7255   
        let settings = SigningSettings {
 5276   7256   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5277   7257   
            session_token_mode: SessionTokenMode::Exclude,
 5278   7258   
            ..Default::default()
 5279   7259   
        };
 5280   7260   
        let identity = Credentials::for_tests().into();
 5281   7261   
        let mut signing_params = signing_params(&identity, settings);
 5282   7262   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5283   7263   
        assert_eq!(
 5284   7264   
            creq.values.content_sha256(),
 5285   7265   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 5286   7266   
        );
 5287   7267   
        // assert that the sha256 header was added
 5288   7268   
        assert_eq!(
 5289   7269   
            creq.values.signed_headers().as_str(),
 5290   7270   
            "host;x-amz-content-sha256;x-amz-date"
 5291   7271   
        );
 5292   7272   
 5293   7273   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 5294   7274   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5295   7275   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5296   7276   
    }
 5297   7277   
 5298   7278   
    #[test]
 5299   7279   
    fn test_unsigned_payload() {
 5300         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7280  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7281  +
        let mut req = test.request();
 5301   7282   
        req.set_body(SignableBody::UnsignedPayload);
 5302   7283   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 5303   7284   
 5304   7285   
        let settings = SigningSettings {
 5305   7286   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5306   7287   
            ..Default::default()
 5307   7288   
        };
 5308   7289   
        let identity = Credentials::for_tests().into();
 5309   7290   
        let signing_params = signing_params(&identity, settings);
 5310   7291   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5311   7292   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 5312   7293   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 5313   7294   
    }
 5314   7295   
 5315   7296   
    #[test]
 5316   7297   
    fn test_precomputed_payload() {
 5317   7298   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 5318         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7299  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7300  +
        let mut req = test.request();
 5319   7301   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 5320   7302   
        let req = SignableRequest::from(&req);
 5321   7303   
        let settings = SigningSettings {
 5322   7304   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5323   7305   
            ..Default::default()
 5324   7306   
        };
 5325   7307   
        let identity = Credentials::for_tests().into();
 5326   7308   
        let signing_params = signing_params(&identity, settings);
 5327   7309   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5328   7310   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 5329   7311   
        assert!(creq.to_string().ends_with(payload_hash));
 5330   7312   
    }
 5331   7313   
 5332   7314   
    #[test]
 5333   7315   
    fn test_generate_scope() {
 5334   7316   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 5335   7317   
        let scope = SigningScope {
 5336   7318   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5337   7319   
            region: "us-east-1",
 5338   7320   
            service: "iam",
 5339   7321   
        };
 5340   7322   
        assert_eq!(format!("{}\n", scope), expected);
 5341   7323   
    }
 5342   7324   
 5343   7325   
    #[test]
 5344   7326   
    fn test_string_to_sign() {
 5345   7327   
        let time = parse_date_time("20150830T123600Z").unwrap();
 5346         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 5347         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        7328  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7329  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        7330  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 5348   7331   
        let encoded = sha256_hex_string(creq.as_bytes());
 5349   7332   
 5350   7333   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 5351   7334   
        assert_eq!(expected_sts, actual.to_string());
 5352   7335   
    }
 5353   7336   
 5354   7337   
    #[test]
 5355   7338   
    fn test_digest_of_canonical_request() {
 5356         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        7339  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7340  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 5357   7341   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 5358   7342   
        let actual = sha256_hex_string(creq.as_bytes());
 5359   7343   
        assert_eq!(expected, actual);
 5360   7344   
    }
 5361   7345   
 5362   7346   
    #[test]
 5363   7347   
    fn test_double_url_encode_path() {
 5364         -
        let req = test::v4::test_request("double-encode-path");
        7348  +
        let test = SigningSuiteTest::v4("double-encode-path");
        7349  +
        let req = test.request();
 5365   7350   
        let req = SignableRequest::from(&req);
 5366   7351   
        let identity = Credentials::for_tests().into();
 5367   7352   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5368   7353   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5369   7354   
 5370         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        7355  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5371   7356   
        let actual = format!("{}", creq);
 5372   7357   
        assert_eq!(actual, expected);
 5373   7358   
    }
 5374   7359   
 5375   7360   
    #[test]
 5376   7361   
    fn test_double_url_encode() {
 5377         -
        let req = test::v4::test_request("double-url-encode");
        7362  +
        let test = SigningSuiteTest::v4("double-url-encode");
        7363  +
        let req = test.request();
 5378   7364   
        let req = SignableRequest::from(&req);
 5379   7365   
        let identity = Credentials::for_tests().into();
 5380   7366   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5381   7367   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5382         -
 5383         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        7368  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5384   7369   
        let actual = format!("{}", creq);
 5385   7370   
        assert_eq!(actual, expected);
 5386   7371   
    }
 5387   7372   
 5388   7373   
    #[test]
 5389   7374   
    fn test_tilde_in_uri() {
 5390   7375   
        let req = http0::Request::builder()
 5391   7376   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 5392   7377   
        let req = SignableRequest::from(&req);
 5393   7378   
        let identity = Credentials::for_tests().into();
 5394   7379   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5395   7380   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5396   7381   
        assert_eq!(
 5397   7382   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 5398   7383   
            creq.params.as_deref(),
 5399   7384   
        );
 5400   7385   
    }
 5401   7386   
 5402   7387   
    #[test]
 5403   7388   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 5404   7389   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 5405   7390   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 5406   7391   
 5407   7392   
        let mut query_writer = QueryWriter::new(&uri);
 5408   7393   
        query_writer.insert("list-type", "2");
 5409   7394   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 5410   7395   
 5411   7396   
        let req = http0::Request::builder()
 5412   7397   
            .uri(query_writer.build_uri())
 5413   7398   
            .body("")
 5414   7399   
            .unwrap()
 5415   7400   
            .into();
 5416   7401   
        let req = SignableRequest::from(&req);
 5417   7402   
        let identity = Credentials::for_tests().into();
 5418   7403   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5419   7404   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5420   7405   
 5421   7406   
        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~";
 5422   7407   
        let actual = creq.params.unwrap();
 5423   7408   
        assert_eq!(expected, actual);
 5424   7409   
    }
 5425   7410   
 5426   7411   
    #[test]
 5427   7412   
    fn test_omit_session_token() {
 5428         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7413  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7414  +
        let req = test.request();
 5429   7415   
        let req = SignableRequest::from(&req);
 5430   7416   
        let settings = SigningSettings {
 5431   7417   
            session_token_mode: SessionTokenMode::Include,
 5432   7418   
            ..Default::default()
 5433   7419   
        };
 5434   7420   
        let identity = Credentials::for_tests_with_session_token().into();
 5435   7421   
        let mut signing_params = signing_params(&identity, settings);
 5436   7422   
 5437   7423   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5438   7424   
        assert_eq!(
 5439   7425   
            creq.values.signed_headers().as_str(),
 5440   7426   
            "host;x-amz-date;x-amz-security-token"
 5441   7427   
        );
 5442   7428   
        assert_eq!(
 5443   7429   
            creq.headers.get("x-amz-security-token").unwrap(),
 5444   7430   
            "notarealsessiontoken"
 5445   7431   
        );
 5446   7432   
 5447   7433   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 5448   7434   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5449   7435   
        assert_eq!(
 5450   7436   
            creq.headers.get("x-amz-security-token").unwrap(),
 5451   7437   
            "notarealsessiontoken"
 5452   7438   
        );
 5453   7439   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5454   7440   
    }
 5455   7441   
 5456   7442   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 5457   7443   
    #[test]
 5458   7444   
    fn non_presigning_header_exclusion() {
 5459   7445   
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
 5460   7446   
index c4bbbee..363fc2c 100644
 5461         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        7447  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 5462   7448   
@@ -6,60 +6,62 @@
 5463   7449   
use super::error::SigningError;
 5464   7450   
use super::{PayloadChecksumKind, SignatureLocation};
 5465   7451   
use crate::http_request::canonical_request::header;
 5466   7452   
use crate::http_request::canonical_request::param;
 5467   7453   
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5468   7454   
use crate::http_request::error::CanonicalRequestError;
 5469   7455   
use crate::http_request::SigningParams;
 5470   7456   
use crate::sign::v4;
 5471   7457   
#[cfg(feature = "sigv4a")]
 5472   7458   
use crate::sign::v4a;
 5473   7459   
use crate::{SignatureVersion, SigningOutput};
 5474   7460   
use http0::Uri;
 5475   7461   
use std::borrow::Cow;
 5476   7462   
use std::fmt::{Debug, Formatter};
 5477   7463   
use std::str;
 5478   7464   
 5479   7465   
const LOG_SIGNABLE_BODY: &str = "LOG_SIGNABLE_BODY";
 5480   7466   
 5481   7467   
/// Represents all of the information necessary to sign an HTTP request.
 5482   7468   
#[derive(Debug)]
 5483   7469   
#[non_exhaustive]
 5484   7470   
pub struct SignableRequest<'a> {
 5485   7471   
    method: &'a str,
 5486   7472   
    uri: Uri,
 5487   7473   
    headers: Vec<(&'a str, &'a str)>,
 5488   7474   
    body: SignableBody<'a>,
 5489   7475   
}
 5490   7476   
 5491   7477   
impl<'a> SignableRequest<'a> {
 5492   7478   
    /// Creates a new `SignableRequest`.
        7479  +
    ///
        7480  +
    /// NOTE: The `uri` is expected to already in encoded form.
 5493   7481   
    pub fn new(
 5494   7482   
        method: &'a str,
 5495   7483   
        uri: impl Into<Cow<'a, str>>,
 5496   7484   
        headers: impl Iterator<Item = (&'a str, &'a str)>,
 5497   7485   
        body: SignableBody<'a>,
 5498   7486   
    ) -> Result<Self, SigningError> {
 5499   7487   
        let uri = uri
 5500   7488   
            .into()
 5501   7489   
            .parse()
 5502   7490   
            .map_err(|e| SigningError::from(CanonicalRequestError::from(e)))?;
 5503   7491   
        let headers = headers.collect();
 5504   7492   
        Ok(Self {
 5505   7493   
            method,
 5506   7494   
            uri,
 5507   7495   
            headers,
 5508   7496   
            body,
 5509   7497   
        })
 5510   7498   
    }
 5511   7499   
 5512   7500   
    /// Returns the signable URI
 5513   7501   
    pub(crate) fn uri(&self) -> &Uri {
 5514   7502   
        &self.uri
 5515   7503   
    }
 5516   7504   
 5517   7505   
    /// Returns the signable HTTP method
 5518   7506   
    pub(crate) fn method(&self) -> &str {
 5519   7507   
        self.method
 5520   7508   
    }
 5521   7509   
 5522   7510   
    /// Returns the request headers
 5523   7511   
@@ -478,436 +480,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 5524   7512   
        sensitive,
 5525   7513   
    });
 5526   7514   
}
 5527   7515   
 5528   7516   
// add signature to authorization header
 5529   7517   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 5530   7518   
fn build_authorization_header(
 5531   7519   
    access_key: &str,
 5532   7520   
    creq: &CanonicalRequest<'_>,
 5533   7521   
    sts: StringToSign<'_>,
 5534   7522   
    signature: &str,
 5535   7523   
    signature_version: SignatureVersion,
 5536   7524   
) -> String {
 5537   7525   
    let scope = match signature_version {
 5538   7526   
        SignatureVersion::V4 => sts.scope.to_string(),
 5539   7527   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 5540   7528   
    };
 5541   7529   
    format!(
 5542   7530   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 5543   7531   
        sts.algorithm,
 5544   7532   
        access_key,
 5545   7533   
        scope,
 5546   7534   
        creq.values.signed_headers().as_str(),
 5547   7535   
        signature
 5548   7536   
    )
 5549   7537   
}
 5550   7538   
#[cfg(test)]
 5551   7539   
mod tests {
 5552   7540   
    use crate::date_time::test_parsers::parse_date_time;
 5553   7541   
    use crate::http_request::sign::{add_header, SignableRequest};
        7542  +
    use crate::http_request::test::SigningSuiteTest;
 5554   7543   
    use crate::http_request::{
 5555         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        7544  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 5556   7545   
        SigningSettings,
 5557   7546   
    };
 5558   7547   
    use crate::sign::v4;
 5559   7548   
    use aws_credential_types::Credentials;
 5560   7549   
    use http0::{HeaderValue, Request};
 5561   7550   
    use pretty_assertions::assert_eq;
 5562   7551   
    use proptest::proptest;
 5563   7552   
    use std::borrow::Cow;
 5564   7553   
    use std::iter;
 5565         -
    use std::time::Duration;
 5566   7554   
 5567   7555   
    macro_rules! assert_req_eq {
 5568   7556   
        (http: $expected:expr, $actual:expr) => {
 5569   7557   
            let mut expected = ($expected).map(|_b|"body");
 5570   7558   
            let mut actual = ($actual).map(|_b|"body");
 5571   7559   
            make_headers_comparable(&mut expected);
 5572   7560   
            make_headers_comparable(&mut actual);
 5573   7561   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 5574   7562   
        };
 5575   7563   
        ($expected:tt, $actual:tt) => {
 5576   7564   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 5577   7565   
        };
 5578   7566   
    }
 5579   7567   
 5580   7568   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 5581   7569   
        for (_name, value) in request.headers_mut() {
 5582   7570   
            value.set_sensitive(false);
 5583   7571   
        }
 5584   7572   
    }
 5585   7573   
 5586         -
    #[test]
 5587         -
    fn test_sign_vanilla_with_headers() {
 5588         -
        let settings = SigningSettings::default();
 5589         -
        let identity = &Credentials::for_tests().into();
 5590         -
        let params = v4::SigningParams {
 5591         -
            identity,
 5592         -
            region: "us-east-1",
 5593         -
            name: "service",
 5594         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5595         -
            settings,
 5596         -
        }
 5597         -
        .into();
 5598         -
 5599         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5600         -
        let signable = SignableRequest::from(&original);
 5601         -
        let out = sign(signable, &params).unwrap();
 5602         -
        assert_eq!(
 5603         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 5604         -
            out.signature
 5605         -
        );
 5606         -
 5607         -
        let mut signed = original.as_http_request();
 5608         -
        out.output.apply_to_request_http0x(&mut signed);
 5609         -
 5610         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 5611         -
        assert_req_eq!(expected, signed);
 5612         -
    }
 5613         -
        7574  +
    // Sigv4A suite tests
 5614   7575   
    #[cfg(feature = "sigv4a")]
 5615         -
    mod sigv4a_tests {
 5616         -
        use super::*;
 5617         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5618         -
        use crate::http_request::{sign, test, SigningParams};
 5619         -
        use crate::sign::v4a;
 5620         -
        use p256::ecdsa::signature::{Signature, Verifier};
 5621         -
        use p256::ecdsa::{DerSignature, SigningKey};
 5622         -
        use pretty_assertions::assert_eq;
 5623         -
 5624         -
        fn new_v4a_signing_params_from_context(
 5625         -
            test_context: &'_ test::v4a::TestContext,
 5626         -
            signature_location: SignatureLocation,
 5627         -
        ) -> SigningParams<'_> {
 5628         -
            let mut params = v4a::SigningParams::from(test_context);
 5629         -
            params.settings.signature_location = signature_location;
 5630         -
 5631         -
            params.into()
 5632         -
        }
 5633         -
 5634         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 5635         -
            let tc = test::v4a::test_context(test_name);
 5636         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 5637         -
 5638         -
            let req = test::v4a::test_request(test_name);
 5639         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 5640         -
            let signable_req = SignableRequest::from(&req);
 5641         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        7576  +
    mod v4a_suite {
        7577  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 5642   7578   
 5643         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 5644         -
 5645         -
            let expected_string_to_sign =
 5646         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 5647         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 5648         -
            let actual_string_to_sign = StringToSign::new_v4a(
 5649         -
                *params.time(),
 5650         -
                params.region_set().unwrap(),
 5651         -
                params.name(),
 5652         -
                hashed_creq,
 5653         -
            )
 5654         -
            .to_string();
 5655         -
 5656         -
            assert_eq!(
 5657         -
                expected_string_to_sign, actual_string_to_sign,
 5658         -
                "'string to sign' didn't match"
 5659         -
            );
 5660         -
 5661         -
            let out = sign(signable_req, &params).unwrap();
 5662         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 5663         -
            out.output
 5664         -
                .apply_to_request_http0x(&mut req.as_http_request());
 5665         -
 5666         -
            let creds = params.credentials().unwrap();
 5667         -
            let signing_key =
 5668         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 5669         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 5670         -
            let sig = sig
 5671         -
                .try_into()
 5672         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 5673         -
 5674         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 5675         -
            let peer_public_key = signing_key.verifying_key();
 5676         -
            let sts = actual_string_to_sign.as_bytes();
 5677         -
            peer_public_key.verify(sts, &sig).unwrap();
        7579  +
        #[test]
        7580  +
        fn test_get_header_key_duplicate() {
        7581  +
            run_test_suite_v4a("get-header-key-duplicate")
 5678   7582   
        }
 5679   7583   
 5680   7584   
        #[test]
 5681         -
        fn test_get_header_key_duplicate() {
 5682         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        7585  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7586  +
        fn test_get_header_value_multiline() {
        7587  +
            run_test_suite_v4a("get-header-value-multiline")
 5683   7588   
        }
 5684   7589   
 5685   7590   
        #[test]
 5686   7591   
        fn test_get_header_value_order() {
 5687         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        7592  +
            run_test_suite_v4a("get-header-value-order")
 5688   7593   
        }
 5689   7594   
 5690   7595   
        #[test]
 5691   7596   
        fn test_get_header_value_trim() {
 5692         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        7597  +
            run_test_suite_v4a("get-header-value-trim");
 5693   7598   
        }
 5694   7599   
 5695   7600   
        #[test]
 5696   7601   
        fn test_get_relative_normalized() {
 5697         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        7602  +
            run_test_suite_v4a("get-relative-normalized");
 5698   7603   
        }
 5699   7604   
 5700   7605   
        #[test]
 5701   7606   
        fn test_get_relative_relative_normalized() {
 5702         -
            run_v4a_test_suite(
 5703         -
                "get-relative-relative-normalized",
 5704         -
                SignatureLocation::Headers,
 5705         -
            );
        7607  +
            run_test_suite_v4a("get-relative-relative-normalized");
 5706   7608   
        }
 5707   7609   
 5708   7610   
        #[test]
 5709   7611   
        fn test_get_relative_relative_unnormalized() {
 5710         -
            run_v4a_test_suite(
 5711         -
                "get-relative-relative-unnormalized",
 5712         -
                SignatureLocation::Headers,
 5713         -
            );
        7612  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 5714   7613   
        }
 5715   7614   
 5716   7615   
        #[test]
 5717   7616   
        fn test_get_relative_unnormalized() {
 5718         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        7617  +
            run_test_suite_v4a("get-relative-unnormalized");
 5719   7618   
        }
 5720   7619   
 5721   7620   
        #[test]
 5722   7621   
        fn test_get_slash_dot_slash_normalized() {
 5723         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        7622  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 5724   7623   
        }
 5725   7624   
 5726   7625   
        #[test]
 5727   7626   
        fn test_get_slash_dot_slash_unnormalized() {
 5728         -
            run_v4a_test_suite(
 5729         -
                "get-slash-dot-slash-unnormalized",
 5730         -
                SignatureLocation::Headers,
 5731         -
            );
        7627  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 5732   7628   
        }
 5733   7629   
 5734   7630   
        #[test]
 5735   7631   
        fn test_get_slash_normalized() {
 5736         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        7632  +
            run_test_suite_v4a("get-slash-normalized");
 5737   7633   
        }
 5738   7634   
 5739   7635   
        #[test]
 5740   7636   
        fn test_get_slash_pointless_dot_normalized() {
 5741         -
            run_v4a_test_suite(
 5742         -
                "get-slash-pointless-dot-normalized",
 5743         -
                SignatureLocation::Headers,
 5744         -
            );
        7637  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 5745   7638   
        }
 5746   7639   
 5747   7640   
        #[test]
 5748   7641   
        fn test_get_slash_pointless_dot_unnormalized() {
 5749         -
            run_v4a_test_suite(
 5750         -
                "get-slash-pointless-dot-unnormalized",
 5751         -
                SignatureLocation::Headers,
 5752         -
            );
        7642  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 5753   7643   
        }
 5754   7644   
 5755   7645   
        #[test]
 5756   7646   
        fn test_get_slash_unnormalized() {
 5757         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        7647  +
            run_test_suite_v4a("get-slash-unnormalized");
 5758   7648   
        }
 5759   7649   
 5760   7650   
        #[test]
 5761   7651   
        fn test_get_slashes_normalized() {
 5762         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        7652  +
            run_test_suite_v4a("get-slashes-normalized");
 5763   7653   
        }
 5764   7654   
 5765   7655   
        #[test]
 5766   7656   
        fn test_get_slashes_unnormalized() {
 5767         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        7657  +
            run_test_suite_v4a("get-slashes-unnormalized");
        7658  +
        }
        7659  +
        7660  +
        #[test]
        7661  +
        #[ignore = "relies on single encode of path segments"]
        7662  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7663  +
        // skipped until we add control over double_uri_encode in context.json
        7664  +
        fn test_get_space_normalized() {
        7665  +
            run_test_suite_v4a("get-space-normalized");
        7666  +
        }
        7667  +
        7668  +
        #[test]
        7669  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7670  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7671  +
        fn test_get_space_unnormalized() {
        7672  +
            run_test_suite_v4a("get-space-unnormalized");
 5768   7673   
        }
 5769   7674   
 5770   7675   
        #[test]
 5771   7676   
        fn test_get_unreserved() {
 5772         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        7677  +
            run_test_suite_v4a("get-unreserved");
        7678  +
        }
        7679  +
        7680  +
        #[test]
        7681  +
        #[ignore = "httparse fails on invalid uri character"]
        7682  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7683  +
        fn test_get_utf8() {
        7684  +
            run_test_suite_v4a("get-utf8");
 5773   7685   
        }
 5774   7686   
 5775   7687   
        #[test]
 5776   7688   
        fn test_get_vanilla() {
 5777         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        7689  +
            run_test_suite_v4a("get-vanilla");
 5778   7690   
        }
 5779   7691   
 5780   7692   
        #[test]
 5781   7693   
        fn test_get_vanilla_empty_query_key() {
 5782         -
            run_v4a_test_suite(
 5783         -
                "get-vanilla-empty-query-key",
 5784         -
                SignatureLocation::QueryParams,
 5785         -
            );
        7694  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 5786   7695   
        }
 5787   7696   
 5788   7697   
        #[test]
 5789   7698   
        fn test_get_vanilla_query() {
 5790         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        7699  +
            run_test_suite_v4a("get-vanilla-query");
        7700  +
        }
        7701  +
        7702  +
        #[test]
        7703  +
        fn test_get_vanilla_query_order_encoded() {
        7704  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 5791   7705   
        }
 5792   7706   
 5793   7707   
        #[test]
 5794   7708   
        fn test_get_vanilla_query_order_key_case() {
 5795         -
            run_v4a_test_suite(
 5796         -
                "get-vanilla-query-order-key-case",
 5797         -
                SignatureLocation::QueryParams,
 5798         -
            );
        7709  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 5799   7710   
        }
 5800   7711   
 5801   7712   
        #[test]
 5802   7713   
        fn test_get_vanilla_query_unreserved() {
 5803         -
            run_v4a_test_suite(
 5804         -
                "get-vanilla-query-unreserved",
 5805         -
                SignatureLocation::QueryParams,
 5806         -
            );
        7714  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        7715  +
        }
        7716  +
        7717  +
        #[test]
        7718  +
        #[ignore = "httparse fails on invalid uri character"]
        7719  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7720  +
        fn test_get_vanilla_utf8_query() {
        7721  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 5807   7722   
        }
 5808   7723   
 5809   7724   
        #[test]
 5810   7725   
        fn test_get_vanilla_with_session_token() {
 5811         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        7726  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 5812   7727   
        }
 5813   7728   
 5814   7729   
        #[test]
 5815   7730   
        fn test_post_header_key_case() {
 5816         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        7731  +
            run_test_suite_v4a("post-header-key-case");
 5817   7732   
        }
 5818   7733   
 5819   7734   
        #[test]
 5820   7735   
        fn test_post_header_key_sort() {
 5821         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        7736  +
            run_test_suite_v4a("post-header-key-sort");
 5822   7737   
        }
 5823   7738   
 5824   7739   
        #[test]
 5825   7740   
        fn test_post_header_value_case() {
 5826         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        7741  +
            run_test_suite_v4a("post-header-value-case");
 5827   7742   
        }
 5828   7743   
 5829   7744   
        #[test]
 5830   7745   
        fn test_post_sts_header_after() {
 5831         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        7746  +
            run_test_suite_v4a("post-sts-header-after");
 5832   7747   
        }
 5833   7748   
 5834   7749   
        #[test]
 5835   7750   
        fn test_post_sts_header_before() {
 5836         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        7751  +
            run_test_suite_v4a("post-sts-header-before");
 5837   7752   
        }
 5838   7753   
 5839   7754   
        #[test]
 5840   7755   
        fn test_post_vanilla() {
 5841         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        7756  +
            run_test_suite_v4a("post-vanilla");
 5842   7757   
        }
 5843   7758   
 5844   7759   
        #[test]
 5845   7760   
        fn test_post_vanilla_empty_query_value() {
 5846         -
            run_v4a_test_suite(
 5847         -
                "post-vanilla-empty-query-value",
 5848         -
                SignatureLocation::QueryParams,
 5849         -
            );
        7761  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 5850   7762   
        }
 5851   7763   
 5852   7764   
        #[test]
 5853   7765   
        fn test_post_vanilla_query() {
 5854         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        7766  +
            run_test_suite_v4a("post-vanilla-query");
 5855   7767   
        }
 5856   7768   
 5857   7769   
        #[test]
 5858   7770   
        fn test_post_x_www_form_urlencoded() {
 5859         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        7771  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 5860   7772   
        }
 5861   7773   
 5862   7774   
        #[test]
 5863   7775   
        fn test_post_x_www_form_urlencoded_parameters() {
 5864         -
            run_v4a_test_suite(
 5865         -
                "post-x-www-form-urlencoded-parameters",
 5866         -
                SignatureLocation::QueryParams,
 5867         -
            );
        7776  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 5868   7777   
        }
 5869   7778   
    }
 5870   7779   
 5871   7780   
    #[test]
 5872   7781   
    fn test_sign_url_escape() {
 5873         -
        let test = "double-encode-path";
        7782  +
        let test = SigningSuiteTest::v4("double-encode-path");
 5874   7783   
        let settings = SigningSettings::default();
 5875   7784   
        let identity = &Credentials::for_tests().into();
 5876   7785   
        let params = v4::SigningParams {
 5877   7786   
            identity,
 5878   7787   
            region: "us-east-1",
 5879   7788   
            name: "service",
 5880   7789   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5881   7790   
            settings,
 5882   7791   
        }
 5883   7792   
        .into();
 5884   7793   
 5885         -
        let original = test::v4::test_request(test);
        7794  +
        let original = test.request();
 5886   7795   
        let signable = SignableRequest::from(&original);
 5887   7796   
        let out = sign(signable, &params).unwrap();
 5888   7797   
        assert_eq!(
 5889   7798   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 5890   7799   
            out.signature
 5891   7800   
        );
 5892   7801   
 5893   7802   
        let mut signed = original.as_http_request();
 5894   7803   
        out.output.apply_to_request_http0x(&mut signed);
 5895   7804   
 5896         -
        let expected = test::v4::test_signed_request(test);
 5897         -
        assert_req_eq!(expected, signed);
 5898         -
    }
 5899         -
 5900         -
    #[test]
 5901         -
    fn test_sign_vanilla_with_query_params() {
 5902         -
        let settings = SigningSettings {
 5903         -
            signature_location: SignatureLocation::QueryParams,
 5904         -
            expires_in: Some(Duration::from_secs(35)),
 5905         -
            ..Default::default()
 5906         -
        };
 5907         -
        let identity = &Credentials::for_tests().into();
 5908         -
        let params = v4::SigningParams {
 5909         -
            identity,
 5910         -
            region: "us-east-1",
 5911         -
            name: "service",
 5912         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5913         -
            settings,
 5914         -
        }
 5915         -
        .into();
 5916         -
 5917         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5918         -
        let signable = SignableRequest::from(&original);
 5919         -
        let out = sign(signable, &params).unwrap();
 5920         -
        assert_eq!(
 5921         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 5922         -
            out.signature
 5923         -
        );
 5924         -
 5925         -
        let mut signed = original.as_http_request();
 5926         -
        out.output.apply_to_request_http0x(&mut signed);
 5927         -
 5928         -
        let expected =
 5929         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        7805  +
        let expected = test.signed_request(SignatureLocation::Headers);
 5930   7806   
        assert_req_eq!(expected, signed);
 5931   7807   
    }
 5932   7808   
 5933   7809   
    #[test]
 5934   7810   
    fn test_sign_headers_utf8() {
 5935   7811   
        let settings = SigningSettings::default();
 5936   7812   
        let identity = &Credentials::for_tests().into();
 5937   7813   
        let params = v4::SigningParams {
 5938   7814   
            identity,
 5939   7815   
            region: "us-east-1",
 5940   7816   
            name: "service",
 5941   7817   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5942   7818   
            settings,
 5943   7819   
        }
 5944   7820   
        .into();
 5945   7821   
 5946   7822   
        let original = http0::Request::builder()
 5947   7823   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 5948   7824   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 5949   7825   
            .body("")
 5950   7826   
            .unwrap()
 5951   7827   
            .into();
 5952   7828   
        let signable = SignableRequest::from(&original);
 5953   7829   
        let out = sign(signable, &params).unwrap();
 5954   7830   
        assert_eq!(
 5955   7831   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 5956   7832   
            out.signature
 5957   7833   
        );
 5958   7834   
 5959   7835   
        let mut signed = original.as_http_request();
 5960   7836   
@@ -1138,31 +1028,236 @@ mod tests {
 5961   7837   
        let mut request = http::Request::builder()
 5962   7838   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 5963   7839   
            .body("")
 5964   7840   
            .unwrap();
 5965   7841   
 5966   7842   
        instructions.apply_to_request_http1x(&mut request);
 5967   7843   
 5968   7844   
        assert_eq!(
 5969   7845   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 5970   7846   
            request.uri().path_and_query().unwrap().to_string()
 5971   7847   
        );
 5972   7848   
    }
 5973   7849   
 5974   7850   
    #[test]
 5975   7851   
    fn test_debug_signable_body() {
 5976   7852   
        let sut = SignableBody::Bytes(b"hello signable body");
 5977   7853   
        assert_eq!(
 5978   7854   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 5979   7855   
            format!("{sut:?}")
 5980   7856   
        );
 5981   7857   
 5982   7858   
        let sut = SignableBody::UnsignedPayload;
 5983   7859   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 5984   7860   
 5985   7861   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 5986   7862   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 5987   7863   
 5988   7864   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 5989   7865   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 5990   7866   
    }
        7867  +
        7868  +
    // v4 test suite
        7869  +
    mod v4_suite {
        7870  +
        use crate::http_request::test::run_test_suite_v4;
        7871  +
        7872  +
        #[test]
        7873  +
        fn test_get_header_key_duplicate() {
        7874  +
            run_test_suite_v4("get-header-key-duplicate");
        7875  +
        }
        7876  +
        7877  +
        #[test]
        7878  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7879  +
        fn test_get_header_value_multiline() {
        7880  +
            run_test_suite_v4("get-header-value-multiline");
        7881  +
        }
        7882  +
        7883  +
        #[test]
        7884  +
        fn test_get_header_value_order() {
        7885  +
            run_test_suite_v4("get-header-value-order");
        7886  +
        }
        7887  +
        7888  +
        #[test]
        7889  +
        fn test_get_header_value_trim() {
        7890  +
            run_test_suite_v4("get-header-value-trim");
        7891  +
        }
        7892  +
        7893  +
        #[test]
        7894  +
        fn test_get_relative_normalized() {
        7895  +
            run_test_suite_v4("get-relative-normalized");
        7896  +
        }
        7897  +
        7898  +
        #[test]
        7899  +
        fn test_get_relative_relative_normalized() {
        7900  +
            run_test_suite_v4("get-relative-relative-normalized");
        7901  +
        }
        7902  +
        7903  +
        #[test]
        7904  +
        fn test_get_relative_relative_unnormalized() {
        7905  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        7906  +
        }
        7907  +
        7908  +
        #[test]
        7909  +
        fn test_get_relative_unnormalized() {
        7910  +
            run_test_suite_v4("get-relative-unnormalized");
        7911  +
        }
        7912  +
        7913  +
        #[test]
        7914  +
        fn test_get_slash_dot_slash_normalized() {
        7915  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        7916  +
        }
        7917  +
        7918  +
        #[test]
        7919  +
        fn test_get_slash_dot_slash_unnormalized() {
        7920  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        7921  +
        }
        7922  +
        7923  +
        #[test]
        7924  +
        fn test_get_slash_normalized() {
        7925  +
            run_test_suite_v4("get-slash-normalized");
        7926  +
        }
        7927  +
        7928  +
        #[test]
        7929  +
        fn test_get_slash_pointless_dot_normalized() {
        7930  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        7931  +
        }
        7932  +
        7933  +
        #[test]
        7934  +
        fn test_get_slash_pointless_dot_unnormalized() {
        7935  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        7936  +
        }
        7937  +
        7938  +
        #[test]
        7939  +
        fn test_get_slash_unnormalized() {
        7940  +
            run_test_suite_v4("get-slash-unnormalized");
        7941  +
        }
        7942  +
        7943  +
        #[test]
        7944  +
        fn test_get_slashes_normalized() {
        7945  +
            run_test_suite_v4("get-slashes-normalized");
        7946  +
        }
        7947  +
        7948  +
        #[test]
        7949  +
        fn test_get_slashes_unnormalized() {
        7950  +
            run_test_suite_v4("get-slashes-unnormalized");
        7951  +
        }
        7952  +
        7953  +
        #[test]
        7954  +
        #[ignore = "relies on single encode of path segments"]
        7955  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7956  +
        // skipped until we add control over double_uri_encode in context.json
        7957  +
        fn test_get_space_normalized() {
        7958  +
            run_test_suite_v4("get-space-normalized");
        7959  +
        }
        7960  +
        7961  +
        #[test]
        7962  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7963  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7964  +
        fn test_get_space_unnormalized() {
        7965  +
            run_test_suite_v4("get-space-unnormalized");
        7966  +
        }
        7967  +
        7968  +
        #[test]
        7969  +
        fn test_get_unreserved() {
        7970  +
            run_test_suite_v4("get-unreserved");
        7971  +
        }
        7972  +
        7973  +
        #[test]
        7974  +
        #[ignore = "httparse fails on invalid uri character"]
        7975  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7976  +
        fn test_get_utf8() {
        7977  +
            run_test_suite_v4("get-utf8");
        7978  +
        }
        7979  +
        7980  +
        #[test]
        7981  +
        fn test_get_vanilla() {
        7982  +
            run_test_suite_v4("get-vanilla");
        7983  +
        }
        7984  +
        7985  +
        #[test]
        7986  +
        fn test_get_vanilla_empty_query_key() {
        7987  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        7988  +
        }
        7989  +
        7990  +
        #[test]
        7991  +
        fn test_get_vanilla_query() {
        7992  +
            run_test_suite_v4("get-vanilla-query");
        7993  +
        }
        7994  +
        7995  +
        #[test]
        7996  +
        fn test_get_vanilla_query_order_encoded() {
        7997  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        7998  +
        }
        7999  +
        8000  +
        #[test]
        8001  +
        fn test_get_vanilla_query_order_key_case() {
        8002  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        8003  +
        }
        8004  +
        8005  +
        #[test]
        8006  +
        fn test_get_vanilla_query_unreserved() {
        8007  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        8008  +
        }
        8009  +
        8010  +
        #[test]
        8011  +
        #[ignore = "httparse fails on invalid uri character"]
        8012  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8013  +
        fn test_get_vanilla_utf8_query() {
        8014  +
            run_test_suite_v4("get-vanilla-utf8-query");
        8015  +
        }
        8016  +
        8017  +
        #[test]
        8018  +
        fn test_get_vanilla_with_session_token() {
        8019  +
            run_test_suite_v4("get-vanilla-with-session-token");
        8020  +
        }
        8021  +
        8022  +
        #[test]
        8023  +
        fn test_post_header_key_case() {
        8024  +
            run_test_suite_v4("post-header-key-case");
        8025  +
        }
        8026  +
        8027  +
        #[test]
        8028  +
        fn test_post_header_key_sort() {
        8029  +
            run_test_suite_v4("post-header-key-sort");
        8030  +
        }
        8031  +
        8032  +
        #[test]
        8033  +
        fn test_post_header_value_case() {
        8034  +
            run_test_suite_v4("post-header-value-case");
        8035  +
        }
        8036  +
        8037  +
        #[test]
        8038  +
        fn test_post_sts_header_after() {
        8039  +
            run_test_suite_v4("post-sts-header-after");
        8040  +
        }
        8041  +
        8042  +
        #[test]
        8043  +
        fn test_post_sts_header_before() {
        8044  +
            run_test_suite_v4("post-sts-header-before");
        8045  +
        }
        8046  +
        8047  +
        #[test]
        8048  +
        fn test_post_vanilla() {
        8049  +
            run_test_suite_v4("post-vanilla");
        8050  +
        }
        8051  +
        8052  +
        #[test]
        8053  +
        fn test_post_vanilla_empty_query_value() {
        8054  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        8055  +
        }
        8056  +
        8057  +
        #[test]
        8058  +
        fn test_post_vanilla_query() {
        8059  +
            run_test_suite_v4("post-vanilla-query");
        8060  +
        }
        8061  +
        8062  +
        #[test]
        8063  +
        fn test_post_x_www_form_urlencoded() {
        8064  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        8065  +
        }
        8066  +
        8067  +
        #[test]
        8068  +
        fn test_post_x_www_form_urlencoded_parameters() {
        8069  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        8070  +
        }
        8071  +
    }
 5991   8072   
}
 5992   8073   
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
 5993   8074   
index be6c496..86eec20 100644
 5994         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        8075  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 5995   8076   
@@ -1,242 +1,453 @@
 5996   8077   
/*
 5997   8078   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 5998   8079   
 * SPDX-License-Identifier: Apache-2.0
 5999   8080   
 */
 6000   8081   
 6001   8082   
//! Functions shared between the tests of several modules.
 6002   8083   
 6003         -
use crate::http_request::{SignableBody, SignableRequest};
        8084  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        8085  +
use crate::http_request::{
        8086  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        8087  +
    SigningSettings,
        8088  +
};
        8089  +
use aws_credential_types::Credentials;
        8090  +
use aws_smithy_runtime_api::client::identity::Identity;
 6004   8091   
use http0::{Method, Uri};
        8092  +
use std::borrow::Cow;
 6005   8093   
use std::error::Error as StdError;
        8094  +
use std::time::{Duration, SystemTime};
        8095  +
use time::format_description::well_known::Rfc3339;
        8096  +
use time::OffsetDateTime;
        8097  +
        8098  +
/// Common test suite collection
        8099  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        8100  +
enum Collection {
        8101  +
    V4,
        8102  +
    V4A,
        8103  +
}
 6006   8104   
 6007         -
pub(crate) mod v4 {
 6008         -
    use super::*;
        8105  +
/// A test from the common CRT test suite
        8106  +
#[derive(Debug, Clone)]
        8107  +
pub(crate) struct SigningSuiteTest {
        8108  +
    test_name: &'static str,
        8109  +
    collection: Collection,
        8110  +
}
 6009   8111   
 6010         -
    fn path(name: &str, ext: &str) -> String {
 6011         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        8112  +
impl SigningSuiteTest {
        8113  +
    /// Create a new test from the V4 test suite
        8114  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        8115  +
        Self {
        8116  +
            test_name,
        8117  +
            collection: Collection::V4,
 6012   8118   
        }
 6013         -
 6014         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 6015         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 6016         -
        read(&path(name, "creq")).trim().to_string()
 6017   8119   
    }
 6018   8120   
 6019         -
    pub(crate) fn test_sts(name: &str) -> String {
 6020         -
        read(&path(name, "sts"))
        8121  +
    /// Create a new test from the V4a test suite
        8122  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        8123  +
        Self {
        8124  +
            test_name,
        8125  +
            collection: Collection::V4A,
 6021   8126   
        }
 6022         -
 6023         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6024         -
        test_parsed_request(name, "req")
 6025   8127   
    }
 6026   8128   
 6027         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 6028         -
        test_parsed_request(name, "sreq")
        8129  +
    /// Get the path to a file in this test suite directory
        8130  +
    fn path(&self, filename: &str) -> String {
        8131  +
        let dir = match self.collection {
        8132  +
            Collection::V4 => "v4",
        8133  +
            Collection::V4A => "v4a",
        8134  +
        };
        8135  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 6029   8136   
    }
 6030   8137   
 6031         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 6032         -
        test_parsed_request(name, "qpsreq")
        8138  +
    /// Get the HTTP request for the test
        8139  +
    pub(crate) fn request(&self) -> TestRequest {
        8140  +
        test_parsed_request(&self.path("request.txt"))
 6033   8141   
    }
 6034   8142   
 6035         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 6036         -
        let path = path(name, ext);
 6037         -
        match parse_request(read(&path).as_bytes()) {
 6038         -
            Ok(parsed) => parsed,
 6039         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        8143  +
    /// Get the signed HTTP request for the test
        8144  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        8145  +
        match signature_location {
        8146  +
            SignatureLocation::QueryParams => {
        8147  +
                test_parsed_request(&self.path("query-signed-request.txt"))
 6040   8148   
            }
        8149  +
            SignatureLocation::Headers => {
        8150  +
                test_parsed_request(&self.path("header-signed-request.txt"))
 6041   8151   
            }
 6042         -
 6043         -
    #[test]
 6044         -
    fn test_parse() {
 6045         -
        test_request("post-header-key-case");
 6046   8152   
        }
 6047         -
 6048         -
    #[test]
 6049         -
    fn test_read_query_params() {
 6050         -
        test_request("get-vanilla-query-order-key-case");
 6051   8153   
    }
 6052         -
}
 6053         -
 6054         -
#[cfg(feature = "sigv4a")]
 6055         -
pub(crate) mod v4a {
 6056         -
    use super::*;
 6057         -
    use crate::http_request::{
 6058         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 6059         -
    };
 6060         -
    use aws_credential_types::Credentials;
 6061         -
    use aws_smithy_runtime_api::client::identity::Identity;
 6062         -
    use serde_derive::Deserialize;
 6063         -
    use std::time::{Duration, SystemTime};
 6064         -
    use time::format_description::well_known::Rfc3339;
 6065         -
    use time::OffsetDateTime;
 6066   8154   
 6067         -
    fn path(test_name: &str, definition_name: &str) -> String {
 6068         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        8155  +
    /// Get the canonical request for the test
        8156  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        8157  +
        match signature_location {
        8158  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        8159  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
 6069   8160   
        }
 6070         -
 6071         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6072         -
        test_parsed_request(&path(name, "request"))
 6073   8161   
    }
 6074   8162   
 6075         -
    pub(crate) fn test_canonical_request(
 6076         -
        name: &str,
 6077         -
        signature_location: SignatureLocation,
 6078         -
    ) -> String {
        8163  +
    /// Get the string to sign for the test
        8164  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
 6079   8165   
        match signature_location {
 6080         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 6081         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        8166  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        8167  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 6082   8168   
        }
 6083   8169   
    }
 6084   8170   
 6085         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
        8171  +
    /// Get the signature for the test
        8172  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
 6086   8173   
        match signature_location {
 6087         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 6088         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        8174  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        8175  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        8176  +
        }
 6089   8177   
    }
        8178  +
        8179  +
    /// Get the test context for the test
        8180  +
    pub(crate) fn context(&self) -> TestContext {
        8181  +
        let context = read(&self.path("context.json"));
        8182  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        8183  +
        tc_builder.build()
 6090   8184   
    }
        8185  +
}
 6091   8186   
 6092         -
    fn test_parsed_request(path: &str) -> TestRequest {
        8187  +
fn test_parsed_request(path: &str) -> TestRequest {
 6093   8188   
    match parse_request(read(path).as_bytes()) {
 6094   8189   
        Ok(parsed) => parsed,
 6095   8190   
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 6096   8191   
    }
 6097         -
    }
        8192  +
}
 6098   8193   
 6099         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 6100         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 6101         -
        let context = read(&path);
 6102         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 6103         -
        tc_builder.build()
 6104         -
    }
        8194  +
fn new_v4_signing_params_from_context(
        8195  +
    test_context: &'_ TestContext,
        8196  +
    signature_location: SignatureLocation,
        8197  +
) -> crate::http_request::SigningParams<'_> {
        8198  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        8199  +
    params.settings.signature_location = signature_location;
        8200  +
    params.into()
        8201  +
}
        8202  +
        8203  +
/// Run the given test from the v4 suite for both header and query
        8204  +
/// signature locations
        8205  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        8206  +
    run_v4_test(test_name, SignatureLocation::Headers);
        8207  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        8208  +
}
        8209  +
        8210  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        8211  +
    assert_eq!(expected.scheme(), actual.scheme());
        8212  +
    assert_eq!(expected.authority(), actual.authority());
        8213  +
    assert_eq!(expected.path(), actual.path());
        8214  +
        8215  +
    // query params may be out of order
        8216  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8217  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        8218  +
    expected_params.sort();
        8219  +
        8220  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8221  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        8222  +
    actual_params.sort();
        8223  +
        8224  +
    assert_eq!(expected_params, actual_params);
        8225  +
}
 6105   8226   
 6106         -
    pub(crate) struct TestContext {
        8227  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        8228  +
    let expected = expected.as_http_request();
        8229  +
    let actual = actual;
        8230  +
    assert_eq!(expected.method(), actual.method());
        8231  +
    assert_eq!(
        8232  +
        expected.headers().len(),
        8233  +
        actual.headers().len(),
        8234  +
        "extra or missing headers"
        8235  +
    );
        8236  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        8237  +
    assert_uri_eq(expected.uri(), actual.uri());
        8238  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        8239  +
}
        8240  +
        8241  +
/// Run the given test from the v4 suite for the given signature location
        8242  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        8243  +
    let test = SigningSuiteTest::v4(test_name);
        8244  +
    let tc = test.context();
        8245  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        8246  +
        8247  +
    let req = test.request();
        8248  +
    let expected_creq = test.canonical_request(signature_location);
        8249  +
    let signable_req = SignableRequest::from(&req);
        8250  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8251  +
        8252  +
    // check canonical request
        8253  +
    assert_eq!(
        8254  +
        expected_creq,
        8255  +
        actual_creq.to_string(),
        8256  +
        "canonical request didn't match (signature location: {signature_location:?})"
        8257  +
    );
        8258  +
        8259  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        8260  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8261  +
    let actual_string_to_sign = StringToSign::new_v4(
        8262  +
        *params.time(),
        8263  +
        params.region().unwrap(),
        8264  +
        params.name(),
        8265  +
        hashed_creq,
        8266  +
    )
        8267  +
    .to_string();
        8268  +
        8269  +
    // check string to sign
        8270  +
    assert_eq!(
        8271  +
        expected_string_to_sign, actual_string_to_sign,
        8272  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        8273  +
    );
        8274  +
        8275  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        8276  +
    let mut signed = req.as_http_request();
        8277  +
    out.output.apply_to_request_http0x(&mut signed);
        8278  +
        8279  +
    // check signature
        8280  +
    assert_eq!(
        8281  +
        test.signature(signature_location),
        8282  +
        out.signature,
        8283  +
        "signature didn't match (signature location: {signature_location:?})"
        8284  +
    );
        8285  +
        8286  +
    let expected = test.signed_request(signature_location);
        8287  +
    assert_requests_eq(expected, signed);
        8288  +
}
        8289  +
        8290  +
/// Test suite context.json
        8291  +
pub(crate) struct TestContext {
 6107   8292   
    pub(crate) identity: Identity,
 6108   8293   
    pub(crate) expiration_in_seconds: u64,
 6109   8294   
    pub(crate) normalize: bool,
 6110   8295   
    pub(crate) region: String,
 6111   8296   
    pub(crate) service: String,
 6112   8297   
    pub(crate) timestamp: String,
 6113   8298   
    pub(crate) omit_session_token: bool,
 6114   8299   
    pub(crate) sign_body: bool,
 6115         -
    }
 6116         -
 6117         -
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 6118         -
        fn from(tc: &'a TestContext) -> Self {
 6119         -
            crate::sign::v4a::SigningParams {
 6120         -
                identity: &tc.identity,
 6121         -
                region_set: &tc.region,
 6122         -
                name: &tc.service,
 6123         -
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 6124         -
                    .unwrap()
 6125         -
                    .into(),
 6126         -
                settings: SigningSettings {
 6127         -
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6128         -
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 6129         -
                    uri_path_normalization_mode: tc.normalize.into(),
 6130         -
                    session_token_mode: if tc.omit_session_token {
 6131         -
                        SessionTokenMode::Exclude
 6132         -
                    } else {
 6133         -
                        SessionTokenMode::Include
 6134         -
                    },
 6135         -
                    payload_checksum_kind: if tc.sign_body {
 6136         -
                        PayloadChecksumKind::XAmzSha256
 6137         -
                    } else {
 6138         -
                        PayloadChecksumKind::NoHeader
 6139         -
                    },
 6140         -
                    ..Default::default()
 6141         -
                },
 6142         -
            }
 6143         -
        }
 6144         -
    }
        8300  +
}
 6145   8301   
 6146         -
    // Serde has limitations requiring this odd workaround.
 6147         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 6148         -
    fn return_true() -> bool {
        8302  +
// Serde has limitations requiring this odd workaround.
        8303  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        8304  +
fn return_true() -> bool {
 6149   8305   
    true
 6150         -
    }
        8306  +
}
 6151   8307   
 6152         -
    #[derive(Deserialize)]
 6153         -
    pub(crate) struct TestContextBuilder {
        8308  +
#[derive(serde_derive::Deserialize)]
        8309  +
pub(crate) struct TestContextBuilder {
 6154   8310   
    credentials: TestContextCreds,
 6155   8311   
    expiration_in_seconds: u64,
 6156   8312   
    normalize: bool,
 6157   8313   
    region: String,
 6158   8314   
    service: String,
 6159   8315   
    timestamp: String,
 6160   8316   
    #[serde(default)]
 6161   8317   
    omit_session_token: bool,
 6162   8318   
    #[serde(default = "return_true")]
 6163   8319   
    sign_body: bool,
 6164         -
    }
        8320  +
}
 6165   8321   
 6166         -
    impl TestContextBuilder {
        8322  +
impl TestContextBuilder {
 6167   8323   
    pub(crate) fn build(self) -> TestContext {
 6168   8324   
        let identity = Identity::new(
 6169   8325   
            Credentials::from_keys(
 6170   8326   
                &self.credentials.access_key_id,
 6171   8327   
                &self.credentials.secret_access_key,
 6172   8328   
                self.credentials.token.clone(),
 6173   8329   
            ),
 6174   8330   
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 6175   8331   
        );
 6176   8332   
 6177   8333   
        TestContext {
 6178   8334   
            identity,
 6179   8335   
            expiration_in_seconds: self.expiration_in_seconds,
 6180   8336   
            normalize: self.normalize,
 6181   8337   
            region: self.region,
 6182   8338   
            service: self.service,
 6183   8339   
            timestamp: self.timestamp,
 6184   8340   
            omit_session_token: self.omit_session_token,
 6185   8341   
            sign_body: self.sign_body,
 6186   8342   
        }
 6187   8343   
    }
 6188         -
    }
        8344  +
}
 6189   8345   
 6190         -
    #[derive(Deserialize)]
 6191         -
    pub(crate) struct TestContextCreds {
        8346  +
#[derive(serde_derive::Deserialize)]
        8347  +
pub(crate) struct TestContextCreds {
 6192   8348   
    access_key_id: String,
 6193   8349   
    secret_access_key: String,
 6194   8350   
    token: Option<String>,
        8351  +
}
        8352  +
        8353  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        8354  +
    fn from(tc: &'a TestContext) -> Self {
        8355  +
        crate::sign::v4::SigningParams {
        8356  +
            identity: &tc.identity,
        8357  +
            region: &tc.region,
        8358  +
            name: &tc.service,
        8359  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8360  +
                .unwrap()
        8361  +
                .into(),
        8362  +
            settings: SigningSettings {
        8363  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8364  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8365  +
                uri_path_normalization_mode: tc.normalize.into(),
        8366  +
                session_token_mode: if tc.omit_session_token {
        8367  +
                    SessionTokenMode::Exclude
        8368  +
                } else {
        8369  +
                    SessionTokenMode::Include
        8370  +
                },
        8371  +
                payload_checksum_kind: if tc.sign_body {
        8372  +
                    PayloadChecksumKind::XAmzSha256
        8373  +
                } else {
        8374  +
                    PayloadChecksumKind::NoHeader
        8375  +
                },
        8376  +
                ..Default::default()
        8377  +
            },
        8378  +
        }
        8379  +
    }
        8380  +
}
        8381  +
        8382  +
#[cfg(feature = "sigv4a")]
        8383  +
pub(crate) mod v4a {
        8384  +
    use super::*;
        8385  +
    use crate::http_request::{
        8386  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        8387  +
    };
        8388  +
    use crate::sign::v4a;
        8389  +
    use p256::ecdsa::signature::{Signature, Verifier};
        8390  +
    use p256::ecdsa::{DerSignature, SigningKey};
        8391  +
    use std::time::Duration;
        8392  +
    use time::format_description::well_known::Rfc3339;
        8393  +
    use time::OffsetDateTime;
        8394  +
        8395  +
    fn new_v4a_signing_params_from_context(
        8396  +
        test_context: &'_ TestContext,
        8397  +
        signature_location: SignatureLocation,
        8398  +
    ) -> crate::http_request::SigningParams<'_> {
        8399  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        8400  +
        params.settings.signature_location = signature_location;
        8401  +
        params.into()
        8402  +
    }
        8403  +
        8404  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        8405  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        8406  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
        8407  +
    }
        8408  +
        8409  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        8410  +
        let test = SigningSuiteTest::v4a(test_name);
        8411  +
        let tc = test.context();
        8412  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        8413  +
        8414  +
        let req = test.request();
        8415  +
        let expected_creq = test.canonical_request(signature_location);
        8416  +
        let signable_req = SignableRequest::from(&req);
        8417  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8418  +
        8419  +
        assert_eq!(
        8420  +
            expected_creq,
        8421  +
            actual_creq.to_string(),
        8422  +
            "canonical request didn't match (signature location: {signature_location:?})"
        8423  +
        );
        8424  +
        8425  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        8426  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8427  +
        let actual_string_to_sign = StringToSign::new_v4a(
        8428  +
            *params.time(),
        8429  +
            params.region_set().unwrap(),
        8430  +
            params.name(),
        8431  +
            hashed_creq,
        8432  +
        )
        8433  +
        .to_string();
        8434  +
        8435  +
        assert_eq!(
        8436  +
            expected_string_to_sign, actual_string_to_sign,
        8437  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        8438  +
        );
        8439  +
        8440  +
        let out = sign(signable_req, &params).unwrap();
        8441  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        8442  +
        out.output
        8443  +
            .apply_to_request_http0x(&mut req.as_http_request());
        8444  +
        8445  +
        let creds = params.credentials().unwrap();
        8446  +
        let signing_key =
        8447  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        8448  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        8449  +
        let sig = sig
        8450  +
            .try_into()
        8451  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        8452  +
        8453  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        8454  +
        let peer_public_key = signing_key.verifying_key();
        8455  +
        let sts = actual_string_to_sign.as_bytes();
        8456  +
        peer_public_key.verify(sts, &sig).unwrap();
        8457  +
        // TODO(sigv4a) - use public.key.json as verifying key?
        8458  +
    }
        8459  +
        8460  +
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
        8461  +
        fn from(tc: &'a TestContext) -> Self {
        8462  +
            crate::sign::v4a::SigningParams {
        8463  +
                identity: &tc.identity,
        8464  +
                region_set: &tc.region,
        8465  +
                name: &tc.service,
        8466  +
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8467  +
                    .unwrap()
        8468  +
                    .into(),
        8469  +
                settings: SigningSettings {
        8470  +
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8471  +
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8472  +
                    uri_path_normalization_mode: tc.normalize.into(),
        8473  +
                    session_token_mode: if tc.omit_session_token {
        8474  +
                        SessionTokenMode::Exclude
        8475  +
                    } else {
        8476  +
                        SessionTokenMode::Include
        8477  +
                    },
        8478  +
                    payload_checksum_kind: if tc.sign_body {
        8479  +
                        PayloadChecksumKind::XAmzSha256
        8480  +
                    } else {
        8481  +
                        PayloadChecksumKind::NoHeader
        8482  +
                    },
        8483  +
                    ..Default::default()
        8484  +
                },
        8485  +
            }
        8486  +
        }
 6195   8487   
    }
 6196   8488   
 6197   8489   
    #[test]
 6198   8490   
    fn test_parse() {
 6199         -
        let req = test_request("post-header-key-case");
        8491  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 6200   8492   
        assert_eq!(req.method, "POST");
 6201   8493   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6202   8494   
        assert!(req.headers.is_empty());
 6203   8495   
    }
 6204   8496   
 6205   8497   
    #[test]
 6206   8498   
    fn test_read_query_params() {
 6207         -
        let req = test_request("get-header-value-trim");
        8499  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 6208   8500   
        assert_eq!(req.method, "GET");
 6209   8501   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6210   8502   
        assert!(!req.headers.is_empty());
 6211   8503   
    }
 6212   8504   
}
 6213   8505   
 6214   8506   
fn read(path: &str) -> String {
 6215   8507   
    println!("Loading `{}` for test case...", path);
 6216   8508   
    let v = {
 6217   8509   
        match std::fs::read_to_string(path) {
 6218   8510   
            // This replacement is necessary for tests to pass on Windows, as reading the
 6219   8511   
            // test snapshots from the file system results in CRLF line endings being inserted.
 6220   8512   
            Ok(value) => value.replace("\r\n", "\n"),
 6221   8513   
            Err(err) => {
 6222   8514   
                panic!("failed to load test case `{}`: {}", path, err);
 6223   8515   
            }
 6224   8516   
        }
 6225   8517   
    };
 6226   8518   
 6227   8519   
    v.trim().to_string()
 6228   8520   
}
 6229   8521   
 6230   8522   
pub(crate) struct TestRequest {
 6231   8523   
    pub(crate) uri: String,
 6232   8524   
    pub(crate) method: String,
 6233   8525   
    pub(crate) headers: Vec<(String, String)>,
 6234   8526   
    pub(crate) body: TestSignedBody,
 6235   8527   
}
 6236   8528   
 6237   8529   
pub(crate) enum TestSignedBody {
 6238   8530   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 6239   8531   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 6240   8532   
                    )
 6241   8533   
                })
 6242   8534   
                .collect::<Vec<_>>(),
 6243   8535   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 6244   8536   
        }
 6245   8537   
    }
 6246   8538   
}
 6247   8539   
 6248   8540   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 6249   8541   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 6250   8542   
        SignableRequest::new(
 6251   8543   
            &request.method,
 6252   8544   
            &request.uri,
 6253   8545   
            request
 6254   8546   
                .headers
 6255   8547   
                .iter()
 6256   8548   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 6257   8549   
            request.body.as_signable_body(),
 6258   8550   
        )
 6259   8551   
        .expect("URI MUST be valid")
 6260   8552   
    }
 6261   8553   
}
 6262   8554   
 6263   8555   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 6264   8556   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 6265   8557   
    // httparse 1.5 requires two trailing newlines to head the header section.
 6266   8558   
    let mut with_newline = Vec::from(s);
 6267   8559   
    with_newline.push(b'\n');
 6268   8560   
    let mut req = httparse::Request::new(&mut headers);
 6269         -
    let _ = req.parse(&with_newline).unwrap();
        8561  +
    let status = req.parse(&with_newline).unwrap();
        8562  +
        8563  +
    let body = if status.is_complete() {
        8564  +
        let body_offset = status.unwrap();
        8565  +
        // ignore the newline we added, take from original
        8566  +
        &s[body_offset..]
        8567  +
    } else {
        8568  +
        &[]
        8569  +
    };
 6270   8570   
 6271   8571   
    let mut uri_builder = Uri::builder().scheme("https");
 6272   8572   
    if let Some(path) = req.path {
 6273   8573   
        uri_builder = uri_builder.path_and_query(path);
 6274   8574   
    }
 6275   8575   
 6276   8576   
    let mut headers = vec![];
 6277   8577   
    for header in req.headers {
 6278   8578   
        let name = header.name.to_lowercase();
 6279   8579   
        if name == "host" {
 6280   8580   
            uri_builder = uri_builder.authority(header.value);
 6281   8581   
        } else if !name.is_empty() {
 6282   8582   
            headers.push((
 6283   8583   
                header.name.to_string(),
 6284   8584   
                std::str::from_utf8(header.value)?.to_string(),
 6285   8585   
            ));
 6286   8586   
        }
 6287   8587   
    }
 6288   8588   
 6289   8589   
    Ok(TestRequest {
 6290   8590   
        uri: uri_builder.build()?.to_string(),
 6291   8591   
        method: req.method.unwrap().to_string(),
 6292   8592   
        headers,
 6293         -
        body: TestSignedBody::Bytes(vec![]),
        8593  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 6294   8594   
    })
 6295   8595   
}
 6296   8596   
 6297   8597   
#[test]
 6298   8598   
fn test_parse_headers() {
 6299   8599   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 6300   8600   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 6301   8601   
    assert_eq!(
 6302   8602   
        httparse::parse_headers(buf, &mut headers),
 6303   8603   
        Ok(httparse::Status::Complete((
 6304   8604   
            56,
 6305   8605   
            &[
 6306   8606   
                httparse::Header {
 6307   8607   
                    name: "Host",
 6308   8608   
                    value: b"example.amazonaws.com",
 6309   8609   
                },
 6310   8610   
                httparse::Header {
 6311   8611   
                    name: "X-Amz-Date",
 6312   8612   
                    value: b"20150830T123600Z",
 6313   8613   
                }
 6314   8614   
            ][..]
 6315   8615   
        )))
 6316   8616   
    );
 6317   8617   
}
 6318   8618   
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
 6319   8619   
index a208453..fc00249 100644
 6320         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        8620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 6321   8621   
@@ -168,52 +168,54 @@ pub mod signing_params {
 6322   8622   
        );
 6323   8623   
 6324   8624   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 6325   8625   
        /// a required argument was not given.
 6326   8626   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 6327   8627   
            Ok(SigningParams {
 6328   8628   
                identity: self
 6329   8629   
                    .identity
 6330   8630   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 6331   8631   
                region: self
 6332   8632   
                    .region
 6333   8633   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 6334   8634   
                name: self
 6335   8635   
                    .name
 6336   8636   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 6337   8637   
                time: self
 6338   8638   
                    .time
 6339   8639   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 6340   8640   
                settings: self
 6341   8641   
                    .settings
 6342   8642   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 6343   8643   
            })
 6344   8644   
        }
 6345   8645   
    }
 6346   8646   
}
 6347   8647   
 6348   8648   
#[cfg(test)]
 6349   8649   
mod tests {
 6350   8650   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 6351   8651   
    use crate::date_time::test_parsers::parse_date_time;
 6352         -
    use crate::http_request::test;
 6353   8652   
 6354   8653   
    #[test]
 6355   8654   
    fn test_signature_calculation() {
 6356   8655   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 6357         -
        let creq = test::v4::test_canonical_request("iam");
        8656  +
        let creq = r#"AWS4-HMAC-SHA256
        8657  +
20150830T123600Z
        8658  +
20150830/us-east-1/iam/aws4_request
        8659  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 6358   8660   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6359   8661   
 6360   8662   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 6361   8663   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 6362   8664   
 6363   8665   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 6364   8666   
        assert_eq!(expected, &signature);
 6365   8667   
    }
 6366   8668   
 6367   8669   
    #[test]
 6368   8670   
    fn sign_payload_empty_string() {
 6369   8671   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 6370   8672   
        let actual = sha256_hex_string([]);
 6371   8673   
        assert_eq!(expected, actual);
 6372   8674   
    }
 6373   8675   
}
 6374   8676   
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
 6375   8677   
index ce78c38..8c2f591 100644
 6376         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        8678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 6377   8679   
@@ -1,43 +1,43 @@
 6378   8680   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6379   8681   
[package]
 6380   8682   
name = "aws-smithy-checksums"
 6381   8683   
version = "0.63.5"
 6382   8684   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 6383   8685   
description = "Checksum calculation and verification callbacks"
 6384   8686   
edition = "2021"
 6385   8687   
license = "Apache-2.0"
 6386   8688   
repository = "https://github.com/smithy-lang/smithy-rs"
 6387   8689   
[package.metadata.docs.rs]
 6388   8690   
all-features = true
 6389   8691   
targets = ["x86_64-unknown-linux-gnu"]
 6390   8692   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6391   8693   
rustdoc-args = ["--cfg", "docsrs"]
 6392   8694   
 6393   8695   
[dependencies]
 6394   8696   
bytes = "1.10.0"
 6395   8697   
crc-fast = "1.3.0"
 6396   8698   
hex = "0.4.3"
 6397   8699   
http = "0.2.9"
 6398   8700   
http-body = "0.4.5"
 6399   8701   
md-5 = "0.10"
 6400   8702   
pin-project-lite = "0.2.14"
 6401   8703   
sha1 = "0.10"
 6402   8704   
sha2 = "0.10"
 6403   8705   
tracing = "0.1.40"
 6404   8706   
 6405   8707   
[dependencies.aws-smithy-http]
 6406   8708   
path = "../aws-smithy-http"
 6407         -
version = "0.62.2"
        8709  +
version = "0.62.3"
 6408   8710   
 6409   8711   
[dependencies.aws-smithy-types]
 6410   8712   
path = "../aws-smithy-types"
 6411   8713   
version = "1.3.2"
 6412   8714   
 6413   8715   
[dev-dependencies]
 6414   8716   
bytes-utils = "0.1.2"
 6415   8717   
pretty_assertions = "1.3"
 6416   8718   
tracing-test = "0.2.1"
 6417   8719   
 6418   8720   
[dev-dependencies.tokio]
 6419   8721   
version = "1.23.1"
 6420   8722   
features = ["macros", "rt"]
 6421   8723   
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
 6422   8724   
index 970c99e..d3c7a49 100644
 6423         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        8725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 6424   8726   
@@ -1,34 +1,34 @@
 6425   8727   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6426   8728   
[package]
 6427   8729   
name = "aws-smithy-http"
 6428         -
version = "0.62.2"
        8730  +
version = "0.62.3"
 6429   8731   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6430   8732   
description = "Smithy HTTP logic for smithy-rs."
 6431   8733   
edition = "2021"
 6432   8734   
license = "Apache-2.0"
 6433   8735   
repository = "https://github.com/smithy-lang/smithy-rs"
 6434   8736   
[package.metadata.docs.rs]
 6435   8737   
all-features = true
 6436   8738   
targets = ["x86_64-unknown-linux-gnu"]
 6437   8739   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6438   8740   
rustdoc-args = ["--cfg", "docsrs"]
 6439   8741   
 6440   8742   
[features]
 6441   8743   
event-stream = ["aws-smithy-eventstream"]
 6442   8744   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 6443   8745   
 6444   8746   
[dependencies]
 6445   8747   
bytes = "1.10.0"
 6446   8748   
bytes-utils = "0.1"
 6447   8749   
percent-encoding = "2.3.1"
 6448   8750   
pin-project-lite = "0.2.14"
 6449   8751   
pin-utils = "0.1.0"
 6450   8752   
tracing = "0.1.40"
 6451   8753   
futures-core = "0.3.31"
 6452   8754   
 6453   8755   
[dependencies.aws-smithy-eventstream]
 6454   8756   
path = "../aws-smithy-eventstream"
 6455   8757   
optional = true
 6456   8758   
version = "0.60.10"
 6457   8759   
 6458   8760   
[dependencies.aws-smithy-runtime-api]
 6459   8761   
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
 6460   8762   
index 508f7a2..361545e 100644
 6461         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        8763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 6462   8764   
@@ -1,27 +1,27 @@
 6463   8765   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6464   8766   
[[bin]]
 6465   8767   
name = "read_many_from_str"
 6466   8768   
path = "fuzz_targets/read_many_from_str.rs"
 6467   8769   
test = false
 6468   8770   
doc = false
 6469   8771   
 6470   8772   
[package]
 6471   8773   
name = "aws-smithy-http-fuzz"
 6472   8774   
version = "0.0.0"
 6473   8775   
authors = ["Automatically generated"]
 6474   8776   
publish = false
 6475   8777   
edition = "2021"
 6476   8778   
 6477   8779   
[package.metadata]
 6478   8780   
cargo-fuzz = true
 6479   8781   
 6480   8782   
[dependencies]
 6481   8783   
libfuzzer-sys = "=0.4.7"
 6482   8784   
http = "0.2.3"
 6483   8785   
 6484   8786   
[dependencies.aws-smithy-http]
 6485   8787   
path = ".."
 6486         -
version = "0.62.2"
        8788  +
version = "0.62.3"
 6487   8789   
 6488   8790   
[workspace]
 6489   8791   
members = ["."]
 6490   8792   
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
 6491   8793   
index fef41d0..7694da6 100644
 6492         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        8794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 6493   8795   
@@ -25,68 +25,73 @@ impl QueryWriter {
 6494   8796   
    pub fn new(uri: &Uri) -> Self {
 6495   8797   
        let new_path_and_query = uri
 6496   8798   
            .path_and_query()
 6497   8799   
            .map(|pq| pq.to_string())
 6498   8800   
            .unwrap_or_default();
 6499   8801   
        let prefix = if uri.query().is_none() {
 6500   8802   
            Some('?')
 6501   8803   
        } else if !uri.query().unwrap_or_default().is_empty() {
 6502   8804   
            Some('&')
 6503   8805   
        } else {
 6504   8806   
            None
 6505   8807   
        };
 6506   8808   
        QueryWriter {
 6507   8809   
            base_uri: uri.clone(),
 6508   8810   
            new_path_and_query,
 6509   8811   
            prefix,
 6510   8812   
        }
 6511   8813   
    }
 6512   8814   
 6513   8815   
    /// Clears all query parameters.
 6514   8816   
    pub fn clear_params(&mut self) {
 6515   8817   
        if let Some(index) = self.new_path_and_query.find('?') {
 6516   8818   
            self.new_path_and_query.truncate(index);
 6517   8819   
            self.prefix = Some('?');
 6518   8820   
        }
 6519   8821   
    }
 6520   8822   
 6521   8823   
    /// Inserts a new query parameter. The key and value are percent encoded
 6522   8824   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 6523   8825   
    pub fn insert(&mut self, k: &str, v: &str) {
        8826  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        8827  +
    }
        8828  +
        8829  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        8830  +
    /// as is.
        8831  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 6524   8832   
        if let Some(prefix) = self.prefix {
 6525   8833   
            self.new_path_and_query.push(prefix);
 6526   8834   
        }
 6527   8835   
        self.prefix = Some('&');
 6528         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        8836  +
        self.new_path_and_query.push_str(encoded_k);
 6529   8837   
        self.new_path_and_query.push('=');
 6530         -
 6531         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
        8838  +
        self.new_path_and_query.push_str(encoded_v)
 6532   8839   
    }
 6533   8840   
 6534   8841   
    /// Returns just the built query string.
 6535   8842   
    pub fn build_query(self) -> String {
 6536   8843   
        self.build_uri().query().unwrap_or_default().to_string()
 6537   8844   
    }
 6538   8845   
 6539   8846   
    /// Returns a full [`Uri`] with the query string updated.
 6540   8847   
    pub fn build_uri(self) -> Uri {
 6541   8848   
        let mut parts = self.base_uri.into_parts();
 6542   8849   
        parts.path_and_query = Some(
 6543   8850   
            self.new_path_and_query
 6544   8851   
                .parse()
 6545   8852   
                .expect("adding query should not invalidate URI"),
 6546   8853   
        );
 6547   8854   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 6548   8855   
    }
 6549   8856   
}
 6550   8857   
 6551   8858   
#[cfg(test)]
 6552   8859   
mod test {
 6553   8860   
    use super::QueryWriter;
 6554   8861   
    use http_02x::Uri;
 6555   8862   
 6556   8863   
    #[test]
 6557   8864   
    fn empty_uri() {
 6558   8865   
        let uri = Uri::from_static("http://www.example.com");
 6559   8866   
        let mut query_writer = QueryWriter::new(&uri);
 6560   8867   
        query_writer.insert("key", "val%ue");
 6561   8868   
        query_writer.insert("another", "value");
 6562   8869   
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
 6563   8870   
index f108978..df7a9fe 100644
 6564         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        8871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 6565   8872   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 6566   8873   
 6567   8874   
[package.metadata.smithy-rs-release-tooling]
 6568   8875   
stable = true
 6569   8876   
[package.metadata.cargo-udeps.ignore]
 6570   8877   
normal = ["aws-smithy-http"]
 6571   8878   
 6572   8879   
[features]
 6573   8880   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 6574   8881   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 6575   8882   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 6576   8883   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 6577   8884   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 6578   8885   
rt-tokio = ["tokio/rt"]
 6579   8886   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 6580   8887   
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"]
 6581   8888   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 6582   8889   
 6583   8890   
[dependencies]
 6584   8891   
bytes = "1.10.0"
 6585   8892   
fastrand = "2.3.0"
 6586   8893   
pin-project-lite = "0.2.14"
 6587   8894   
pin-utils = "0.1.0"
 6588   8895   
tracing = "0.1.40"
 6589   8896   
 6590   8897   
[dependencies.aws-smithy-async]
 6591   8898   
path = "../aws-smithy-async"
 6592   8899   
version = "1.2.5"
 6593   8900   
 6594   8901   
[dependencies.aws-smithy-http]
 6595   8902   
path = "../aws-smithy-http"
 6596         -
version = "0.62.2"
        8903  +
version = "0.62.3"
 6597   8904   
 6598   8905   
[dependencies.aws-smithy-observability]
 6599   8906   
path = "../aws-smithy-observability"
 6600   8907   
version = "0.1.3"
 6601   8908   
 6602   8909   
[dependencies.aws-smithy-runtime-api]
 6603   8910   
path = "../aws-smithy-runtime-api"
 6604   8911   
version = "1.8.5"
 6605   8912   
 6606   8913   
[dependencies.aws-smithy-types]
 6607   8914   
path = "../aws-smithy-types"
 6608   8915   
features = ["http-body-0-4-x"]
 6609   8916   
version = "1.3.2"
 6610   8917   
 6611   8918   
[dependencies.aws-smithy-http-client]
 6612   8919   
path = "../aws-smithy-http-client"
 6613   8920   
optional = true
 6614   8921   
version = "1.0.6"
 6615   8922   
 6616   8923   
[dependencies.http-02x]
 6617   8924   
package = "http"
 6618   8925   
version = "0.2.9"
 6619   8926   
 6620   8927   
[dependencies.http-1x]
 6621   8928   
package = "http"
 6622   8929   
version = "1"
 6623   8930   
 6624   8931   
[dependencies.http-body-04x]
 6625   8932   
package = "http-body"
 6626   8933   
version = "0.4.5"
 6627   8934   
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
 6628   8935   
index 4e050c6..f58eb1c 100644
 6629         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
        8936  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 6630   8937   
@@ -1,33 +1,33 @@
 6631   8938   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6632   8939   
[package]
 6633   8940   
name = "aws-smithy-wasm"
 6634   8941   
version = "0.1.4"
 6635   8942   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 6636   8943   
description = "Smithy WebAssembly configuration for smithy-rs."
 6637   8944   
edition = "2021"
 6638   8945   
license = "Apache-2.0"
 6639   8946   
repository = "https://github.com/awslabs/smithy-rs"
 6640   8947   
[package.metadata.docs.rs]
 6641   8948   
all-features = true
 6642   8949   
targets = ["x86_64-unknown-linux-gnu"]
 6643   8950   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6644   8951   
rustdoc-args = ["--cfg", "docsrs"]
 6645   8952   
 6646   8953   
[dependencies]
 6647   8954   
bytes = "1.10.0"
 6648   8955   
http = "1.0.0"
 6649   8956   
tracing = "0.1.40"
 6650   8957   
wasi = "0.12.1"
 6651   8958   
 6652   8959   
[dependencies.aws-smithy-runtime-api]
 6653   8960   
path = "../aws-smithy-runtime-api"
 6654   8961   
features = ["http-1x"]
 6655   8962   
version = "1.8.5"
 6656   8963   
 6657   8964   
[dependencies.aws-smithy-http]
 6658   8965   
path = "../aws-smithy-http"
 6659         -
version = "0.62.2"
        8966  +
version = "0.62.3"
 6660   8967   
 6661   8968   
[dependencies.aws-smithy-types]
 6662   8969   
path = "../aws-smithy-types"
 6663   8970   
version = "1.3.2"
 6664   8971   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6665   8972   
index a880648..139e808 100644
 6666         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
        8973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6667   8974   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 6668   8975   
edition = "2021"
 6669   8976   
license = "Apache-2.0"
 6670   8977   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6671   8978   
rust-version = "1.86.0"
 6672   8979   
readme = "README.md"
 6673   8980   
[package.metadata.smithy]
 6674   8981   
codegen-version = "ci"
 6675   8982   
[package.metadata.docs.rs]
 6676   8983   
all-features = true
 6677   8984   
targets = ["x86_64-unknown-linux-gnu"]
 6678   8985   
[dependencies.aws-credential-types]
 6679   8986   
path = "../aws-credential-types"
 6680   8987   
version = "1.2.4"
 6681   8988   
 6682   8989   
[dependencies.aws-runtime]
 6683   8990   
path = "../aws-runtime"
 6684   8991   
features = ["event-stream"]
 6685   8992   
version = "1.5.9"
 6686   8993   
 6687   8994   
[dependencies.aws-smithy-async]
 6688   8995   
path = "../aws-smithy-async"
 6689   8996   
version = "1.2.5"
 6690   8997   
 6691   8998   
[dependencies.aws-smithy-eventstream]
 6692   8999   
path = "../aws-smithy-eventstream"
 6693   9000   
version = "0.60.10"
 6694   9001   
 6695   9002   
[dependencies.aws-smithy-http]
 6696   9003   
path = "../aws-smithy-http"
 6697   9004   
features = ["event-stream"]
 6698         -
version = "0.62.2"
        9005  +
version = "0.62.3"
 6699   9006   
 6700   9007   
[dependencies.aws-smithy-json]
 6701   9008   
path = "../aws-smithy-json"
 6702   9009   
version = "0.61.4"
 6703   9010   
 6704   9011   
[dependencies.aws-smithy-runtime]
 6705   9012   
path = "../aws-smithy-runtime"
 6706   9013   
features = ["client"]
 6707   9014   
version = "1.8.5"
 6708   9015   
 6709   9016   
[dependencies.aws-smithy-runtime-api]
 6710   9017   
path = "../aws-smithy-runtime-api"
 6711   9018   
features = ["client", "http-02x"]
 6712   9019   
version = "1.8.5"
 6713   9020   
 6714   9021   
[dependencies.aws-smithy-types]
 6715   9022   
path = "../aws-smithy-types"
 6716   9023   
version = "1.3.2"
 6717   9024   
 6718   9025   
[dependencies.aws-types]
 6719   9026   
path = "../aws-types"
 6720   9027   
version = "1.3.8"
 6721   9028   
 6722   9029   
[dependencies.bytes]
 6723   9030   
version = "1.4.0"
 6724   9031   
 6725   9032   
[dependencies.fastrand]
 6726   9033   
version = "2.0.0"
 6727   9034   
 6728   9035   
[dependencies.http]
 6729   9036   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6730   9037   
index 415ecc9..667d12b 100644
 6731         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
        9038  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6732   9039   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 6733   9040   
edition = "2021"
 6734   9041   
license = "Apache-2.0"
 6735   9042   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6736   9043   
rust-version = "1.86.0"
 6737   9044   
readme = "README.md"
 6738   9045   
[package.metadata.smithy]
 6739   9046   
codegen-version = "ci"
 6740   9047   
[package.metadata.docs.rs]
 6741   9048   
all-features = true
 6742   9049   
targets = ["x86_64-unknown-linux-gnu"]
 6743   9050   
[dependencies.aws-credential-types]
 6744   9051   
path = "../aws-credential-types"
 6745   9052   
version = "1.2.4"
 6746   9053   
 6747   9054   
[dependencies.aws-runtime]
 6748   9055   
path = "../aws-runtime"
 6749   9056   
features = ["event-stream"]
 6750   9057   
version = "1.5.9"
 6751   9058   
 6752   9059   
[dependencies.aws-smithy-async]
 6753   9060   
path = "../aws-smithy-async"
 6754   9061   
version = "1.2.5"
 6755   9062   
 6756   9063   
[dependencies.aws-smithy-eventstream]
 6757   9064   
path = "../aws-smithy-eventstream"
 6758   9065   
version = "0.60.10"
 6759   9066   
 6760   9067   
[dependencies.aws-smithy-http]
 6761   9068   
path = "../aws-smithy-http"
 6762   9069   
features = ["event-stream"]
 6763         -
version = "0.62.2"
        9070  +
version = "0.62.3"
 6764   9071   
 6765   9072   
[dependencies.aws-smithy-json]
 6766   9073   
path = "../aws-smithy-json"
 6767   9074   
version = "0.61.4"
 6768   9075   
 6769   9076   
[dependencies.aws-smithy-runtime]
 6770   9077   
path = "../aws-smithy-runtime"
 6771   9078   
features = ["client"]
 6772   9079   
version = "1.8.5"
 6773   9080   
 6774   9081   
[dependencies.aws-smithy-runtime-api]
 6775   9082   
path = "../aws-smithy-runtime-api"
 6776   9083   
features = ["client", "http-02x"]
 6777   9084   
version = "1.8.5"
 6778   9085   
 6779   9086   
[dependencies.aws-smithy-types]
 6780   9087   
path = "../aws-smithy-types"
 6781   9088   
version = "1.3.2"
 6782   9089   
 6783   9090   
[dependencies.aws-types]
 6784   9091   
path = "../aws-types"
 6785   9092   
version = "1.3.8"
 6786   9093   
 6787   9094   
[dependencies.bytes]
 6788   9095   
version = "1.4.0"
 6789   9096   
 6790   9097   
[dependencies.fastrand]
 6791   9098   
version = "2.0.0"
 6792   9099   
 6793   9100   
[dependencies.http]
 6794   9101   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 6795   9102   
index 8871cab..ed88de6 100644
 6796         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
        9103  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 6797   9104   
@@ -1,61 +1,61 @@
 6798   9105   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6799   9106   
[package]
 6800   9107   
name = "aws-sdk-codecatalyst"
 6801   9108   
version = "0.0.0-local"
 6802   9109   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6803   9110   
description = "AWS SDK for Amazon CodeCatalyst"
 6804   9111   
edition = "2021"
 6805   9112   
license = "Apache-2.0"
 6806   9113   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6807   9114   
rust-version = "1.86.0"
 6808   9115   
readme = "README.md"
 6809   9116   
[package.metadata.smithy]
 6810   9117   
codegen-version = "ci"
 6811   9118   
[package.metadata.docs.rs]
 6812   9119   
all-features = true
 6813   9120   
targets = ["x86_64-unknown-linux-gnu"]
 6814   9121   
[dependencies.aws-credential-types]
 6815   9122   
path = "../aws-credential-types"
 6816   9123   
version = "1.2.4"
 6817   9124   
 6818   9125   
[dependencies.aws-runtime]
 6819   9126   
path = "../aws-runtime"
 6820   9127   
version = "1.5.9"
 6821   9128   
 6822   9129   
[dependencies.aws-smithy-async]
 6823   9130   
path = "../aws-smithy-async"
 6824   9131   
version = "1.2.5"
 6825   9132   
 6826   9133   
[dependencies.aws-smithy-http]
 6827   9134   
path = "../aws-smithy-http"
 6828         -
version = "0.62.2"
        9135  +
version = "0.62.3"
 6829   9136   
 6830   9137   
[dependencies.aws-smithy-json]
 6831   9138   
path = "../aws-smithy-json"
 6832   9139   
version = "0.61.4"
 6833   9140   
 6834   9141   
[dependencies.aws-smithy-runtime]
 6835   9142   
path = "../aws-smithy-runtime"
 6836   9143   
features = ["client", "http-auth"]
 6837   9144   
version = "1.8.5"
 6838   9145   
 6839   9146   
[dependencies.aws-smithy-runtime-api]
 6840   9147   
path = "../aws-smithy-runtime-api"
 6841   9148   
features = ["client", "http-02x", "http-auth"]
 6842   9149   
version = "1.8.5"
 6843   9150   
 6844   9151   
[dependencies.aws-smithy-types]
 6845   9152   
path = "../aws-smithy-types"
 6846   9153   
version = "1.3.2"
 6847   9154   
 6848   9155   
[dependencies.aws-types]
 6849   9156   
path = "../aws-types"
 6850   9157   
version = "1.3.8"
 6851   9158   
 6852   9159   
[dependencies.bytes]
 6853   9160   
version = "1.4.0"
 6854   9161   
 6855   9162   
[dependencies.fastrand]
 6856   9163   
version = "2.0.0"
 6857   9164   
 6858   9165   
[dependencies.http]
 6859   9166   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 6860   9167   
index 89573ff..05238af 100644
 6861         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
        9168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 6862   9169   
@@ -1,61 +1,61 @@
 6863   9170   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6864   9171   
[package]
 6865   9172   
name = "aws-sdk-config"
 6866   9173   
version = "0.0.0-local"
 6867   9174   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6868   9175   
description = "AWS SDK for AWS Config"
 6869   9176   
edition = "2021"
 6870   9177   
license = "Apache-2.0"
 6871   9178   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6872   9179   
rust-version = "1.86.0"
 6873   9180   
readme = "README.md"
 6874   9181   
[package.metadata.smithy]
 6875   9182   
codegen-version = "ci"
 6876   9183   
[package.metadata.docs.rs]
 6877   9184   
all-features = true
 6878   9185   
targets = ["x86_64-unknown-linux-gnu"]
 6879   9186   
[dependencies.aws-credential-types]
 6880   9187   
path = "../aws-credential-types"
 6881   9188   
version = "1.2.4"
 6882   9189   
 6883   9190   
[dependencies.aws-runtime]
 6884   9191   
path = "../aws-runtime"
 6885   9192   
version = "1.5.9"
 6886   9193   
 6887   9194   
[dependencies.aws-smithy-async]
 6888   9195   
path = "../aws-smithy-async"
 6889   9196   
version = "1.2.5"
 6890   9197   
 6891   9198   
[dependencies.aws-smithy-http]
 6892   9199   
path = "../aws-smithy-http"
 6893         -
version = "0.62.2"
        9200  +
version = "0.62.3"
 6894   9201   
 6895   9202   
[dependencies.aws-smithy-json]
 6896   9203   
path = "../aws-smithy-json"
 6897   9204   
version = "0.61.4"
 6898   9205   
 6899   9206   
[dependencies.aws-smithy-runtime]
 6900   9207   
path = "../aws-smithy-runtime"
 6901   9208   
features = ["client"]
 6902   9209   
version = "1.8.5"
 6903   9210   
 6904   9211   
[dependencies.aws-smithy-runtime-api]
 6905   9212   
path = "../aws-smithy-runtime-api"
 6906   9213   
features = ["client", "http-02x"]
 6907   9214   
version = "1.8.5"
 6908   9215   
 6909   9216   
[dependencies.aws-smithy-types]
 6910   9217   
path = "../aws-smithy-types"
 6911   9218   
version = "1.3.2"
 6912   9219   
 6913   9220   
[dependencies.aws-types]
 6914   9221   
path = "../aws-types"
 6915   9222   
version = "1.3.8"
 6916   9223   
 6917   9224   
[dependencies.bytes]
 6918   9225   
version = "1.4.0"
 6919   9226   
 6920   9227   
[dependencies.fastrand]
 6921   9228   
version = "2.0.0"
 6922   9229   
 6923   9230   
[dependencies.http]
 6924   9231   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 6925   9232   
index d397c58..2c1062b 100644
 6926         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
        9233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 6927   9234   
@@ -1,61 +1,61 @@
 6928   9235   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6929   9236   
[package]
 6930   9237   
name = "aws-sdk-dynamodb"
 6931   9238   
version = "0.0.0-local"
 6932   9239   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6933   9240   
description = "AWS SDK for Amazon DynamoDB"
 6934   9241   
edition = "2021"
 6935   9242   
license = "Apache-2.0"
 6936   9243   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6937   9244   
rust-version = "1.86.0"
 6938   9245   
readme = "README.md"
 6939   9246   
[package.metadata.smithy]
 6940   9247   
codegen-version = "ci"
 6941   9248   
[package.metadata.docs.rs]
 6942   9249   
all-features = true
 6943   9250   
targets = ["x86_64-unknown-linux-gnu"]
 6944   9251   
[dependencies.aws-credential-types]
 6945   9252   
path = "../aws-credential-types"
 6946   9253   
version = "1.2.4"
 6947   9254   
 6948   9255   
[dependencies.aws-runtime]
 6949   9256   
path = "../aws-runtime"
 6950   9257   
version = "1.5.9"
 6951   9258   
 6952   9259   
[dependencies.aws-smithy-async]
 6953   9260   
path = "../aws-smithy-async"
 6954   9261   
version = "1.2.5"
 6955   9262   
 6956   9263   
[dependencies.aws-smithy-http]
 6957   9264   
path = "../aws-smithy-http"
 6958         -
version = "0.62.2"
        9265  +
version = "0.62.3"
 6959   9266   
 6960   9267   
[dependencies.aws-smithy-json]
 6961   9268   
path = "../aws-smithy-json"
 6962   9269   
version = "0.61.4"
 6963   9270   
 6964   9271   
[dependencies.aws-smithy-runtime]
 6965   9272   
path = "../aws-smithy-runtime"
 6966   9273   
features = ["client"]
 6967   9274   
version = "1.8.5"
 6968   9275   
 6969   9276   
[dependencies.aws-smithy-runtime-api]
 6970   9277   
path = "../aws-smithy-runtime-api"
 6971   9278   
features = ["client", "http-02x"]
 6972   9279   
version = "1.8.5"
 6973   9280   
 6974   9281   
[dependencies.aws-smithy-types]
 6975   9282   
path = "../aws-smithy-types"
 6976   9283   
version = "1.3.2"
 6977   9284   
 6978   9285   
[dependencies.aws-types]
 6979   9286   
path = "../aws-types"
 6980   9287   
version = "1.3.8"
 6981   9288   
 6982   9289   
[dependencies.bytes]
 6983   9290   
version = "1.4.0"
 6984   9291   
 6985   9292   
[dependencies.fastrand]
 6986   9293   
version = "2.0.0"
 6987   9294   
 6988   9295   
[dependencies.http]
 6989   9296   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 6990   9297   
index c0ba315..46168af 100644
 6991         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
        9298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 6992   9299   
@@ -1,61 +1,61 @@
 6993   9300   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6994   9301   
[package]
 6995   9302   
name = "aws-sdk-ec2"
 6996   9303   
version = "0.0.0-local"
 6997   9304   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6998   9305   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 6999   9306   
edition = "2021"
 7000   9307   
license = "Apache-2.0"
 7001   9308   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7002   9309   
rust-version = "1.86.0"
 7003   9310   
readme = "README.md"
 7004   9311   
[package.metadata.smithy]
 7005   9312   
codegen-version = "ci"
 7006   9313   
[package.metadata.docs.rs]
 7007   9314   
all-features = true
 7008   9315   
targets = ["x86_64-unknown-linux-gnu"]
 7009   9316   
[dependencies.aws-credential-types]
 7010   9317   
path = "../aws-credential-types"
 7011   9318   
version = "1.2.4"
 7012   9319   
 7013   9320   
[dependencies.aws-runtime]
 7014   9321   
path = "../aws-runtime"
 7015   9322   
version = "1.5.9"
 7016   9323   
 7017   9324   
[dependencies.aws-smithy-async]
 7018   9325   
path = "../aws-smithy-async"
 7019   9326   
version = "1.2.5"
 7020   9327   
 7021   9328   
[dependencies.aws-smithy-http]
 7022   9329   
path = "../aws-smithy-http"
 7023         -
version = "0.62.2"
        9330  +
version = "0.62.3"
 7024   9331   
 7025   9332   
[dependencies.aws-smithy-json]
 7026   9333   
path = "../aws-smithy-json"
 7027   9334   
version = "0.61.4"
 7028   9335   
 7029   9336   
[dependencies.aws-smithy-query]
 7030   9337   
path = "../aws-smithy-query"
 7031   9338   
version = "0.60.7"
 7032   9339   
 7033   9340   
[dependencies.aws-smithy-runtime]
 7034   9341   
path = "../aws-smithy-runtime"
 7035   9342   
features = ["client"]
 7036   9343   
version = "1.8.5"
 7037   9344   
 7038   9345   
[dependencies.aws-smithy-runtime-api]
 7039   9346   
path = "../aws-smithy-runtime-api"
 7040   9347   
features = ["client", "http-02x"]
 7041   9348   
version = "1.8.5"
 7042   9349   
 7043   9350   
[dependencies.aws-smithy-types]
 7044   9351   
path = "../aws-smithy-types"
 7045   9352   
version = "1.3.2"
 7046   9353   
 7047   9354   
[dependencies.aws-smithy-xml]
 7048   9355   
path = "../aws-smithy-xml"
 7049   9356   
version = "0.60.10"
 7050   9357   
 7051   9358   
[dependencies.aws-types]
 7052   9359   
path = "../aws-types"
 7053   9360   
version = "1.3.8"
 7054   9361   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7055   9362   
index 4474d17..095d40e 100644
 7056         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
        9363  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7057   9364   
@@ -1,61 +1,61 @@
 7058   9365   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7059   9366   
[package]
 7060   9367   
name = "aws-sdk-ecs"
 7061   9368   
version = "0.0.0-local"
 7062   9369   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7063   9370   
description = "AWS SDK for Amazon EC2 Container Service"
 7064   9371   
edition = "2021"
 7065   9372   
license = "Apache-2.0"
 7066   9373   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7067   9374   
rust-version = "1.86.0"
 7068   9375   
readme = "README.md"
 7069   9376   
[package.metadata.smithy]
 7070   9377   
codegen-version = "ci"
 7071   9378   
[package.metadata.docs.rs]
 7072   9379   
all-features = true
 7073   9380   
targets = ["x86_64-unknown-linux-gnu"]
 7074   9381   
[dependencies.aws-credential-types]
 7075   9382   
path = "../aws-credential-types"
 7076   9383   
version = "1.2.4"
 7077   9384   
 7078   9385   
[dependencies.aws-runtime]
 7079   9386   
path = "../aws-runtime"
 7080   9387   
version = "1.5.9"
 7081   9388   
 7082   9389   
[dependencies.aws-smithy-async]
 7083   9390   
path = "../aws-smithy-async"
 7084   9391   
version = "1.2.5"
 7085   9392   
 7086   9393   
[dependencies.aws-smithy-http]
 7087   9394   
path = "../aws-smithy-http"
 7088         -
version = "0.62.2"
        9395  +
version = "0.62.3"
 7089   9396   
 7090   9397   
[dependencies.aws-smithy-json]
 7091   9398   
path = "../aws-smithy-json"
 7092   9399   
version = "0.61.4"
 7093   9400   
 7094   9401   
[dependencies.aws-smithy-runtime]
 7095   9402   
path = "../aws-smithy-runtime"
 7096   9403   
features = ["client"]
 7097   9404   
version = "1.8.5"
 7098   9405   
 7099   9406   
[dependencies.aws-smithy-runtime-api]
 7100   9407   
path = "../aws-smithy-runtime-api"
 7101   9408   
features = ["client", "http-02x"]
 7102   9409   
version = "1.8.5"
 7103   9410   
 7104   9411   
[dependencies.aws-smithy-types]
 7105   9412   
path = "../aws-smithy-types"
 7106   9413   
version = "1.3.2"
 7107   9414   
 7108   9415   
[dependencies.aws-types]
 7109   9416   
path = "../aws-types"
 7110   9417   
version = "1.3.8"
 7111   9418   
 7112   9419   
[dependencies.bytes]
 7113   9420   
version = "1.4.0"
 7114   9421   
 7115   9422   
[dependencies.fastrand]
 7116   9423   
version = "2.0.0"
 7117   9424   
 7118   9425   
[dependencies.http]
 7119   9426   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7120   9427   
index 15b1d77..16d7d89 100644
 7121         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
        9428  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7122   9429   
@@ -1,65 +1,65 @@
 7123   9430   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7124   9431   
[package]
 7125   9432   
name = "aws-sdk-glacier"
 7126   9433   
version = "0.0.0-local"
 7127   9434   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7128   9435   
description = "AWS SDK for Amazon Glacier"
 7129   9436   
edition = "2021"
 7130   9437   
license = "Apache-2.0"
 7131   9438   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7132   9439   
rust-version = "1.86.0"
 7133   9440   
readme = "README.md"
 7134   9441   
[package.metadata.smithy]
 7135   9442   
codegen-version = "ci"
 7136   9443   
[package.metadata.docs.rs]
 7137   9444   
all-features = true
 7138   9445   
targets = ["x86_64-unknown-linux-gnu"]
 7139   9446   
[dependencies.aws-credential-types]
 7140   9447   
path = "../aws-credential-types"
 7141   9448   
version = "1.2.4"
 7142   9449   
 7143   9450   
[dependencies.aws-runtime]
 7144   9451   
path = "../aws-runtime"
 7145   9452   
version = "1.5.9"
 7146   9453   
 7147   9454   
[dependencies.aws-sigv4]
 7148   9455   
path = "../aws-sigv4"
 7149         -
version = "1.3.3"
        9456  +
version = "1.3.4"
 7150   9457   
 7151   9458   
[dependencies.aws-smithy-async]
 7152   9459   
path = "../aws-smithy-async"
 7153   9460   
version = "1.2.5"
 7154   9461   
 7155   9462   
[dependencies.aws-smithy-http]
 7156   9463   
path = "../aws-smithy-http"
 7157         -
version = "0.62.2"
        9464  +
version = "0.62.3"
 7158   9465   
 7159   9466   
[dependencies.aws-smithy-json]
 7160   9467   
path = "../aws-smithy-json"
 7161   9468   
version = "0.61.4"
 7162   9469   
 7163   9470   
[dependencies.aws-smithy-runtime]
 7164   9471   
path = "../aws-smithy-runtime"
 7165   9472   
features = ["client"]
 7166   9473   
version = "1.8.5"
 7167   9474   
 7168   9475   
[dependencies.aws-smithy-runtime-api]
 7169   9476   
path = "../aws-smithy-runtime-api"
 7170   9477   
features = ["client", "http-02x"]
 7171   9478   
version = "1.8.5"
 7172   9479   
 7173   9480   
[dependencies.aws-smithy-types]
 7174   9481   
path = "../aws-smithy-types"
 7175   9482   
version = "1.3.2"
 7176   9483   
 7177   9484   
[dependencies.aws-types]
 7178   9485   
path = "../aws-types"
 7179   9486   
version = "1.3.8"
 7180   9487   
 7181   9488   
[dependencies.bytes]
 7182   9489   
version = "1.4.0"
 7183   9490   
 7184   9491   
[dependencies.fastrand]
 7185   9492   
version = "2.0.0"
 7186   9493   
 7187   9494   
[dependencies.hex]
 7188   9495   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7189   9496   
index d718a3a..65e6f24 100644
 7190         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
        9497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7191   9498   
@@ -1,61 +1,61 @@
 7192   9499   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7193   9500   
[package]
 7194   9501   
name = "aws-sdk-iam"
 7195   9502   
version = "0.0.0-local"
 7196   9503   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7197   9504   
description = "AWS SDK for AWS Identity and Access Management"
 7198   9505   
edition = "2021"
 7199   9506   
license = "Apache-2.0"
 7200   9507   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7201   9508   
rust-version = "1.86.0"
 7202   9509   
readme = "README.md"
 7203   9510   
[package.metadata.smithy]
 7204   9511   
codegen-version = "ci"
 7205   9512   
[package.metadata.docs.rs]
 7206   9513   
all-features = true
 7207   9514   
targets = ["x86_64-unknown-linux-gnu"]
 7208   9515   
[dependencies.aws-credential-types]
 7209   9516   
path = "../aws-credential-types"
 7210   9517   
version = "1.2.4"
 7211   9518   
 7212   9519   
[dependencies.aws-runtime]
 7213   9520   
path = "../aws-runtime"
 7214   9521   
version = "1.5.9"
 7215   9522   
 7216   9523   
[dependencies.aws-smithy-async]
 7217   9524   
path = "../aws-smithy-async"
 7218   9525   
version = "1.2.5"
 7219   9526   
 7220   9527   
[dependencies.aws-smithy-http]
 7221   9528   
path = "../aws-smithy-http"
 7222         -
version = "0.62.2"
        9529  +
version = "0.62.3"
 7223   9530   
 7224   9531   
[dependencies.aws-smithy-json]
 7225   9532   
path = "../aws-smithy-json"
 7226   9533   
version = "0.61.4"
 7227   9534   
 7228   9535   
[dependencies.aws-smithy-query]
 7229   9536   
path = "../aws-smithy-query"
 7230   9537   
version = "0.60.7"
 7231   9538   
 7232   9539   
[dependencies.aws-smithy-runtime]
 7233   9540   
path = "../aws-smithy-runtime"
 7234   9541   
features = ["client"]
 7235   9542   
version = "1.8.5"
 7236   9543   
 7237   9544   
[dependencies.aws-smithy-runtime-api]
 7238   9545   
path = "../aws-smithy-runtime-api"
 7239   9546   
features = ["client", "http-02x"]
 7240   9547   
version = "1.8.5"
 7241   9548   
 7242   9549   
[dependencies.aws-smithy-types]
 7243   9550   
path = "../aws-smithy-types"
 7244   9551   
version = "1.3.2"
 7245   9552   
 7246   9553   
[dependencies.aws-smithy-xml]
 7247   9554   
path = "../aws-smithy-xml"
 7248   9555   
version = "0.60.10"
 7249   9556   
 7250   9557   
[dependencies.aws-types]
 7251   9558   
path = "../aws-types"
 7252   9559   
version = "1.3.8"
 7253   9560   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7254   9561   
index 0ed4302..3d828a5 100644
 7255         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
        9562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7256   9563   
@@ -1,61 +1,61 @@
 7257   9564   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7258   9565   
[package]
 7259   9566   
name = "aws-sdk-kms"
 7260   9567   
version = "0.0.0-local"
 7261   9568   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7262   9569   
description = "AWS SDK for AWS Key Management Service"
 7263   9570   
edition = "2021"
 7264   9571   
license = "Apache-2.0"
 7265   9572   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7266   9573   
rust-version = "1.86.0"
 7267   9574   
readme = "README.md"
 7268   9575   
[package.metadata.smithy]
 7269   9576   
codegen-version = "ci"
 7270   9577   
[package.metadata.docs.rs]
 7271   9578   
all-features = true
 7272   9579   
targets = ["x86_64-unknown-linux-gnu"]
 7273   9580   
[dependencies.aws-credential-types]
 7274   9581   
path = "../aws-credential-types"
 7275   9582   
version = "1.2.4"
 7276   9583   
 7277   9584   
[dependencies.aws-runtime]
 7278   9585   
path = "../aws-runtime"
 7279   9586   
version = "1.5.9"
 7280   9587   
 7281   9588   
[dependencies.aws-smithy-async]
 7282   9589   
path = "../aws-smithy-async"
 7283   9590   
version = "1.2.5"
 7284   9591   
 7285   9592   
[dependencies.aws-smithy-http]
 7286   9593   
path = "../aws-smithy-http"
 7287         -
version = "0.62.2"
        9594  +
version = "0.62.3"
 7288   9595   
 7289   9596   
[dependencies.aws-smithy-json]
 7290   9597   
path = "../aws-smithy-json"
 7291   9598   
version = "0.61.4"
 7292   9599   
 7293   9600   
[dependencies.aws-smithy-runtime]
 7294   9601   
path = "../aws-smithy-runtime"
 7295   9602   
features = ["client"]
 7296   9603   
version = "1.8.5"
 7297   9604   
 7298   9605   
[dependencies.aws-smithy-runtime-api]
 7299   9606   
path = "../aws-smithy-runtime-api"
 7300   9607   
features = ["client", "http-02x"]
 7301   9608   
version = "1.8.5"
 7302   9609   
 7303   9610   
[dependencies.aws-smithy-types]
 7304   9611   
path = "../aws-smithy-types"
 7305   9612   
version = "1.3.2"
 7306   9613   
 7307   9614   
[dependencies.aws-types]
 7308   9615   
path = "../aws-types"
 7309   9616   
version = "1.3.8"
 7310   9617   
 7311   9618   
[dependencies.bytes]
 7312   9619   
version = "1.4.0"
 7313   9620   
 7314   9621   
[dependencies.fastrand]
 7315   9622   
version = "2.0.0"
 7316   9623   
 7317   9624   
[dependencies.http]
 7318   9625   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7319   9626   
index 6518dfc..6b94752 100644
 7320         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
        9627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7321   9628   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 7322   9629   
edition = "2021"
 7323   9630   
license = "Apache-2.0"
 7324   9631   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7325   9632   
rust-version = "1.86.0"
 7326   9633   
readme = "README.md"
 7327   9634   
[package.metadata.smithy]
 7328   9635   
codegen-version = "ci"
 7329   9636   
[package.metadata.docs.rs]
 7330   9637   
all-features = true
 7331   9638   
targets = ["x86_64-unknown-linux-gnu"]
 7332   9639   
[dependencies.aws-credential-types]
 7333   9640   
path = "../aws-credential-types"
 7334   9641   
version = "1.2.4"
 7335   9642   
 7336   9643   
[dependencies.aws-runtime]
 7337   9644   
path = "../aws-runtime"
 7338   9645   
features = ["event-stream"]
 7339   9646   
version = "1.5.9"
 7340   9647   
 7341   9648   
[dependencies.aws-smithy-async]
 7342   9649   
path = "../aws-smithy-async"
 7343   9650   
version = "1.2.5"
 7344   9651   
 7345   9652   
[dependencies.aws-smithy-eventstream]
 7346   9653   
path = "../aws-smithy-eventstream"
 7347   9654   
version = "0.60.10"
 7348   9655   
 7349   9656   
[dependencies.aws-smithy-http]
 7350   9657   
path = "../aws-smithy-http"
 7351   9658   
features = ["event-stream"]
 7352         -
version = "0.62.2"
        9659  +
version = "0.62.3"
 7353   9660   
 7354   9661   
[dependencies.aws-smithy-json]
 7355   9662   
path = "../aws-smithy-json"
 7356   9663   
version = "0.61.4"
 7357   9664   
 7358   9665   
[dependencies.aws-smithy-runtime]
 7359   9666   
path = "../aws-smithy-runtime"
 7360   9667   
features = ["client"]
 7361   9668   
version = "1.8.5"
 7362   9669   
 7363   9670   
[dependencies.aws-smithy-runtime-api]
 7364   9671   
path = "../aws-smithy-runtime-api"
 7365   9672   
features = ["client", "http-02x"]
 7366   9673   
version = "1.8.5"
 7367   9674   
 7368   9675   
[dependencies.aws-smithy-types]
 7369   9676   
path = "../aws-smithy-types"
 7370   9677   
version = "1.3.2"
 7371   9678   
 7372   9679   
[dependencies.aws-types]
 7373   9680   
path = "../aws-types"
 7374   9681   
version = "1.3.8"
 7375   9682   
 7376   9683   
[dependencies.bytes]
 7377   9684   
version = "1.4.0"
 7378   9685   
 7379   9686   
[dependencies.fastrand]
 7380   9687   
version = "2.0.0"
 7381   9688   
 7382   9689   
[dependencies.http]
 7383   9690   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7384   9691   
index dabb0e0..34cbc15 100644
 7385         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
        9692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7386   9693   
@@ -1,65 +1,65 @@
 7387   9694   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7388   9695   
[package]
 7389   9696   
name = "aws-sdk-polly"
 7390   9697   
version = "0.0.0-local"
 7391   9698   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7392   9699   
description = "AWS SDK for Amazon Polly"
 7393   9700   
edition = "2021"
 7394   9701   
license = "Apache-2.0"
 7395   9702   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7396   9703   
rust-version = "1.86.0"
 7397   9704   
readme = "README.md"
 7398   9705   
[package.metadata.smithy]
 7399   9706   
codegen-version = "ci"
 7400   9707   
[package.metadata.docs.rs]
 7401   9708   
all-features = true
 7402   9709   
targets = ["x86_64-unknown-linux-gnu"]
 7403   9710   
[dependencies.aws-credential-types]
 7404   9711   
path = "../aws-credential-types"
 7405   9712   
version = "1.2.4"
 7406   9713   
 7407   9714   
[dependencies.aws-runtime]
 7408   9715   
path = "../aws-runtime"
 7409   9716   
version = "1.5.9"
 7410   9717   
 7411   9718   
[dependencies.aws-sigv4]
 7412   9719   
path = "../aws-sigv4"
 7413         -
version = "1.3.3"
        9720  +
version = "1.3.4"
 7414   9721   
 7415   9722   
[dependencies.aws-smithy-async]
 7416   9723   
path = "../aws-smithy-async"
 7417   9724   
version = "1.2.5"
 7418   9725   
 7419   9726   
[dependencies.aws-smithy-http]
 7420   9727   
path = "../aws-smithy-http"
 7421         -
version = "0.62.2"
        9728  +
version = "0.62.3"
 7422   9729   
 7423   9730   
[dependencies.aws-smithy-json]
 7424   9731   
path = "../aws-smithy-json"
 7425   9732   
version = "0.61.4"
 7426   9733   
 7427   9734   
[dependencies.aws-smithy-runtime]
 7428   9735   
path = "../aws-smithy-runtime"
 7429   9736   
features = ["client"]
 7430   9737   
version = "1.8.5"
 7431   9738   
 7432   9739   
[dependencies.aws-smithy-runtime-api]
 7433   9740   
path = "../aws-smithy-runtime-api"
 7434   9741   
features = ["client", "http-02x"]
 7435   9742   
version = "1.8.5"
 7436   9743   
 7437   9744   
[dependencies.aws-smithy-types]
 7438   9745   
path = "../aws-smithy-types"
 7439   9746   
version = "1.3.2"
 7440   9747   
 7441   9748   
[dependencies.aws-types]
 7442   9749   
path = "../aws-types"
 7443   9750   
version = "1.3.8"
 7444   9751   
 7445   9752   
[dependencies.bytes]
 7446   9753   
version = "1.4.0"
 7447   9754   
 7448   9755   
[dependencies.fastrand]
 7449   9756   
version = "2.0.0"
 7450   9757   
 7451   9758   
[dependencies.http]
 7452   9759   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7453   9760   
index a884716..f3d8713 100644
 7454         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
        9761  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7455   9762   
@@ -1,61 +1,61 @@
 7456   9763   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7457   9764   
[package]
 7458   9765   
name = "aws-sdk-qldbsession"
 7459   9766   
version = "0.0.0-local"
 7460   9767   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7461   9768   
description = "AWS SDK for Amazon QLDB Session"
 7462   9769   
edition = "2021"
 7463   9770   
license = "Apache-2.0"
 7464   9771   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7465   9772   
rust-version = "1.86.0"
 7466   9773   
readme = "README.md"
 7467   9774   
[package.metadata.smithy]
 7468   9775   
codegen-version = "ci"
 7469   9776   
[package.metadata.docs.rs]
 7470   9777   
all-features = true
 7471   9778   
targets = ["x86_64-unknown-linux-gnu"]
 7472   9779   
[dependencies.aws-credential-types]
 7473   9780   
path = "../aws-credential-types"
 7474   9781   
version = "1.2.4"
 7475   9782   
 7476   9783   
[dependencies.aws-runtime]
 7477   9784   
path = "../aws-runtime"
 7478   9785   
version = "1.5.9"
 7479   9786   
 7480   9787   
[dependencies.aws-smithy-async]
 7481   9788   
path = "../aws-smithy-async"
 7482   9789   
version = "1.2.5"
 7483   9790   
 7484   9791   
[dependencies.aws-smithy-http]
 7485   9792   
path = "../aws-smithy-http"
 7486         -
version = "0.62.2"
        9793  +
version = "0.62.3"
 7487   9794   
 7488   9795   
[dependencies.aws-smithy-json]
 7489   9796   
path = "../aws-smithy-json"
 7490   9797   
version = "0.61.4"
 7491   9798   
 7492   9799   
[dependencies.aws-smithy-runtime]
 7493   9800   
path = "../aws-smithy-runtime"
 7494   9801   
features = ["client"]
 7495   9802   
version = "1.8.5"
 7496   9803   
 7497   9804   
[dependencies.aws-smithy-runtime-api]
 7498   9805   
path = "../aws-smithy-runtime-api"
 7499   9806   
features = ["client", "http-02x"]
 7500   9807   
version = "1.8.5"
 7501   9808   
 7502   9809   
[dependencies.aws-smithy-types]
 7503   9810   
path = "../aws-smithy-types"
 7504   9811   
version = "1.3.2"
 7505   9812   
 7506   9813   
[dependencies.aws-types]
 7507   9814   
path = "../aws-types"
 7508   9815   
version = "1.3.8"
 7509   9816   
 7510   9817   
[dependencies.bytes]
 7511   9818   
version = "1.4.0"
 7512   9819   
 7513   9820   
[dependencies.fastrand]
 7514   9821   
version = "2.0.0"
 7515   9822   
 7516   9823   
[dependencies.http]
 7517   9824   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7518   9825   
index 32a7dc9..a2c752d 100644
 7519         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
        9826  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7520   9827   
@@ -1,61 +1,61 @@
 7521   9828   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7522   9829   
[package]
 7523   9830   
name = "aws-sdk-route53"
 7524   9831   
version = "0.0.0-local"
 7525   9832   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7526   9833   
description = "AWS SDK for Amazon Route 53"
 7527   9834   
edition = "2021"
 7528   9835   
license = "Apache-2.0"
 7529   9836   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7530   9837   
rust-version = "1.86.0"
 7531   9838   
readme = "README.md"
 7532   9839   
[package.metadata.smithy]
 7533   9840   
codegen-version = "ci"
 7534   9841   
[package.metadata.docs.rs]
 7535   9842   
all-features = true
 7536   9843   
targets = ["x86_64-unknown-linux-gnu"]
 7537   9844   
[dependencies.aws-credential-types]
 7538   9845   
path = "../aws-credential-types"
 7539   9846   
version = "1.2.4"
 7540   9847   
 7541   9848   
[dependencies.aws-runtime]
 7542   9849   
path = "../aws-runtime"
 7543   9850   
version = "1.5.9"
 7544   9851   
 7545   9852   
[dependencies.aws-smithy-async]
 7546   9853   
path = "../aws-smithy-async"
 7547   9854   
version = "1.2.5"
 7548   9855   
 7549   9856   
[dependencies.aws-smithy-http]
 7550   9857   
path = "../aws-smithy-http"
 7551         -
version = "0.62.2"
        9858  +
version = "0.62.3"
 7552   9859   
 7553   9860   
[dependencies.aws-smithy-json]
 7554   9861   
path = "../aws-smithy-json"
 7555   9862   
version = "0.61.4"
 7556   9863   
 7557   9864   
[dependencies.aws-smithy-runtime]
 7558   9865   
path = "../aws-smithy-runtime"
 7559   9866   
features = ["client"]
 7560   9867   
version = "1.8.5"
 7561   9868   
 7562   9869   
[dependencies.aws-smithy-runtime-api]
 7563   9870   
path = "../aws-smithy-runtime-api"
 7564   9871   
features = ["client", "http-02x"]
 7565   9872   
version = "1.8.5"
 7566   9873   
 7567   9874   
[dependencies.aws-smithy-types]
 7568   9875   
path = "../aws-smithy-types"
 7569   9876   
version = "1.3.2"
 7570   9877   
 7571   9878   
[dependencies.aws-smithy-xml]
 7572   9879   
path = "../aws-smithy-xml"
 7573   9880   
version = "0.60.10"
 7574   9881   
 7575   9882   
[dependencies.aws-types]
 7576   9883   
path = "../aws-types"
 7577   9884   
version = "1.3.8"
 7578   9885   
 7579   9886   
[dependencies.fastrand]
 7580   9887   
version = "2.0.0"
 7581   9888   
 7582   9889   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7583   9890   
index f65e261..2f6bec0 100644
 7584         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
        9891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7585   9892   
@@ -1,75 +1,75 @@
 7586   9893   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7587   9894   
[package]
 7588   9895   
name = "aws-sdk-s3"
 7589   9896   
version = "0.0.0-local"
 7590   9897   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7591   9898   
description = "AWS SDK for Amazon Simple Storage Service"
 7592   9899   
edition = "2021"
 7593   9900   
license = "Apache-2.0"
 7594   9901   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7595   9902   
rust-version = "1.86.0"
 7596   9903   
readme = "README.md"
 7597   9904   
[package.metadata.smithy]
 7598   9905   
codegen-version = "ci"
 7599   9906   
[package.metadata.docs.rs]
 7600   9907   
all-features = true
 7601   9908   
targets = ["x86_64-unknown-linux-gnu"]
 7602   9909   
[dependencies.aws-credential-types]
 7603   9910   
path = "../aws-credential-types"
 7604   9911   
version = "1.2.4"
 7605   9912   
 7606   9913   
[dependencies.aws-runtime]
 7607   9914   
path = "../aws-runtime"
 7608   9915   
features = ["event-stream", "http-02x"]
 7609   9916   
version = "1.5.9"
 7610   9917   
 7611   9918   
[dependencies.aws-sigv4]
 7612   9919   
path = "../aws-sigv4"
 7613         -
version = "1.3.3"
        9920  +
version = "1.3.4"
 7614   9921   
 7615   9922   
[dependencies.aws-smithy-async]
 7616   9923   
path = "../aws-smithy-async"
 7617   9924   
version = "1.2.5"
 7618   9925   
 7619   9926   
[dependencies.aws-smithy-checksums]
 7620   9927   
path = "../aws-smithy-checksums"
 7621   9928   
version = "0.63.5"
 7622   9929   
 7623   9930   
[dependencies.aws-smithy-eventstream]
 7624   9931   
path = "../aws-smithy-eventstream"
 7625   9932   
version = "0.60.10"
 7626   9933   
 7627   9934   
[dependencies.aws-smithy-http]
 7628   9935   
path = "../aws-smithy-http"
 7629   9936   
features = ["event-stream"]
 7630         -
version = "0.62.2"
        9937  +
version = "0.62.3"
 7631   9938   
 7632   9939   
[dependencies.aws-smithy-json]
 7633   9940   
path = "../aws-smithy-json"
 7634   9941   
version = "0.61.4"
 7635   9942   
 7636   9943   
[dependencies.aws-smithy-runtime]
 7637   9944   
path = "../aws-smithy-runtime"
 7638   9945   
features = ["client"]
 7639   9946   
version = "1.8.5"
 7640   9947   
 7641   9948   
[dependencies.aws-smithy-runtime-api]
 7642   9949   
path = "../aws-smithy-runtime-api"
 7643   9950   
features = ["client", "http-02x"]
 7644   9951   
version = "1.8.5"
 7645   9952   
 7646   9953   
[dependencies.aws-smithy-types]
 7647   9954   
path = "../aws-smithy-types"
 7648   9955   
version = "1.3.2"
 7649   9956   
 7650   9957   
[dependencies.aws-smithy-xml]
 7651   9958   
path = "../aws-smithy-xml"
 7652   9959   
version = "0.60.10"
 7653   9960   
 7654   9961   
[dependencies.aws-types]
 7655   9962   
path = "../aws-types"
 7656   9963   
version = "1.3.8"
 7657   9964   
 7658   9965   
[dependencies.bytes]
 7659   9966   
version = "1.4.0"
 7660   9967   
 7661   9968   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7662   9969   
index b4d1cdd..861c0cc 100644
 7663         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
        9970  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7664   9971   
@@ -1,61 +1,61 @@
 7665   9972   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7666   9973   
[package]
 7667   9974   
name = "aws-sdk-s3control"
 7668   9975   
version = "0.0.0-local"
 7669   9976   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7670   9977   
description = "AWS SDK for AWS S3 Control"
 7671   9978   
edition = "2021"
 7672   9979   
license = "Apache-2.0"
 7673   9980   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7674   9981   
rust-version = "1.86.0"
 7675   9982   
readme = "README.md"
 7676   9983   
[package.metadata.smithy]
 7677   9984   
codegen-version = "ci"
 7678   9985   
[package.metadata.docs.rs]
 7679   9986   
all-features = true
 7680   9987   
targets = ["x86_64-unknown-linux-gnu"]
 7681   9988   
[dependencies.aws-credential-types]
 7682   9989   
path = "../aws-credential-types"
 7683   9990   
version = "1.2.4"
 7684   9991   
 7685   9992   
[dependencies.aws-runtime]
 7686   9993   
path = "../aws-runtime"
 7687   9994   
version = "1.5.9"
 7688   9995   
 7689   9996   
[dependencies.aws-smithy-async]
 7690   9997   
path = "../aws-smithy-async"
 7691   9998   
version = "1.2.5"
 7692   9999   
 7693  10000   
[dependencies.aws-smithy-http]
 7694  10001   
path = "../aws-smithy-http"
 7695         -
version = "0.62.2"
       10002  +
version = "0.62.3"
 7696  10003   
 7697  10004   
[dependencies.aws-smithy-json]
 7698  10005   
path = "../aws-smithy-json"
 7699  10006   
version = "0.61.4"
 7700  10007   
 7701  10008   
[dependencies.aws-smithy-runtime]
 7702  10009   
path = "../aws-smithy-runtime"
 7703  10010   
features = ["client"]
 7704  10011   
version = "1.8.5"
 7705  10012   
 7706  10013   
[dependencies.aws-smithy-runtime-api]
 7707  10014   
path = "../aws-smithy-runtime-api"
 7708  10015   
features = ["client", "http-02x"]
 7709  10016   
version = "1.8.5"
 7710  10017   
 7711  10018   
[dependencies.aws-smithy-types]
 7712  10019   
path = "../aws-smithy-types"
 7713  10020   
version = "1.3.2"
 7714  10021   
 7715  10022   
[dependencies.aws-smithy-xml]
 7716  10023   
path = "../aws-smithy-xml"
 7717  10024   
version = "0.60.10"
 7718  10025   
 7719  10026   
[dependencies.aws-types]
 7720  10027   
path = "../aws-types"
 7721  10028   
version = "1.3.8"
 7722  10029   
 7723  10030   
[dependencies.fastrand]
 7724  10031   
version = "2.0.0"
 7725  10032   
 7726  10033   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7727  10034   
index 2cde182..fc367f4 100644
 7728         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       10035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7729  10036   
@@ -1,61 +1,61 @@
 7730  10037   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7731  10038   
[package]
 7732  10039   
name = "aws-sdk-sso"
 7733  10040   
version = "0.0.0-local"
 7734  10041   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7735  10042   
description = "AWS SDK for AWS Single Sign-On"
 7736  10043   
edition = "2021"
 7737  10044   
license = "Apache-2.0"
 7738  10045   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7739  10046   
rust-version = "1.86.0"
 7740  10047   
readme = "README.md"
 7741  10048   
[package.metadata.smithy]
 7742  10049   
codegen-version = "ci"
 7743  10050   
[package.metadata.docs.rs]
 7744  10051   
all-features = true
 7745  10052   
targets = ["x86_64-unknown-linux-gnu"]
 7746  10053   
[dependencies.aws-credential-types]
 7747  10054   
path = "../aws-credential-types"
 7748  10055   
version = "1.2.4"
 7749  10056   
 7750  10057   
[dependencies.aws-runtime]
 7751  10058   
path = "../aws-runtime"
 7752  10059   
version = "1.5.9"
 7753  10060   
 7754  10061   
[dependencies.aws-smithy-async]
 7755  10062   
path = "../aws-smithy-async"
 7756  10063   
version = "1.2.5"
 7757  10064   
 7758  10065   
[dependencies.aws-smithy-http]
 7759  10066   
path = "../aws-smithy-http"
 7760         -
version = "0.62.2"
       10067  +
version = "0.62.3"
 7761  10068   
 7762  10069   
[dependencies.aws-smithy-json]
 7763  10070   
path = "../aws-smithy-json"
 7764  10071   
version = "0.61.4"
 7765  10072   
 7766  10073   
[dependencies.aws-smithy-runtime]
 7767  10074   
path = "../aws-smithy-runtime"
 7768  10075   
features = ["client"]
 7769  10076   
version = "1.8.5"
 7770  10077   
 7771  10078   
[dependencies.aws-smithy-runtime-api]
 7772  10079   
path = "../aws-smithy-runtime-api"
 7773  10080   
features = ["client", "http-02x"]
 7774  10081   
version = "1.8.5"
 7775  10082   
 7776  10083   
[dependencies.aws-smithy-types]
 7777  10084   
path = "../aws-smithy-types"
 7778  10085   
version = "1.3.2"
 7779  10086   
 7780  10087   
[dependencies.aws-types]
 7781  10088   
path = "../aws-types"
 7782  10089   
version = "1.3.8"
 7783  10090   
 7784  10091   
[dependencies.bytes]
 7785  10092   
version = "1.4.0"
 7786  10093   
 7787  10094   
[dependencies.fastrand]
 7788  10095   
version = "2.0.0"
 7789  10096   
 7790  10097   
[dependencies.http]
 7791  10098   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 7792  10099   
index 7a34c16..588d0bd 100644
 7793         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       10100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 7794  10101   
@@ -1,61 +1,61 @@
 7795  10102   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7796  10103   
[package]
 7797  10104   
name = "aws-sdk-ssooidc"
 7798  10105   
version = "0.0.0-local"
 7799  10106   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7800  10107   
description = "AWS SDK for AWS SSO OIDC"
 7801  10108   
edition = "2021"
 7802  10109   
license = "Apache-2.0"
 7803  10110   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7804  10111   
rust-version = "1.86.0"
 7805  10112   
readme = "README.md"
 7806  10113   
[package.metadata.smithy]
 7807  10114   
codegen-version = "ci"
 7808  10115   
[package.metadata.docs.rs]
 7809  10116   
all-features = true
 7810  10117   
targets = ["x86_64-unknown-linux-gnu"]
 7811  10118   
[dependencies.aws-credential-types]
 7812  10119   
path = "../aws-credential-types"
 7813  10120   
version = "1.2.4"
 7814  10121   
 7815  10122   
[dependencies.aws-runtime]
 7816  10123   
path = "../aws-runtime"
 7817  10124   
version = "1.5.9"
 7818  10125   
 7819  10126   
[dependencies.aws-smithy-async]
 7820  10127   
path = "../aws-smithy-async"
 7821  10128   
version = "1.2.5"
 7822  10129   
 7823  10130   
[dependencies.aws-smithy-http]
 7824  10131   
path = "../aws-smithy-http"
 7825         -
version = "0.62.2"
       10132  +
version = "0.62.3"
 7826  10133   
 7827  10134   
[dependencies.aws-smithy-json]
 7828  10135   
path = "../aws-smithy-json"
 7829  10136   
version = "0.61.4"
 7830  10137   
 7831  10138   
[dependencies.aws-smithy-runtime]
 7832  10139   
path = "../aws-smithy-runtime"
 7833  10140   
features = ["client"]
 7834  10141   
version = "1.8.5"
 7835  10142   
 7836  10143   
[dependencies.aws-smithy-runtime-api]
 7837  10144   
path = "../aws-smithy-runtime-api"
 7838  10145   
features = ["client", "http-02x"]
 7839  10146   
version = "1.8.5"
 7840  10147   
 7841  10148   
[dependencies.aws-smithy-types]
 7842  10149   
path = "../aws-smithy-types"
 7843  10150   
version = "1.3.2"
 7844  10151   
 7845  10152   
[dependencies.aws-types]
 7846  10153   
path = "../aws-types"
 7847  10154   
version = "1.3.8"
 7848  10155   
 7849  10156   
[dependencies.bytes]
 7850  10157   
version = "1.4.0"
 7851  10158   
 7852  10159   
[dependencies.fastrand]
 7853  10160   
version = "2.0.0"
 7854  10161   
 7855  10162   
[dependencies.http]
 7856  10163   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 7857  10164   
index 895dfb3..f2ce34e 100644
 7858         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       10165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 7859  10166   
@@ -1,61 +1,61 @@
 7860  10167   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7861  10168   
[package]
 7862  10169   
name = "aws-sdk-sts"
 7863  10170   
version = "0.0.0-local"
 7864  10171   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7865  10172   
description = "AWS SDK for AWS Security Token Service"
 7866  10173   
edition = "2021"
 7867  10174   
license = "Apache-2.0"
 7868  10175   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7869  10176   
rust-version = "1.86.0"
 7870  10177   
readme = "README.md"
 7871  10178   
[package.metadata.smithy]
 7872  10179   
codegen-version = "ci"
 7873  10180   
[package.metadata.docs.rs]
 7874  10181   
all-features = true
 7875  10182   
targets = ["x86_64-unknown-linux-gnu"]
 7876  10183   
[dependencies.aws-credential-types]
 7877  10184   
path = "../aws-credential-types"
 7878  10185   
version = "1.2.4"
 7879  10186   
 7880  10187   
[dependencies.aws-runtime]
 7881  10188   
path = "../aws-runtime"
 7882  10189   
version = "1.5.9"
 7883  10190   
 7884  10191   
[dependencies.aws-smithy-async]
 7885  10192   
path = "../aws-smithy-async"
 7886  10193   
version = "1.2.5"
 7887  10194   
 7888  10195   
[dependencies.aws-smithy-http]
 7889  10196   
path = "../aws-smithy-http"
 7890         -
version = "0.62.2"
       10197  +
version = "0.62.3"
 7891  10198   
 7892  10199   
[dependencies.aws-smithy-json]
 7893  10200   
path = "../aws-smithy-json"
 7894  10201   
version = "0.61.4"
 7895  10202   
 7896  10203   
[dependencies.aws-smithy-query]
 7897  10204   
path = "../aws-smithy-query"
 7898  10205   
version = "0.60.7"
 7899  10206   
 7900  10207   
[dependencies.aws-smithy-runtime]
 7901  10208   
path = "../aws-smithy-runtime"
 7902  10209   
features = ["client"]
 7903  10210   
version = "1.8.5"
 7904  10211   
 7905  10212   
[dependencies.aws-smithy-runtime-api]
 7906  10213   
path = "../aws-smithy-runtime-api"
 7907  10214   
features = ["client", "http-02x"]
 7908  10215   
version = "1.8.5"
 7909  10216   
 7910  10217   
[dependencies.aws-smithy-types]
 7911  10218   
path = "../aws-smithy-types"
 7912  10219   
version = "1.3.2"
 7913  10220   
 7914  10221   
[dependencies.aws-smithy-xml]
 7915  10222   
path = "../aws-smithy-xml"
 7916  10223   
version = "0.60.10"
 7917  10224   
 7918  10225   
[dependencies.aws-types]
 7919  10226   
path = "../aws-types"
 7920  10227   
version = "1.3.8"
 7921  10228   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 7922  10229   
index d556561..91178b6 100644
 7923         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       10230  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 7924  10231   
@@ -1,61 +1,61 @@
 7925  10232   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7926  10233   
[package]
 7927  10234   
name = "aws-sdk-timestreamquery"
 7928  10235   
version = "0.0.0-local"
 7929  10236   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7930  10237   
description = "AWS SDK for Amazon Timestream Query"
 7931  10238   
edition = "2021"
 7932  10239   
license = "Apache-2.0"
 7933  10240   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7934  10241   
rust-version = "1.86.0"
 7935  10242   
readme = "README.md"
 7936  10243   
[package.metadata.smithy]
 7937  10244   
codegen-version = "ci"
 7938  10245   
[package.metadata.docs.rs]
 7939  10246   
all-features = true
 7940  10247   
targets = ["x86_64-unknown-linux-gnu"]
 7941  10248   
[dependencies.aws-credential-types]
 7942  10249   
path = "../aws-credential-types"
 7943  10250   
version = "1.2.4"
 7944  10251   
 7945  10252   
[dependencies.aws-runtime]
 7946  10253   
path = "../aws-runtime"
 7947  10254   
version = "1.5.9"
 7948  10255   
 7949  10256   
[dependencies.aws-smithy-async]
 7950  10257   
path = "../aws-smithy-async"
 7951  10258   
version = "1.2.5"
 7952  10259   
 7953  10260   
[dependencies.aws-smithy-http]
 7954  10261   
path = "../aws-smithy-http"
 7955         -
version = "0.62.2"
       10262  +
version = "0.62.3"
 7956  10263   
 7957  10264   
[dependencies.aws-smithy-json]
 7958  10265   
path = "../aws-smithy-json"
 7959  10266   
version = "0.61.4"
 7960  10267   
 7961  10268   
[dependencies.aws-smithy-runtime]
 7962  10269   
path = "../aws-smithy-runtime"
 7963  10270   
features = ["client"]
 7964  10271   
version = "1.8.5"
 7965  10272   
 7966  10273   
[dependencies.aws-smithy-runtime-api]
 7967  10274   
path = "../aws-smithy-runtime-api"
 7968  10275   
features = ["client", "http-02x"]
 7969  10276   
version = "1.8.5"
 7970  10277   
 7971  10278   
[dependencies.aws-smithy-types]
 7972  10279   
path = "../aws-smithy-types"
 7973  10280   
version = "1.3.2"
 7974  10281   
 7975  10282   
[dependencies.aws-types]
 7976  10283   
path = "../aws-types"
 7977  10284   
version = "1.3.8"
 7978  10285   
 7979  10286   
[dependencies.bytes]
 7980  10287   
version = "1.4.0"
 7981  10288   
 7982  10289   
[dependencies.fastrand]
 7983  10290   
version = "2.0.0"
 7984  10291   
 7985  10292   
[dependencies.http]
 7986  10293   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 7987  10294   
index 0c56e4c..95731e3 100644
 7988         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       10295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 7989  10296   
@@ -1,61 +1,61 @@
 7990  10297   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7991  10298   
[package]
 7992  10299   
name = "aws-sdk-timestreamwrite"
 7993  10300   
version = "0.0.0-local"
 7994  10301   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7995  10302   
description = "AWS SDK for Amazon Timestream Write"
 7996  10303   
edition = "2021"
 7997  10304   
license = "Apache-2.0"
 7998  10305   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7999  10306   
rust-version = "1.86.0"
 8000  10307   
readme = "README.md"
 8001  10308   
[package.metadata.smithy]
 8002  10309   
codegen-version = "ci"
 8003  10310   
[package.metadata.docs.rs]
 8004  10311   
all-features = true
 8005  10312   
targets = ["x86_64-unknown-linux-gnu"]
 8006  10313   
[dependencies.aws-credential-types]
 8007  10314   
path = "../aws-credential-types"
 8008  10315   
version = "1.2.4"
 8009  10316   
 8010  10317   
[dependencies.aws-runtime]
 8011  10318   
path = "../aws-runtime"
 8012  10319   
version = "1.5.9"
 8013  10320   
 8014  10321   
[dependencies.aws-smithy-async]
 8015  10322   
path = "../aws-smithy-async"
 8016  10323   
version = "1.2.5"
 8017  10324   
 8018  10325   
[dependencies.aws-smithy-http]
 8019  10326   
path = "../aws-smithy-http"
 8020         -
version = "0.62.2"
       10327  +
version = "0.62.3"
 8021  10328   
 8022  10329   
[dependencies.aws-smithy-json]
 8023  10330   
path = "../aws-smithy-json"
 8024  10331   
version = "0.61.4"
 8025  10332   
 8026  10333   
[dependencies.aws-smithy-runtime]
 8027  10334   
path = "../aws-smithy-runtime"
 8028  10335   
features = ["client"]
 8029  10336   
version = "1.8.5"
 8030  10337   
 8031  10338   
[dependencies.aws-smithy-runtime-api]
 8032  10339   
path = "../aws-smithy-runtime-api"
 8033  10340   
features = ["client", "http-02x"]
 8034  10341   
version = "1.8.5"
 8035  10342   
 8036  10343   
[dependencies.aws-smithy-types]
 8037  10344   
path = "../aws-smithy-types"
 8038  10345   
version = "1.3.2"
 8039  10346   
 8040  10347   
[dependencies.aws-types]
 8041  10348   
path = "../aws-types"
 8042  10349   
version = "1.3.8"
 8043  10350   
 8044  10351   
[dependencies.bytes]
 8045  10352   
version = "1.4.0"
 8046  10353   
 8047  10354   
[dependencies.fastrand]
 8048  10355   
version = "2.0.0"
 8049  10356   
 8050  10357   
[dependencies.http]
 8051  10358   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8052  10359   
index 5b35037..9fb220a 100644
 8053         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       10360  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8054  10361   
@@ -1,71 +1,71 @@
 8055  10362   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8056  10363   
[package]
 8057  10364   
name = "aws-sdk-transcribestreaming"
 8058  10365   
version = "0.0.0-local"
 8059  10366   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8060  10367   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 8061  10368   
edition = "2021"
 8062  10369   
license = "Apache-2.0"
 8063  10370   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8064  10371   
rust-version = "1.86.0"
 8065  10372   
readme = "README.md"
 8066  10373   
[package.metadata.smithy]
 8067  10374   
codegen-version = "ci"
 8068  10375   
[package.metadata.docs.rs]
 8069  10376   
all-features = true
 8070  10377   
targets = ["x86_64-unknown-linux-gnu"]
 8071  10378   
[dependencies.aws-credential-types]
 8072  10379   
path = "../aws-credential-types"
 8073  10380   
version = "1.2.4"
 8074  10381   
 8075  10382   
[dependencies.aws-runtime]
 8076  10383   
path = "../aws-runtime"
 8077  10384   
features = ["event-stream"]
 8078  10385   
version = "1.5.9"
 8079  10386   
 8080  10387   
[dependencies.aws-sigv4]
 8081  10388   
path = "../aws-sigv4"
 8082         -
version = "1.3.3"
       10389  +
version = "1.3.4"
 8083  10390   
 8084  10391   
[dependencies.aws-smithy-async]
 8085  10392   
path = "../aws-smithy-async"
 8086  10393   
version = "1.2.5"
 8087  10394   
 8088  10395   
[dependencies.aws-smithy-eventstream]
 8089  10396   
path = "../aws-smithy-eventstream"
 8090  10397   
version = "0.60.10"
 8091  10398   
 8092  10399   
[dependencies.aws-smithy-http]
 8093  10400   
path = "../aws-smithy-http"
 8094  10401   
features = ["event-stream"]
 8095         -
version = "0.62.2"
       10402  +
version = "0.62.3"
 8096  10403   
 8097  10404   
[dependencies.aws-smithy-json]
 8098  10405   
path = "../aws-smithy-json"
 8099  10406   
version = "0.61.4"
 8100  10407   
 8101  10408   
[dependencies.aws-smithy-runtime]
 8102  10409   
path = "../aws-smithy-runtime"
 8103  10410   
features = ["client"]
 8104  10411   
version = "1.8.5"
 8105  10412