AWS SDK

AWS SDK

rev. 628eeeeeed390f5efdbfe607c18848c033debd3e (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json

@@ -1,0 +12,0 @@
    1         -
{
    2         -
    "credentials": {
    3         -
        "access_key_id": "AKIDEXAMPLE",
    4         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
    5         -
    },
    6         -
    "expiration_in_seconds": 3600,
    7         -
    "normalize": true,
    8         -
    "region": "us-east-1",
    9         -
    "service": "service",
   10         -
    "sign_body": false,
   11         -
    "timestamp": "2015-08-30T12:36:00Z"
   12         -
}

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt

@@ -1,0 +4,0 @@
    1         -
AWS4-ECDSA-P256-SHA256
    2         -
20150830T123600Z
    3         -
20150830/service/aws4_request
    4         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt

@@ -1,0 +4,0 @@
    1         -
AWS4-ECDSA-P256-SHA256
    2         -
20150830T123600Z
    3         -
20150830/service/aws4_request
    4         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt

@@ -1,0 +4,0 @@
    1         -
AWS4-ECDSA-P256-SHA256
    2         -
20150830T123600Z
    3         -
20150830/service/aws4_request
    4         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6

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

@@ -0,1 +0,7 @@
           1  +
# AWS SigV4 and SigV4A Signing Test Suite
           2  +
           3  +
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).
           4  +
           5  +
We added the following changes:
           6  +
           7  +
* Migrated old format tests `double-url-encode` and `double-encode-path` not in the new suite as we use these in many tests.

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt

@@ -0,1 +7228,10120 @@
           1  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
    0      2   
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
    1      3   
new file mode 100644
    2      4   
index 0000000..36a1205
    3         -
-- /dev/null
           5  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
    4      6   
@@ -0,0 +1,8 @@
           7  +
GET / HTTP/1.1
           8  +
Host:example.amazonaws.com
           9  +
My-Header1:value2
          10  +
My-Header1:value2
          11  +
My-Header1:value1
          12  +
X-Amz-Date:20150830T123600Z
          13  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
          14  +
    5     15   
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
    6     16   
similarity index 100%
    7     17   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
    8     18   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
    9     19   
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
   10     20   
new file mode 100644
   11     21   
index 0000000..f9f4190
   12         -
-- /dev/null
          22  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
   13     23   
@@ -0,0 +1,8 @@
          24  +
GET
          25  +
/
          26  +
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
          27  +
host:example.amazonaws.com
          28  +
my-header1:value2,value2,value1
          29  +
          30  +
host;my-header1
          31  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
   14     32   
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
   15     33   
new file mode 100644
   16     34   
index 0000000..5d0d87f
   17         -
-- /dev/null
          35  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
   18     36   
@@ -0,0 +1 @@
          37  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
   19     38   
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
   20     39   
new file mode 100644
   21     40   
index 0000000..c1dfcf4
   22         -
-- /dev/null
          41  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
   23     42   
@@ -0,0 +1,6 @@
          43  +
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
          44  +
Host:example.amazonaws.com
          45  +
My-Header1:value2
          46  +
My-Header1:value2
          47  +
My-Header1:value1
          48  +
   24     49   
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
   25     50   
similarity index 53%
   26     51   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
   27     52   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
   28     53   
index 0a3350a..077c1bb 100644
   29         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
          54  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
   30     55   
@@ -1,4 +1,4 @@
   31     56   
AWS4-HMAC-SHA256
   32     57   
20150830T123600Z
   33     58   
20150830/us-east-1/service/aws4_request
   34         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
          59  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
   35     60   
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
   36     61   
similarity index 100%
   37     62   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
   38     63   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
   39     64   
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
   40     65   
similarity index 99%
   41     66   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
   42     67   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
   43     68   
index 45771c7..0468d80 100644
   44     69   
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
   45     70   
similarity index 82%
   46     71   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
   47     72   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
   48     73   
index 721a39f..8cb5476 100644
   49         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
          74  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
   50     75   
@@ -1,9 +1,9 @@
   51     76   
GET
   52     77   
/
   53     78   
   54     79   
host:example.amazonaws.com
   55         -
my-header1:value1,value2,value3
          80  +
my-header1:value1 value2 value3
   56     81   
x-amz-date:20150830T123600Z
   57     82   
   58     83   
host;my-header1;x-amz-date
   59     84   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
   60     85   
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
   61     86   
new file mode 100644
   62     87   
index 0000000..e6ff7a9
   63         -
-- /dev/null
          88  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
   64     89   
@@ -0,0 +1 @@
          90  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
   65     91   
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
   66     92   
new file mode 100644
   67     93   
index 0000000..b5ef6a0
   68         -
-- /dev/null
          94  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
   69     95   
@@ -0,0 +1,8 @@
          96  +
GET / HTTP/1.1
          97  +
Host:example.amazonaws.com
          98  +
My-Header1:value1
          99  +
  value2
         100  +
     value3
         101  +
X-Amz-Date:20150830T123600Z
         102  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         103  +
   70    104   
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
   71    105   
similarity index 53%
   72    106   
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
   73    107   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
   74    108   
index fd43a41..97c7430 100644
   75         -
-- 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
         109  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
   76    110   
@@ -1,4 +1,4 @@
   77    111   
AWS4-HMAC-SHA256
   78    112   
20150830T123600Z
   79    113   
20150830/us-east-1/service/aws4_request
   80         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         114  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
   81    115   
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
   82    116   
new file mode 100644
   83    117   
index 0000000..aac46de
   84         -
-- /dev/null
         118  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
   85    119   
@@ -0,0 +1,8 @@
         120  +
GET
         121  +
/
         122  +
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
         123  +
host:example.amazonaws.com
         124  +
my-header1:value1 value2 value3
         125  +
         126  +
host;my-header1
         127  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
   86    128   
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
   87    129   
new file mode 100644
   88    130   
index 0000000..205732d
   89         -
-- /dev/null
         131  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
   90    132   
@@ -0,0 +1 @@
         133  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
   91    134   
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
   92    135   
new file mode 100644
   93    136   
index 0000000..a891b87
   94         -
-- /dev/null
         137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
   95    138   
@@ -0,0 +1,6 @@
         139  +
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
         140  +
Host:example.amazonaws.com
         141  +
My-Header1:value1
         142  +
  value2
         143  +
     value3
         144  +
   96    145   
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
   97    146   
similarity index 53%
   98    147   
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
   99    148   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
  100    149   
index 90e66b8..ec3fe45 100644
  101         -
-- 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
         150  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
  102    151   
@@ -1,4 +1,4 @@
  103    152   
AWS4-HMAC-SHA256
  104    153   
20150830T123600Z
  105    154   
20150830/us-east-1/service/aws4_request
  106         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         155  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
  107    156   
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
  108    157   
similarity index 75%
  109    158   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
  110    159   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
  111    160   
index 7caa6ac..b5026cd 100644
  112         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
  113    162   
@@ -1,6 +1,5 @@
  114    163   
GET / HTTP/1.1
  115    164   
Host:example.amazonaws.com
  116    165   
My-Header1:value1
  117    166   
  value2
  118    167   
     value3
  119         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  120    168   
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
  121    169   
similarity index 99%
  122    170   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
  123    171   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
  124    172   
index 45771c7..0468d80 100644
  125    173   
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
  126    174   
similarity index 100%
  127    175   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
  128    176   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
  129    177   
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
  130    178   
new file mode 100644
  131    179   
index 0000000..8ef0494
  132         -
-- /dev/null
         180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
  133    181   
@@ -0,0 +1 @@
         182  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
  134    183   
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
  135    184   
new file mode 100644
  136    185   
index 0000000..b786dc9
  137         -
-- /dev/null
         186  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
  138    187   
@@ -0,0 +1,9 @@
         188  +
GET / HTTP/1.1
         189  +
Host:example.amazonaws.com
         190  +
My-Header1:value4
         191  +
My-Header1:value1
         192  +
My-Header1:value3
         193  +
My-Header1:value2
         194  +
X-Amz-Date:20150830T123600Z
         195  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         196  +
  139    197   
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
  140    198   
similarity index 100%
  141    199   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
  142    200   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
  143    201   
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
  144    202   
new file mode 100644
  145    203   
index 0000000..a211cc5
  146         -
-- /dev/null
         204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
  147    205   
@@ -0,0 +1,8 @@
         206  +
GET
         207  +
/
         208  +
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
         209  +
host:example.amazonaws.com
         210  +
my-header1:value4,value1,value3,value2
         211  +
         212  +
host;my-header1
         213  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  148    214   
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
  149    215   
new file mode 100644
  150    216   
index 0000000..417b0fa
  151         -
-- /dev/null
         217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
  152    218   
@@ -0,0 +1 @@
         219  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
  153    220   
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
  154    221   
new file mode 100644
  155    222   
index 0000000..b615e5d
  156         -
-- /dev/null
         223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
  157    224   
@@ -0,0 +1,7 @@
         225  +
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
         226  +
Host:example.amazonaws.com
         227  +
My-Header1:value4
         228  +
My-Header1:value1
         229  +
My-Header1:value3
         230  +
My-Header1:value2
         231  +
  158    232   
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
  159    233   
similarity index 53%
  160    234   
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
  161    235   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
  162    236   
index f7e615e..dcaaa1b 100644
  163         -
-- 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
         237  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
  164    238   
@@ -1,4 +1,4 @@
  165    239   
AWS4-HMAC-SHA256
  166    240   
20150830T123600Z
  167    241   
20150830/us-east-1/service/aws4_request
  168         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         242  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
  169    243   
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
  170    244   
similarity index 100%
  171    245   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
  172    246   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
  173    247   
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
  174    248   
similarity index 99%
  175    249   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
  176    250   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
  177    251   
index 45771c7..0468d80 100644
  178    252   
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
  179    253   
similarity index 100%
  180    254   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
  181    255   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
  182    256   
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
  183    257   
new file mode 100644
  184    258   
index 0000000..36081a9
  185         -
-- /dev/null
         259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
  186    260   
@@ -0,0 +1 @@
         261  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
  187    262   
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
  188    263   
new file mode 100644
  189    264   
index 0000000..6331d16
  190         -
-- /dev/null
         265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
  191    266   
@@ -0,0 +1,7 @@
         267  +
GET / HTTP/1.1
         268  +
Host:example.amazonaws.com
         269  +
My-Header1: value1
         270  +
My-Header2: "a   b   c"
         271  +
X-Amz-Date:20150830T123600Z
         272  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         273  +
  192    274   
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
  193    275   
similarity index 100%
  194    276   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
  195    277   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
  196    278   
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
  197    279   
new file mode 100644
  198    280   
index 0000000..125c1f9
  199         -
-- /dev/null
         281  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
  200    282   
@@ -0,0 +1,9 @@
         283  +
GET
         284  +
/
         285  +
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
         286  +
host:example.amazonaws.com
         287  +
my-header1:value1
         288  +
my-header2:"a b c"
         289  +
         290  +
host;my-header1;my-header2
         291  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  201    292   
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
  202    293   
new file mode 100644
  203    294   
index 0000000..17007a8
  204         -
-- /dev/null
         295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
  205    296   
@@ -0,0 +1 @@
         297  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
  206    298   
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
  207    299   
new file mode 100644
  208    300   
index 0000000..e519fd9
  209         -
-- /dev/null
         301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
  210    302   
@@ -0,0 +1,5 @@
         303  +
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
         304  +
Host:example.amazonaws.com
         305  +
My-Header1: value1
         306  +
My-Header2: "a   b   c"
         307  +
  211    308   
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
  212    309   
new file mode 100644
  213    310   
index 0000000..6b4b781
  214         -
-- /dev/null
         311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
  215    312   
@@ -0,0 +1,4 @@
         313  +
AWS4-HMAC-SHA256
         314  +
20150830T123600Z
         315  +
20150830/us-east-1/service/aws4_request
         316  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
  216    317   
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
  217    318   
similarity index 100%
  218    319   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
  219    320   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
  220    321   
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
  221    322   
new file mode 100644
  222    323   
index 0000000..0468d80
  223         -
-- /dev/null
         324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
  224    325   
@@ -0,0 +1,12 @@
         326  +
{
         327  +
    "credentials": {
         328  +
        "access_key_id": "AKIDEXAMPLE",
         329  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         330  +
    },
         331  +
    "expiration_in_seconds": 3600,
         332  +
    "normalize": true,
         333  +
    "region": "us-east-1",
         334  +
    "service": "service",
         335  +
    "sign_body": false,
         336  +
    "timestamp": "2015-08-30T12:36:00Z"
         337  +
}
              \
 No newline at end of file
  225    338   
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
  226    339   
similarity index 100%
  227    340   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
  228    341   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
  229    342   
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
  230    343   
new file mode 100644
  231    344   
index 0000000..87f295f
  232         -
-- /dev/null
         345  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
  233    346   
@@ -0,0 +1 @@
         347  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  234    348   
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
  235    349   
new file mode 100644
  236    350   
index 0000000..0de8327
  237         -
-- /dev/null
         351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
  238    352   
@@ -0,0 +1,5 @@
         353  +
GET /example/.. HTTP/1.1
         354  +
Host:example.amazonaws.com
         355  +
X-Amz-Date:20150830T123600Z
         356  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         357  +
  239    358   
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
  240    359   
similarity index 100%
  241    360   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
  242    361   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
  243    362   
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
  244    363   
new file mode 100644
  245    364   
index 0000000..fb2420d
  246         -
-- /dev/null
         365  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
  247    366   
@@ -0,0 +1,7 @@
         367  +
GET
         368  +
/
         369  +
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
         370  +
host:example.amazonaws.com
         371  +
         372  +
host
         373  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  248    374   
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
  249    375   
new file mode 100644
  250    376   
index 0000000..da5c905
  251         -
-- /dev/null
         377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
  252    378   
@@ -0,0 +1 @@
         379  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
  253    380   
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
  254    381   
new file mode 100644
  255    382   
index 0000000..4329c98
  256         -
-- /dev/null
         383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
  257    384   
@@ -0,0 +1,3 @@
         385  +
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
         386  +
Host:example.amazonaws.com
         387  +
  258    388   
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
  259    389   
new file mode 100644
  260    390   
index 0000000..d837e67
  261         -
-- /dev/null
         391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
  262    392   
@@ -0,0 +1,4 @@
         393  +
AWS4-HMAC-SHA256
         394  +
20150830T123600Z
         395  +
20150830/us-east-1/service/aws4_request
         396  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
  263    397   
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
  264    398   
similarity index 100%
  265    399   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
  266    400   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
  267    401   
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
  268    402   
new file mode 100644
  269    403   
index 0000000..0468d80
  270         -
-- /dev/null
         404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
  271    405   
@@ -0,0 +1,12 @@
         406  +
{
         407  +
    "credentials": {
         408  +
        "access_key_id": "AKIDEXAMPLE",
         409  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         410  +
    },
         411  +
    "expiration_in_seconds": 3600,
         412  +
    "normalize": true,
         413  +
    "region": "us-east-1",
         414  +
    "service": "service",
         415  +
    "sign_body": false,
         416  +
    "timestamp": "2015-08-30T12:36:00Z"
         417  +
}
              \
 No newline at end of file
  272    418   
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
  273    419   
similarity index 100%
  274    420   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
  275    421   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
  276    422   
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
  277    423   
new file mode 100644
  278    424   
index 0000000..87f295f
  279         -
-- /dev/null
         425  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
  280    426   
@@ -0,0 +1 @@
         427  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  281    428   
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
  282    429   
new file mode 100644
  283    430   
index 0000000..f9b3815
  284         -
-- /dev/null
         431  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
  285    432   
@@ -0,0 +1,5 @@
         433  +
GET /example1/example2/../.. HTTP/1.1
         434  +
Host:example.amazonaws.com
         435  +
X-Amz-Date:20150830T123600Z
         436  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         437  +
  286    438   
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
  287    439   
similarity index 100%
  288    440   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
  289    441   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
  290    442   
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
  291    443   
new file mode 100644
  292    444   
index 0000000..fb2420d
  293         -
-- /dev/null
         445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
  294    446   
@@ -0,0 +1,7 @@
         447  +
GET
         448  +
/
         449  +
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
         450  +
host:example.amazonaws.com
         451  +
         452  +
host
         453  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  295    454   
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
  296    455   
new file mode 100644
  297    456   
index 0000000..da5c905
  298         -
-- /dev/null
         457  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
  299    458   
@@ -0,0 +1 @@
         459  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
  300    460   
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
  301    461   
new file mode 100644
  302    462   
index 0000000..b2988b7
  303         -
-- /dev/null
         463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
  304    464   
@@ -0,0 +1,3 @@
         465  +
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
         466  +
Host:example.amazonaws.com
         467  +
  305    468   
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
  306    469   
new file mode 100644
  307    470   
index 0000000..d837e67
  308         -
-- /dev/null
         471  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
  309    472   
@@ -0,0 +1,4 @@
         473  +
AWS4-HMAC-SHA256
         474  +
20150830T123600Z
         475  +
20150830/us-east-1/service/aws4_request
         476  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
  310    477   
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
  311    478   
similarity index 100%
  312    479   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
  313    480   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
  314    481   
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
  315    482   
similarity index 99%
  316    483   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
  317    484   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
  318    485   
index afe367b..7bee5c7 100644
  319    486   
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
  320    487   
similarity index 82%
  321    488   
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
  322    489   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
  323    490   
index 36c3cdf..6919c44 100644
  324         -
-- 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
         491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
  325    492   
@@ -1,8 +1,8 @@
  326    493   
GET
  327         -
/
  328         -
Param1=Value1&Param1=value2
         494  +
/example1/example2/../..
         495  +
  329    496   
host:example.amazonaws.com
  330    497   
x-amz-date:20150830T123600Z
  331    498   
  332    499   
host;x-amz-date
  333    500   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  334    501   
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
  335    502   
new file mode 100644
  336    503   
index 0000000..4092d83
  337         -
-- /dev/null
         504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
  338    505   
@@ -0,0 +1 @@
         506  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
  339    507   
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
  340    508   
new file mode 100644
  341    509   
index 0000000..e731b35
  342         -
-- /dev/null
         510  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
  343    511   
@@ -0,0 +1,5 @@
         512  +
GET /example1/example2/../.. HTTP/1.1
         513  +
Host:example.amazonaws.com
         514  +
X-Amz-Date:20150830T123600Z
         515  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
         516  +
  344    517   
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
  345    518   
new file mode 100644
  346    519   
index 0000000..4f45752
  347         -
-- /dev/null
         520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
  348    521   
@@ -0,0 +1,4 @@
         522  +
AWS4-HMAC-SHA256
         523  +
20150830T123600Z
         524  +
20150830/us-east-1/service/aws4_request
         525  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
  349    526   
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
  350    527   
new file mode 100644
  351    528   
index 0000000..e1fb07d
  352         -
-- /dev/null
         529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
  353    530   
@@ -0,0 +1,7 @@
         531  +
GET
         532  +
/example1/example2/../..
         533  +
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
         534  +
host:example.amazonaws.com
         535  +
         536  +
host
         537  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  354    538   
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
  355    539   
new file mode 100644
  356    540   
index 0000000..8ac31d7
  357         -
-- /dev/null
         541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
  358    542   
@@ -0,0 +1 @@
         543  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
  359    544   
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
  360    545   
new file mode 100644
  361    546   
index 0000000..ac074f9
  362         -
-- /dev/null
         547  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
  363    548   
@@ -0,0 +1,3 @@
         549  +
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
         550  +
Host:example.amazonaws.com
         551  +
  364    552   
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
  365    553   
new file mode 100644
  366    554   
index 0000000..8dcb6ff
  367         -
-- /dev/null
         555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
  368    556   
@@ -0,0 +1,4 @@
         557  +
AWS4-HMAC-SHA256
         558  +
20150830T123600Z
         559  +
20150830/us-east-1/service/aws4_request
         560  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
  369    561   
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
  370    562   
similarity index 100%
  371    563   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
  372    564   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
  373    565   
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
  374    566   
similarity index 99%
  375    567   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
  376    568   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
  377    569   
index afe367b..7bee5c7 100644
  378    570   
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
  379    571   
similarity index 82%
  380    572   
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
  381    573   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
  382    574   
index 26898eb..f640bc2 100644
  383         -
-- 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
         575  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
  384    576   
@@ -1,8 +1,8 @@
  385    577   
GET
  386         -
/
  387         -
Param1=value1&Param1=value2
         578  +
/example/..
         579  +
  388    580   
host:example.amazonaws.com
  389    581   
x-amz-date:20150830T123600Z
  390    582   
  391    583   
host;x-amz-date
  392    584   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  393    585   
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
  394    586   
new file mode 100644
  395    587   
index 0000000..d957303
  396         -
-- /dev/null
         588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
  397    589   
@@ -0,0 +1 @@
         590  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
  398    591   
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
  399    592   
new file mode 100644
  400    593   
index 0000000..4f42ffc
  401         -
-- /dev/null
         594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
  402    595   
@@ -0,0 +1,5 @@
         596  +
GET /example/.. HTTP/1.1
         597  +
Host:example.amazonaws.com
         598  +
X-Amz-Date:20150830T123600Z
         599  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
         600  +
  403    601   
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
  404    602   
new file mode 100644
  405    603   
index 0000000..ca54bda
  406         -
-- /dev/null
         604  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
  407    605   
@@ -0,0 +1,4 @@
         606  +
AWS4-HMAC-SHA256
         607  +
20150830T123600Z
         608  +
20150830/us-east-1/service/aws4_request
         609  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
  408    610   
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
  409    611   
new file mode 100644
  410    612   
index 0000000..dc80036
  411         -
-- /dev/null
         613  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
  412    614   
@@ -0,0 +1,7 @@
         615  +
GET
         616  +
/example/..
         617  +
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
         618  +
host:example.amazonaws.com
         619  +
         620  +
host
         621  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  413    622   
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
  414    623   
new file mode 100644
  415    624   
index 0000000..dfa0437
  416         -
-- /dev/null
         625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
  417    626   
@@ -0,0 +1 @@
         627  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
  418    628   
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
  419    629   
new file mode 100644
  420    630   
index 0000000..98367b1
  421         -
-- /dev/null
         631  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
  422    632   
@@ -0,0 +1,3 @@
         633  +
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
         634  +
Host:example.amazonaws.com
         635  +
  423    636   
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
  424    637   
new file mode 100644
  425    638   
index 0000000..f65dd66
  426         -
-- /dev/null
         639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
  427    640   
@@ -0,0 +1,4 @@
         641  +
AWS4-HMAC-SHA256
         642  +
20150830T123600Z
         643  +
20150830/us-east-1/service/aws4_request
         644  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
  428    645   
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
  429    646   
similarity index 100%
  430    647   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
  431    648   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
  432    649   
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
  433    650   
new file mode 100644
  434    651   
index 0000000..0468d80
  435         -
-- /dev/null
         652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
  436    653   
@@ -0,0 +1,12 @@
         654  +
{
         655  +
    "credentials": {
         656  +
        "access_key_id": "AKIDEXAMPLE",
         657  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         658  +
    },
         659  +
    "expiration_in_seconds": 3600,
         660  +
    "normalize": true,
         661  +
    "region": "us-east-1",
         662  +
    "service": "service",
         663  +
    "sign_body": false,
         664  +
    "timestamp": "2015-08-30T12:36:00Z"
         665  +
}
              \
 No newline at end of file
  437    666   
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
  438    667   
similarity index 100%
  439    668   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
  440    669   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
  441    670   
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
  442    671   
new file mode 100644
  443    672   
index 0000000..87f295f
  444         -
-- /dev/null
         673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
  445    674   
@@ -0,0 +1 @@
         675  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  446    676   
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
  447    677   
new file mode 100644
  448    678   
index 0000000..99c8eeb
  449         -
-- /dev/null
         679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
  450    680   
@@ -0,0 +1,5 @@
         681  +
GET /./ HTTP/1.1
         682  +
Host:example.amazonaws.com
         683  +
X-Amz-Date:20150830T123600Z
         684  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         685  +
  451    686   
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
  452    687   
similarity index 100%
  453    688   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
  454    689   
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
  455    690   
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
  456    691   
new file mode 100644
  457    692   
index 0000000..fb2420d
  458         -
-- /dev/null
         693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
  459    694   
@@ -0,0 +1,7 @@
         695  +
GET
         696  +
/
         697  +
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
         698  +
host:example.amazonaws.com
         699  +
         700  +
host
         701  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  460    702   
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
  461    703   
new file mode 100644
  462    704   
index 0000000..da5c905
  463         -
-- /dev/null
         705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
  464    706   
@@ -0,0 +1 @@
         707  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
  465    708   
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
  466    709   
new file mode 100644
  467    710   
index 0000000..2e47f69
  468         -
-- /dev/null
         711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
  469    712   
@@ -0,0 +1,3 @@
         713  +
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
         714  +
Host:example.amazonaws.com
         715  +
  470    716   
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
  471    717   
new file mode 100644
  472    718   
index 0000000..d837e67
  473         -
-- /dev/null
         719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
  474    720   
@@ -0,0 +1,4 @@
         721  +
AWS4-HMAC-SHA256
         722  +
20150830T123600Z
         723  +
20150830/us-east-1/service/aws4_request
         724  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
  475    725   
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
  476    726   
similarity index 100%
  477    727   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
  478    728   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
  479    729   
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
  480    730   
similarity index 99%
  481    731   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
  482    732   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
  483    733   
index afe367b..7bee5c7 100644
  484    734   
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
  485    735   
new file mode 100644
  486    736   
index 0000000..5159048
  487         -
-- /dev/null
         737  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
  488    738   
@@ -0,0 +1,8 @@
         739  +
GET
         740  +
/./
         741  +
         742  +
host:example.amazonaws.com
         743  +
x-amz-date:20150830T123600Z
         744  +
         745  +
host;x-amz-date
         746  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  489    747   
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
  490    748   
new file mode 100644
  491    749   
index 0000000..b49ff0e
  492         -
-- /dev/null
         750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
  493    751   
@@ -0,0 +1 @@
         752  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
  494    753   
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
  495    754   
new file mode 100644
  496    755   
index 0000000..aeb1ffa
  497         -
-- /dev/null
         756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
  498    757   
@@ -0,0 +1,5 @@
         758  +
GET /./ HTTP/1.1
         759  +
Host:example.amazonaws.com
         760  +
X-Amz-Date:20150830T123600Z
         761  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
         762  +
  499    763   
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
  500    764   
new file mode 100644
  501    765   
index 0000000..b7d8caf
  502         -
-- /dev/null
         766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
  503    767   
@@ -0,0 +1,4 @@
         768  +
AWS4-HMAC-SHA256
         769  +
20150830T123600Z
         770  +
20150830/us-east-1/service/aws4_request
         771  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
  504    772   
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
  505    773   
new file mode 100644
  506    774   
index 0000000..d4e029e
  507         -
-- /dev/null
         775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
  508    776   
@@ -0,0 +1,7 @@
         777  +
GET
         778  +
/./
         779  +
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
         780  +
host:example.amazonaws.com
         781  +
         782  +
host
         783  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  509    784   
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
  510    785   
new file mode 100644
  511    786   
index 0000000..fe8f4cc
  512         -
-- /dev/null
         787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
  513    788   
@@ -0,0 +1 @@
         789  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
  514    790   
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
  515    791   
new file mode 100644
  516    792   
index 0000000..dcc4fc4
  517         -
-- /dev/null
         793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
  518    794   
@@ -0,0 +1,3 @@
         795  +
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
         796  +
Host:example.amazonaws.com
         797  +
  519    798   
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
  520    799   
new file mode 100644
  521    800   
index 0000000..5fb3ada
  522         -
-- /dev/null
         801  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
  523    802   
@@ -0,0 +1,4 @@
         803  +
AWS4-HMAC-SHA256
         804  +
20150830T123600Z
         805  +
20150830/us-east-1/service/aws4_request
         806  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
  524    807   
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
  525    808   
similarity index 100%
  526    809   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
  527    810   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
  528    811   
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
  529    812   
new file mode 100644
  530    813   
index 0000000..0468d80
  531         -
-- /dev/null
         814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
  532    815   
@@ -0,0 +1,12 @@
         816  +
{
         817  +
    "credentials": {
         818  +
        "access_key_id": "AKIDEXAMPLE",
         819  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         820  +
    },
         821  +
    "expiration_in_seconds": 3600,
         822  +
    "normalize": true,
         823  +
    "region": "us-east-1",
         824  +
    "service": "service",
         825  +
    "sign_body": false,
         826  +
    "timestamp": "2015-08-30T12:36:00Z"
         827  +
}
              \
 No newline at end of file
  533    828   
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
  534    829   
similarity index 100%
  535    830   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
  536    831   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
  537    832   
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
  538    833   
new file mode 100644
  539    834   
index 0000000..87f295f
  540         -
-- /dev/null
         835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
  541    836   
@@ -0,0 +1 @@
         837  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  542    838   
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
  543    839   
new file mode 100644
  544    840   
index 0000000..b91087b
  545         -
-- /dev/null
         841  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
  546    842   
@@ -0,0 +1,5 @@
         843  +
GET // HTTP/1.1
         844  +
Host:example.amazonaws.com
         845  +
X-Amz-Date:20150830T123600Z
         846  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         847  +
  547    848   
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
  548    849   
similarity index 100%
  549    850   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
  550    851   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
  551    852   
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
  552    853   
new file mode 100644
  553    854   
index 0000000..fb2420d
  554         -
-- /dev/null
         855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
  555    856   
@@ -0,0 +1,7 @@
         857  +
GET
         858  +
/
         859  +
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
         860  +
host:example.amazonaws.com
         861  +
         862  +
host
         863  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  556    864   
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
  557    865   
new file mode 100644
  558    866   
index 0000000..da5c905
  559         -
-- /dev/null
         867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
  560    868   
@@ -0,0 +1 @@
         869  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
  561    870   
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
  562    871   
new file mode 100644
  563    872   
index 0000000..0290ba4
  564         -
-- /dev/null
         873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
  565    874   
@@ -0,0 +1,3 @@
         875  +
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
         876  +
Host:example.amazonaws.com
         877  +
  566    878   
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
  567    879   
new file mode 100644
  568    880   
index 0000000..d837e67
  569         -
-- /dev/null
         881  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
  570    882   
@@ -0,0 +1,4 @@
         883  +
AWS4-HMAC-SHA256
         884  +
20150830T123600Z
         885  +
20150830/us-east-1/service/aws4_request
         886  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
  571    887   
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
  572    888   
similarity index 100%
  573    889   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
  574    890   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
  575    891   
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
  576    892   
new file mode 100644
  577    893   
index 0000000..0468d80
  578         -
-- /dev/null
         894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
  579    895   
@@ -0,0 +1,12 @@
         896  +
{
         897  +
    "credentials": {
         898  +
        "access_key_id": "AKIDEXAMPLE",
         899  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         900  +
    },
         901  +
    "expiration_in_seconds": 3600,
         902  +
    "normalize": true,
         903  +
    "region": "us-east-1",
         904  +
    "service": "service",
         905  +
    "sign_body": false,
         906  +
    "timestamp": "2015-08-30T12:36:00Z"
         907  +
}
              \
 No newline at end of file
  580    908   
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
  581    909   
similarity index 100%
  582    910   
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
  583    911   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
  584    912   
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
  585    913   
new file mode 100644
  586    914   
index 0000000..8f892bf
  587         -
-- /dev/null
         915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
  588    916   
@@ -0,0 +1 @@
         917  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
  589    918   
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
  590    919   
new file mode 100644
  591    920   
index 0000000..2a1895c
  592         -
-- /dev/null
         921  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
  593    922   
@@ -0,0 +1,5 @@
         923  +
GET /./example HTTP/1.1
         924  +
Host:example.amazonaws.com
         925  +
X-Amz-Date:20150830T123600Z
         926  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
         927  +
  594    928   
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
  595    929   
similarity index 100%
  596    930   
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
  597    931   
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
  598    932   
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
  599    933   
new file mode 100644
  600    934   
index 0000000..99dfc2a
  601         -
-- /dev/null
         935  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
  602    936   
@@ -0,0 +1,7 @@
         937  +
GET
         938  +
/example
         939  +
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
         940  +
host:example.amazonaws.com
         941  +
         942  +
host
         943  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  603    944   
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
  604    945   
new file mode 100644
  605    946   
index 0000000..fcd7a17
  606         -
-- /dev/null
         947  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
  607    948   
@@ -0,0 +1 @@
         949  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
  608    950   
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
  609    951   
new file mode 100644
  610    952   
index 0000000..f671de2
  611         -
-- /dev/null
         953  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
  612    954   
@@ -0,0 +1,3 @@
         955  +
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
         956  +
Host:example.amazonaws.com
         957  +
  613    958   
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
  614    959   
new file mode 100644
  615    960   
index 0000000..f8456dc
  616         -
-- /dev/null
         961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
  617    962   
@@ -0,0 +1,4 @@
         963  +
AWS4-HMAC-SHA256
         964  +
20150830T123600Z
         965  +
20150830/us-east-1/service/aws4_request
         966  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
  618    967   
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
  619    968   
similarity index 100%
  620    969   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
  621    970   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
  622    971   
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
  623    972   
similarity index 99%
  624    973   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
  625    974   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
  626    975   
index afe367b..7bee5c7 100644
  627    976   
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
  628    977   
new file mode 100644
  629    978   
index 0000000..36698c7
  630         -
-- /dev/null
         979  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
  631    980   
@@ -0,0 +1,8 @@
         981  +
GET
         982  +
/./example
         983  +
         984  +
host:example.amazonaws.com
         985  +
x-amz-date:20150830T123600Z
         986  +
         987  +
host;x-amz-date
         988  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  632    989   
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
  633    990   
new file mode 100644
  634    991   
index 0000000..4a4b8f2
  635         -
-- /dev/null
         992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
  636    993   
@@ -0,0 +1 @@
         994  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
  637    995   
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
  638    996   
new file mode 100644
  639    997   
index 0000000..d462bcd
  640         -
-- /dev/null
         998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
  641    999   
@@ -0,0 +1,5 @@
        1000  +
GET /./example HTTP/1.1
        1001  +
Host:example.amazonaws.com
        1002  +
X-Amz-Date:20150830T123600Z
        1003  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1004  +
  642   1005   
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
  643   1006   
new file mode 100644
  644   1007   
index 0000000..8be78c9
  645         -
-- /dev/null
        1008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
  646   1009   
@@ -0,0 +1,4 @@
        1010  +
AWS4-HMAC-SHA256
        1011  +
20150830T123600Z
        1012  +
20150830/us-east-1/service/aws4_request
        1013  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
  647   1014   
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
  648   1015   
new file mode 100644
  649   1016   
index 0000000..fe1103c
  650         -
-- /dev/null
        1017  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
  651   1018   
@@ -0,0 +1,7 @@
        1019  +
GET
        1020  +
/./example
        1021  +
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
        1022  +
host:example.amazonaws.com
        1023  +
        1024  +
host
        1025  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  652   1026   
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
  653   1027   
new file mode 100644
  654   1028   
index 0000000..ce80762
  655         -
-- /dev/null
        1029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
  656   1030   
@@ -0,0 +1 @@
        1031  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
  657   1032   
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
  658   1033   
new file mode 100644
  659   1034   
index 0000000..30841a6
  660         -
-- /dev/null
        1035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
  661   1036   
@@ -0,0 +1,3 @@
        1037  +
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
        1038  +
Host:example.amazonaws.com
        1039  +
  662   1040   
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
  663   1041   
new file mode 100644
  664   1042   
index 0000000..5c66509
  665         -
-- /dev/null
        1043  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
  666   1044   
@@ -0,0 +1,4 @@
        1045  +
AWS4-HMAC-SHA256
        1046  +
20150830T123600Z
        1047  +
20150830/us-east-1/service/aws4_request
        1048  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
  667   1049   
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
  668   1050   
similarity index 100%
  669   1051   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
  670   1052   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
  671   1053   
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
  672   1054   
new file mode 100644
  673   1055   
index 0000000..7bee5c7
  674         -
-- /dev/null
        1056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
  675   1057   
@@ -0,0 +1,12 @@
        1058  +
{
        1059  +
    "credentials": {
        1060  +
        "access_key_id": "AKIDEXAMPLE",
        1061  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1062  +
    },
        1063  +
    "expiration_in_seconds": 3600,
        1064  +
    "normalize": false,
        1065  +
    "region": "us-east-1",
        1066  +
    "service": "service",
        1067  +
    "sign_body": false,
        1068  +
    "timestamp": "2015-08-30T12:36:00Z"
        1069  +
}
              \
 No newline at end of file
  676   1070   
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
  677   1071   
new file mode 100644
  678   1072   
index 0000000..5860c8a
  679         -
-- /dev/null
        1073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
  680   1074   
@@ -0,0 +1,8 @@
        1075  +
GET
        1076  +
//
        1077  +
        1078  +
host:example.amazonaws.com
        1079  +
x-amz-date:20150830T123600Z
        1080  +
        1081  +
host;x-amz-date
        1082  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  681   1083   
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
  682   1084   
new file mode 100644
  683   1085   
index 0000000..8310471
  684         -
-- /dev/null
        1086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
  685   1087   
@@ -0,0 +1 @@
        1088  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
  686   1089   
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
  687   1090   
new file mode 100644
  688   1091   
index 0000000..2a7afef
  689         -
-- /dev/null
        1092  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
  690   1093   
@@ -0,0 +1,5 @@
        1094  +
GET // HTTP/1.1
        1095  +
Host:example.amazonaws.com
        1096  +
X-Amz-Date:20150830T123600Z
        1097  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1098  +
  691   1099   
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
  692   1100   
new file mode 100644
  693   1101   
index 0000000..06059dd
  694         -
-- /dev/null
        1102  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
  695   1103   
@@ -0,0 +1,4 @@
        1104  +
AWS4-HMAC-SHA256
        1105  +
20150830T123600Z
        1106  +
20150830/us-east-1/service/aws4_request
        1107  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
  696   1108   
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
  697   1109   
new file mode 100644
  698   1110   
index 0000000..6d63aef
  699         -
-- /dev/null
        1111  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
  700   1112   
@@ -0,0 +1,7 @@
        1113  +
GET
        1114  +
//
        1115  +
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
        1116  +
host:example.amazonaws.com
        1117  +
        1118  +
host
        1119  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  701   1120   
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
  702   1121   
new file mode 100644
  703   1122   
index 0000000..e5b7b6c
  704         -
-- /dev/null
        1123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
  705   1124   
@@ -0,0 +1 @@
        1125  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
  706   1126   
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
  707   1127   
new file mode 100644
  708   1128   
index 0000000..46fe3fd
  709         -
-- /dev/null
        1129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
  710   1130   
@@ -0,0 +1,3 @@
        1131  +
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
        1132  +
Host:example.amazonaws.com
        1133  +
  711   1134   
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
  712   1135   
new file mode 100644
  713   1136   
index 0000000..ea79940
  714         -
-- /dev/null
        1137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
  715   1138   
@@ -0,0 +1,4 @@
        1139  +
AWS4-HMAC-SHA256
        1140  +
20150830T123600Z
        1141  +
20150830/us-east-1/service/aws4_request
        1142  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
  716   1143   
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
  717   1144   
similarity index 100%
  718   1145   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
  719   1146   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
  720   1147   
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
  721   1148   
new file mode 100644
  722   1149   
index 0000000..0468d80
  723         -
-- /dev/null
        1150  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
  724   1151   
@@ -0,0 +1,12 @@
        1152  +
{
        1153  +
    "credentials": {
        1154  +
        "access_key_id": "AKIDEXAMPLE",
        1155  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1156  +
    },
        1157  +
    "expiration_in_seconds": 3600,
        1158  +
    "normalize": true,
        1159  +
    "region": "us-east-1",
        1160  +
    "service": "service",
        1161  +
    "sign_body": false,
        1162  +
    "timestamp": "2015-08-30T12:36:00Z"
        1163  +
}
              \
 No newline at end of file
  725   1164   
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
  726   1165   
similarity index 100%
  727   1166   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
  728   1167   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
  729   1168   
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
  730   1169   
new file mode 100644
  731   1170   
index 0000000..71c7bac
  732         -
-- /dev/null
        1171  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
  733   1172   
@@ -0,0 +1 @@
        1173  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
  734   1174   
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
  735   1175   
new file mode 100644
  736   1176   
index 0000000..0add1f1
  737         -
-- /dev/null
        1177  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
  738   1178   
@@ -0,0 +1,5 @@
        1179  +
GET //example// HTTP/1.1
        1180  +
Host:example.amazonaws.com
        1181  +
X-Amz-Date:20150830T123600Z
        1182  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1183  +
  739   1184   
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
  740   1185   
similarity index 100%
  741   1186   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
  742   1187   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
  743   1188   
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
  744   1189   
new file mode 100644
  745   1190   
index 0000000..ce72510
  746         -
-- /dev/null
        1191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
  747   1192   
@@ -0,0 +1,7 @@
        1193  +
GET
        1194  +
/example/
        1195  +
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
        1196  +
host:example.amazonaws.com
        1197  +
        1198  +
host
        1199  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  748   1200   
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
  749   1201   
new file mode 100644
  750   1202   
index 0000000..265f387
  751         -
-- /dev/null
        1203  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
  752   1204   
@@ -0,0 +1 @@
        1205  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
  753   1206   
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
  754   1207   
new file mode 100644
  755   1208   
index 0000000..e1fcb2e
  756         -
-- /dev/null
        1209  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
  757   1210   
@@ -0,0 +1,3 @@
        1211  +
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
        1212  +
Host:example.amazonaws.com
        1213  +
  758   1214   
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
  759   1215   
new file mode 100644
  760   1216   
index 0000000..a14de61
  761         -
-- /dev/null
        1217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
  762   1218   
@@ -0,0 +1,4 @@
        1219  +
AWS4-HMAC-SHA256
        1220  +
20150830T123600Z
        1221  +
20150830/us-east-1/service/aws4_request
        1222  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
  763   1223   
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
  764   1224   
similarity index 100%
  765   1225   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
  766   1226   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
  767   1227   
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
  768   1228   
new file mode 100644
  769   1229   
index 0000000..7bee5c7
  770         -
-- /dev/null
        1230  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
  771   1231   
@@ -0,0 +1,12 @@
        1232  +
{
        1233  +
    "credentials": {
        1234  +
        "access_key_id": "AKIDEXAMPLE",
        1235  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1236  +
    },
        1237  +
    "expiration_in_seconds": 3600,
        1238  +
    "normalize": false,
        1239  +
    "region": "us-east-1",
        1240  +
    "service": "service",
        1241  +
    "sign_body": false,
        1242  +
    "timestamp": "2015-08-30T12:36:00Z"
        1243  +
}
              \
 No newline at end of file
  772   1244   
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
  773   1245   
new file mode 100644
  774   1246   
index 0000000..dfffaaf
  775         -
-- /dev/null
        1247  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
  776   1248   
@@ -0,0 +1,8 @@
        1249  +
GET
        1250  +
//example//
        1251  +
        1252  +
host:example.amazonaws.com
        1253  +
x-amz-date:20150830T123600Z
        1254  +
        1255  +
host;x-amz-date
        1256  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  777   1257   
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
  778   1258   
new file mode 100644
  779   1259   
index 0000000..edbcc0d
  780         -
-- /dev/null
        1260  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
  781   1261   
@@ -0,0 +1 @@
        1262  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
  782   1263   
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
  783   1264   
new file mode 100644
  784   1265   
index 0000000..4cc12dd
  785         -
-- /dev/null
        1266  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
  786   1267   
@@ -0,0 +1,5 @@
        1268  +
GET //example// HTTP/1.1
        1269  +
Host:example.amazonaws.com
        1270  +
X-Amz-Date:20150830T123600Z
        1271  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1272  +
  787   1273   
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
  788   1274   
new file mode 100644
  789   1275   
index 0000000..3eba390
  790         -
-- /dev/null
        1276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
  791   1277   
@@ -0,0 +1,4 @@
        1278  +
AWS4-HMAC-SHA256
        1279  +
20150830T123600Z
        1280  +
20150830/us-east-1/service/aws4_request
        1281  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
  792   1282   
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
  793   1283   
new file mode 100644
  794   1284   
index 0000000..f7844e3
  795         -
-- /dev/null
        1285  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
  796   1286   
@@ -0,0 +1,7 @@
        1287  +
GET
        1288  +
//example//
        1289  +
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
        1290  +
host:example.amazonaws.com
        1291  +
        1292  +
host
        1293  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  797   1294   
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
  798   1295   
new file mode 100644
  799   1296   
index 0000000..a8d6b96
  800         -
-- /dev/null
        1297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
  801   1298   
@@ -0,0 +1 @@
        1299  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
  802   1300   
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
  803   1301   
new file mode 100644
  804   1302   
index 0000000..a8322c6
  805         -
-- /dev/null
        1303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
  806   1304   
@@ -0,0 +1,3 @@
        1305  +
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
        1306  +
Host:example.amazonaws.com
        1307  +
  807   1308   
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
  808   1309   
new file mode 100644
  809   1310   
index 0000000..068724d
  810         -
-- /dev/null
        1311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
  811   1312   
@@ -0,0 +1,4 @@
        1313  +
AWS4-HMAC-SHA256
        1314  +
20150830T123600Z
        1315  +
20150830/us-east-1/service/aws4_request
        1316  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
  812   1317   
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
  813   1318   
similarity index 100%
  814   1319   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
  815   1320   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
  816   1321   
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
  817   1322   
new file mode 100644
  818   1323   
index 0000000..0468d80
  819         -
-- /dev/null
        1324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
  820   1325   
@@ -0,0 +1,12 @@
        1326  +
{
        1327  +
    "credentials": {
        1328  +
        "access_key_id": "AKIDEXAMPLE",
        1329  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1330  +
    },
        1331  +
    "expiration_in_seconds": 3600,
        1332  +
    "normalize": true,
        1333  +
    "region": "us-east-1",
        1334  +
    "service": "service",
        1335  +
    "sign_body": false,
        1336  +
    "timestamp": "2015-08-30T12:36:00Z"
        1337  +
}
              \
 No newline at end of file
  821   1338   
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
  822   1339   
similarity index 100%
  823   1340   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
  824   1341   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
  825   1342   
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
  826   1343   
new file mode 100644
  827   1344   
index 0000000..f63892b
  828         -
-- /dev/null
        1345  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
  829   1346   
@@ -0,0 +1 @@
        1347  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
  830   1348   
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
  831   1349   
new file mode 100644
  832   1350   
index 0000000..19cd5cb
  833         -
-- /dev/null
        1351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
  834   1352   
@@ -0,0 +1,5 @@
        1353  +
GET /example space/ HTTP/1.1
        1354  +
Host:example.amazonaws.com
        1355  +
X-Amz-Date:20150830T123600Z
        1356  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1357  +
  835   1358   
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
  836   1359   
similarity index 100%
  837   1360   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
  838   1361   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
  839   1362   
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
  840   1363   
new file mode 100644
  841   1364   
index 0000000..fa3d3e2
  842         -
-- /dev/null
        1365  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
  843   1366   
@@ -0,0 +1,7 @@
        1367  +
GET
        1368  +
/example%20space/
        1369  +
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
        1370  +
host:example.amazonaws.com
        1371  +
        1372  +
host
        1373  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  844   1374   
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
  845   1375   
new file mode 100644
  846   1376   
index 0000000..5b2e204
  847         -
-- /dev/null
        1377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
  848   1378   
@@ -0,0 +1 @@
        1379  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
  849   1380   
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
  850   1381   
new file mode 100644
  851   1382   
index 0000000..93ca1d0
  852         -
-- /dev/null
        1383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
  853   1384   
@@ -0,0 +1,3 @@
        1385  +
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
        1386  +
Host:example.amazonaws.com
        1387  +
  854   1388   
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
  855   1389   
new file mode 100644
  856   1390   
index 0000000..b4cb789
  857         -
-- /dev/null
        1391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
  858   1392   
@@ -0,0 +1,4 @@
        1393  +
AWS4-HMAC-SHA256
        1394  +
20150830T123600Z
        1395  +
20150830/us-east-1/service/aws4_request
        1396  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
  859   1397   
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
  860   1398   
new file mode 100644
  861   1399   
index 0000000..860a277
  862         -
-- /dev/null
        1400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
  863   1401   
@@ -0,0 +1,2 @@
        1402  +
GET /example%20space/ HTTP/1.1
        1403  +
Host:example.amazonaws.com
  864   1404   
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
  865   1405   
new file mode 100644
  866   1406   
index 0000000..7bee5c7
  867         -
-- /dev/null
        1407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
  868   1408   
@@ -0,0 +1,12 @@
        1409  +
{
        1410  +
    "credentials": {
        1411  +
        "access_key_id": "AKIDEXAMPLE",
        1412  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1413  +
    },
        1414  +
    "expiration_in_seconds": 3600,
        1415  +
    "normalize": false,
        1416  +
    "region": "us-east-1",
        1417  +
    "service": "service",
        1418  +
    "sign_body": false,
        1419  +
    "timestamp": "2015-08-30T12:36:00Z"
        1420  +
}
              \
 No newline at end of file
  869   1421   
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
  870   1422   
similarity index 66%
  871   1423   
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
  872   1424   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
  873   1425   
index 71dc981..124a709 100644
  874         -
-- 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
        1426  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
  875   1427   
@@ -1,9 +1,8 @@
  876         -
POST
  877         -
/
        1428  +
GET
        1429  +
/example%20space/
  878   1430   
  879         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  880   1431   
host:example.amazonaws.com
  881   1432   
x-amz-date:20150830T123600Z
  882   1433   
  883   1434   
host;x-amz-date
  884   1435   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  885   1436   
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
  886   1437   
new file mode 100644
  887   1438   
index 0000000..f63892b
  888         -
-- /dev/null
        1439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
  889   1440   
@@ -0,0 +1 @@
        1441  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
  890   1442   
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
  891   1443   
new file mode 100644
  892   1444   
index 0000000..19cd5cb
  893         -
-- /dev/null
        1445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
  894   1446   
@@ -0,0 +1,5 @@
        1447  +
GET /example space/ HTTP/1.1
        1448  +
Host:example.amazonaws.com
        1449  +
X-Amz-Date:20150830T123600Z
        1450  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1451  +
  895   1452   
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
  896   1453   
new file mode 100644
  897   1454   
index 0000000..a633f0c
  898         -
-- /dev/null
        1455  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
  899   1456   
@@ -0,0 +1,4 @@
        1457  +
AWS4-HMAC-SHA256
        1458  +
20150830T123600Z
        1459  +
20150830/us-east-1/service/aws4_request
        1460  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
  900   1461   
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
  901   1462   
new file mode 100644
  902   1463   
index 0000000..fa3d3e2
  903         -
-- /dev/null
        1464  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
  904   1465   
@@ -0,0 +1,7 @@
        1466  +
GET
        1467  +
/example%20space/
        1468  +
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
        1469  +
host:example.amazonaws.com
        1470  +
        1471  +
host
        1472  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  905   1473   
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
  906   1474   
new file mode 100644
  907   1475   
index 0000000..5b2e204
  908         -
-- /dev/null
        1476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
  909   1477   
@@ -0,0 +1 @@
        1478  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
  910   1479   
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
  911   1480   
new file mode 100644
  912   1481   
index 0000000..93ca1d0
  913         -
-- /dev/null
        1482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
  914   1483   
@@ -0,0 +1,3 @@
        1484  +
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
        1485  +
Host:example.amazonaws.com
        1486  +
  915   1487   
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
  916   1488   
new file mode 100644
  917   1489   
index 0000000..b4cb789
  918         -
-- /dev/null
        1490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
  919   1491   
@@ -0,0 +1,4 @@
        1492  +
AWS4-HMAC-SHA256
        1493  +
20150830T123600Z
        1494  +
20150830/us-east-1/service/aws4_request
        1495  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
  920   1496   
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
  921   1497   
similarity index 67%
  922   1498   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
  923   1499   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
  924   1500   
index b7d5e8b..ab509ab 100644
  925         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        1501  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
  926   1502   
@@ -1,3 +1,2 @@
  927   1503   
GET /example space/ HTTP/1.1
  928   1504   
Host:example.amazonaws.com
  929         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  930   1505   
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
  931   1506   
new file mode 100644
  932   1507   
index 0000000..0468d80
  933         -
-- /dev/null
        1508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
  934   1509   
@@ -0,0 +1,12 @@
        1510  +
{
        1511  +
    "credentials": {
        1512  +
        "access_key_id": "AKIDEXAMPLE",
        1513  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1514  +
    },
        1515  +
    "expiration_in_seconds": 3600,
        1516  +
    "normalize": true,
        1517  +
    "region": "us-east-1",
        1518  +
    "service": "service",
        1519  +
    "sign_body": false,
        1520  +
    "timestamp": "2015-08-30T12:36:00Z"
        1521  +
}
              \
 No newline at end of file
  935   1522   
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
  936   1523   
similarity index 100%
  937   1524   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
  938   1525   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
  939   1526   
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
  940   1527   
new file mode 100644
  941   1528   
index 0000000..e503354
  942         -
-- /dev/null
        1529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
  943   1530   
@@ -0,0 +1 @@
        1531  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
  944   1532   
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
  945   1533   
new file mode 100644
  946   1534   
index 0000000..4367892
  947         -
-- /dev/null
        1535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
  948   1536   
@@ -0,0 +1,5 @@
        1537  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        1538  +
Host:example.amazonaws.com
        1539  +
X-Amz-Date:20150830T123600Z
        1540  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        1541  +
  949   1542   
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
  950   1543   
similarity index 100%
  951   1544   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
  952   1545   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
  953   1546   
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
  954   1547   
new file mode 100644
  955   1548   
index 0000000..d7f0696
  956         -
-- /dev/null
        1549  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
  957   1550   
@@ -0,0 +1,7 @@
        1551  +
GET
        1552  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        1553  +
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
        1554  +
host:example.amazonaws.com
        1555  +
        1556  +
host
        1557  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  958   1558   
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
  959   1559   
new file mode 100644
  960   1560   
index 0000000..509e972
  961         -
-- /dev/null
        1561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
  962   1562   
@@ -0,0 +1 @@
        1563  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
  963   1564   
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
  964   1565   
new file mode 100644
  965   1566   
index 0000000..79aad36
  966         -
-- /dev/null
        1567  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
  967   1568   
@@ -0,0 +1,3 @@
        1569  +
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
        1570  +
Host:example.amazonaws.com
        1571  +
  968   1572   
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
  969   1573   
new file mode 100644
  970   1574   
index 0000000..e8068b3
  971         -
-- /dev/null
        1575  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
  972   1576   
@@ -0,0 +1,4 @@
        1577  +
AWS4-HMAC-SHA256
        1578  +
20150830T123600Z
        1579  +
20150830/us-east-1/service/aws4_request
        1580  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
  973   1581   
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
  974   1582   
similarity index 100%
  975   1583   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
  976   1584   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
  977   1585   
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
  978   1586   
new file mode 100644
  979   1587   
index 0000000..0468d80
  980         -
-- /dev/null
        1588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
  981   1589   
@@ -0,0 +1,12 @@
        1590  +
{
        1591  +
    "credentials": {
        1592  +
        "access_key_id": "AKIDEXAMPLE",
        1593  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1594  +
    },
        1595  +
    "expiration_in_seconds": 3600,
        1596  +
    "normalize": true,
        1597  +
    "region": "us-east-1",
        1598  +
    "service": "service",
        1599  +
    "sign_body": false,
        1600  +
    "timestamp": "2015-08-30T12:36:00Z"
        1601  +
}
              \
 No newline at end of file
  982   1602   
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
  983   1603   
similarity index 100%
  984   1604   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
  985   1605   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
  986   1606   
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
  987   1607   
new file mode 100644
  988   1608   
index 0000000..9a13676
  989         -
-- /dev/null
        1609  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
  990   1610   
@@ -0,0 +1 @@
        1611  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
  991   1612   
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
  992   1613   
new file mode 100644
  993   1614   
index 0000000..5aaf47c
  994         -
-- /dev/null
        1615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
  995   1616   
@@ -0,0 +1,5 @@
        1617  +
GET /ሴ HTTP/1.1
        1618  +
Host:example.amazonaws.com
        1619  +
X-Amz-Date:20150830T123600Z
        1620  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        1621  +
  996   1622   
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
  997   1623   
similarity index 100%
  998   1624   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
  999   1625   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 1000   1626   
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
 1001   1627   
new file mode 100644
 1002   1628   
index 0000000..bdb77c9
 1003         -
-- /dev/null
        1629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 1004   1630   
@@ -0,0 +1,7 @@
        1631  +
GET
        1632  +
/%E1%88%B4
        1633  +
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
        1634  +
host:example.amazonaws.com
        1635  +
        1636  +
host
        1637  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1005   1638   
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
 1006   1639   
new file mode 100644
 1007   1640   
index 0000000..21342b3
 1008         -
-- /dev/null
        1641  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 1009   1642   
@@ -0,0 +1 @@
        1643  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 1010   1644   
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
 1011   1645   
new file mode 100644
 1012   1646   
index 0000000..368c2ff
 1013         -
-- /dev/null
        1647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 1014   1648   
@@ -0,0 +1,3 @@
        1649  +
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
        1650  +
Host:example.amazonaws.com
        1651  +
 1015   1652   
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
 1016   1653   
new file mode 100644
 1017   1654   
index 0000000..56b8fbf
 1018         -
-- /dev/null
        1655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 1019   1656   
@@ -0,0 +1,4 @@
        1657  +
AWS4-HMAC-SHA256
        1658  +
20150830T123600Z
        1659  +
20150830/us-east-1/service/aws4_request
        1660  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 1020   1661   
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
 1021   1662   
similarity index 62%
 1022   1663   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 1023   1664   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 1024   1665   
index da4808d..9e273f6 100644
 1025         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        1666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 1026   1667   
@@ -1,3 +1,2 @@
 1027   1668   
GET /ሴ HTTP/1.1
 1028   1669   
Host:example.amazonaws.com
 1029         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1030   1670   
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
 1031   1671   
new file mode 100644
 1032   1672   
index 0000000..0468d80
 1033         -
-- /dev/null
        1673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 1034   1674   
@@ -0,0 +1,12 @@
        1675  +
{
        1676  +
    "credentials": {
        1677  +
        "access_key_id": "AKIDEXAMPLE",
        1678  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1679  +
    },
        1680  +
    "expiration_in_seconds": 3600,
        1681  +
    "normalize": true,
        1682  +
    "region": "us-east-1",
        1683  +
    "service": "service",
        1684  +
    "sign_body": false,
        1685  +
    "timestamp": "2015-08-30T12:36:00Z"
        1686  +
}
              \
 No newline at end of file
 1035   1687   
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
 1036   1688   
similarity index 100%
 1037   1689   
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
 1038   1690   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 1039   1691   
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
 1040   1692   
new file mode 100644
 1041   1693   
index 0000000..d7f1c1c
 1042         -
-- /dev/null
        1694  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 1043   1695   
@@ -0,0 +1 @@
        1696  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 1044   1697   
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
 1045   1698   
new file mode 100644
 1046   1699   
index 0000000..1c60790
 1047         -
-- /dev/null
        1700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 1048   1701   
@@ -0,0 +1,5 @@
        1702  +
GET /?Param1=value1 HTTP/1.1
        1703  +
Host:example.amazonaws.com
        1704  +
X-Amz-Date:20150830T123600Z
        1705  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        1706  +
 1049   1707   
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
 1050   1708   
similarity index 100%
 1051   1709   
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
 1052   1710   
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
 1053   1711   
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
 1054   1712   
new file mode 100644
 1055   1713   
index 0000000..6a823ed
 1056         -
-- /dev/null
        1714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 1057   1715   
@@ -0,0 +1,7 @@
        1716  +
GET
        1717  +
/
        1718  +
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
        1719  +
host:example.amazonaws.com
        1720  +
        1721  +
host
        1722  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1058   1723   
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
 1059   1724   
new file mode 100644
 1060   1725   
index 0000000..8c77136
 1061         -
-- /dev/null
        1726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 1062   1727   
@@ -0,0 +1 @@
        1728  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 1063   1729   
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
 1064   1730   
new file mode 100644
 1065   1731   
index 0000000..2d337d8
 1066         -
-- /dev/null
        1732  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 1067   1733   
@@ -0,0 +1,3 @@
        1734  +
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
        1735  +
Host:example.amazonaws.com
        1736  +
 1068   1737   
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
 1069   1738   
new file mode 100644
 1070   1739   
index 0000000..191a484
 1071         -
-- /dev/null
        1740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 1072   1741   
@@ -0,0 +1,4 @@
        1742  +
AWS4-HMAC-SHA256
        1743  +
20150830T123600Z
        1744  +
20150830/us-east-1/service/aws4_request
        1745  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 1073   1746   
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
 1074   1747   
similarity index 100%
 1075   1748   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 1076   1749   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 1077   1750   
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
 1078   1751   
new file mode 100644
 1079   1752   
index 0000000..0468d80
 1080         -
-- /dev/null
        1753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 1081   1754   
@@ -0,0 +1,12 @@
        1755  +
{
        1756  +
    "credentials": {
        1757  +
        "access_key_id": "AKIDEXAMPLE",
        1758  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1759  +
    },
        1760  +
    "expiration_in_seconds": 3600,
        1761  +
    "normalize": true,
        1762  +
    "region": "us-east-1",
        1763  +
    "service": "service",
        1764  +
    "sign_body": false,
        1765  +
    "timestamp": "2015-08-30T12:36:00Z"
        1766  +
}
              \
 No newline at end of file
 1082   1767   
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
 1083   1768   
new file mode 100644
 1084   1769   
index 0000000..0c8ba21
 1085         -
-- /dev/null
        1770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 1086   1771   
@@ -0,0 +1,8 @@
        1772  +
GET
        1773  +
/
        1774  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        1775  +
host:example.amazonaws.com
        1776  +
x-amz-date:20150830T123600Z
        1777  +
        1778  +
host;x-amz-date
        1779  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1087   1780   
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
 1088   1781   
new file mode 100644
 1089   1782   
index 0000000..9ab65ed
 1090         -
-- /dev/null
        1783  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 1091   1784   
@@ -0,0 +1 @@
        1785  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 1092   1786   
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
 1093   1787   
new file mode 100644
 1094   1788   
index 0000000..0bcdf98
 1095         -
-- /dev/null
        1789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 1096   1790   
@@ -0,0 +1,5 @@
        1791  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        1792  +
Host:example.amazonaws.com
        1793  +
X-Amz-Date:20150830T123600Z
        1794  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        1795  +
 1097   1796   
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
 1098   1797   
new file mode 100644
 1099   1798   
index 0000000..bf674ad
 1100         -
-- /dev/null
        1799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 1101   1800   
@@ -0,0 +1,4 @@
        1801  +
AWS4-HMAC-SHA256
        1802  +
20150830T123600Z
        1803  +
20150830/us-east-1/service/aws4_request
        1804  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 1102   1805   
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
 1103   1806   
new file mode 100644
 1104   1807   
index 0000000..3f590a4
 1105         -
-- /dev/null
        1808  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 1106   1809   
@@ -0,0 +1,7 @@
        1810  +
GET
        1811  +
/
        1812  +
%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
        1813  +
host:example.amazonaws.com
        1814  +
        1815  +
host
        1816  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1107   1817   
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
 1108   1818   
new file mode 100644
 1109   1819   
index 0000000..e225eab
 1110         -
-- /dev/null
        1820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 1111   1821   
@@ -0,0 +1 @@
        1822  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 1112   1823   
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
 1113   1824   
new file mode 100644
 1114   1825   
index 0000000..6206719
 1115         -
-- /dev/null
        1826  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 1116   1827   
@@ -0,0 +1,3 @@
        1828  +
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
        1829  +
Host:example.amazonaws.com
        1830  +
 1117   1831   
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
 1118   1832   
new file mode 100644
 1119   1833   
index 0000000..81a4210
 1120         -
-- /dev/null
        1834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 1121   1835   
@@ -0,0 +1,4 @@
        1836  +
AWS4-HMAC-SHA256
        1837  +
20150830T123600Z
        1838  +
20150830/us-east-1/service/aws4_request
        1839  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 1122   1840   
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
 1123   1841   
new file mode 100644
 1124   1842   
index 0000000..368c6e3
 1125         -
-- /dev/null
        1843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 1126   1844   
@@ -0,0 +1,2 @@
        1845  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        1846  +
Host:example.amazonaws.com
 1127   1847   
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
 1128   1848   
new file mode 100644
 1129   1849   
index 0000000..0468d80
 1130         -
-- /dev/null
        1850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 1131   1851   
@@ -0,0 +1,12 @@
        1852  +
{
        1853  +
    "credentials": {
        1854  +
        "access_key_id": "AKIDEXAMPLE",
        1855  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1856  +
    },
        1857  +
    "expiration_in_seconds": 3600,
        1858  +
    "normalize": true,
        1859  +
    "region": "us-east-1",
        1860  +
    "service": "service",
        1861  +
    "sign_body": false,
        1862  +
    "timestamp": "2015-08-30T12:36:00Z"
        1863  +
}
              \
 No newline at end of file
 1132   1864   
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
 1133   1865   
similarity index 100%
 1134   1866   
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
 1135   1867   
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
 1136   1868   
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
 1137   1869   
new file mode 100644
 1138   1870   
index 0000000..6a8cb9d
 1139         -
-- /dev/null
        1871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 1140   1872   
@@ -0,0 +1 @@
        1873  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 1141   1874   
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
 1142   1875   
new file mode 100644
 1143   1876   
index 0000000..f78a9d2
 1144         -
-- /dev/null
        1877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 1145   1878   
@@ -0,0 +1,5 @@
        1879  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        1880  +
Host:example.amazonaws.com
        1881  +
X-Amz-Date:20150830T123600Z
        1882  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        1883  +
 1146   1884   
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
 1147   1885   
similarity index 100%
 1148   1886   
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
 1149   1887   
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
 1150   1888   
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
 1151   1889   
new file mode 100644
 1152   1890   
index 0000000..a6e1bc7
 1153         -
-- /dev/null
        1891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 1154   1892   
@@ -0,0 +1,7 @@
        1893  +
GET
        1894  +
/
        1895  +
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
        1896  +
host:example.amazonaws.com
        1897  +
        1898  +
host
        1899  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1155   1900   
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
 1156   1901   
new file mode 100644
 1157   1902   
index 0000000..d6e6a88
 1158         -
-- /dev/null
        1903  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 1159   1904   
@@ -0,0 +1 @@
        1905  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 1160   1906   
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
 1161   1907   
new file mode 100644
 1162   1908   
index 0000000..538e2f0
 1163         -
-- /dev/null
        1909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 1164   1910   
@@ -0,0 +1,3 @@
        1911  +
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
        1912  +
Host:example.amazonaws.com
        1913  +
 1165   1914   
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
 1166   1915   
new file mode 100644
 1167   1916   
index 0000000..e696085
 1168         -
-- /dev/null
        1917  +
++ 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
 1169   1918   
@@ -0,0 +1,4 @@
        1919  +
AWS4-HMAC-SHA256
        1920  +
20150830T123600Z
        1921  +
20150830/us-east-1/service/aws4_request
        1922  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 1170   1923   
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
 1171   1924   
similarity index 100%
 1172   1925   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 1173   1926   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 1174   1927   
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
 1175   1928   
new file mode 100644
 1176   1929   
index 0000000..0468d80
 1177         -
-- /dev/null
        1930  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 1178   1931   
@@ -0,0 +1,12 @@
        1932  +
{
        1933  +
    "credentials": {
        1934  +
        "access_key_id": "AKIDEXAMPLE",
        1935  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1936  +
    },
        1937  +
    "expiration_in_seconds": 3600,
        1938  +
    "normalize": true,
        1939  +
    "region": "us-east-1",
        1940  +
    "service": "service",
        1941  +
    "sign_body": false,
        1942  +
    "timestamp": "2015-08-30T12:36:00Z"
        1943  +
}
              \
 No newline at end of file
 1179   1944   
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
 1180   1945   
similarity index 100%
 1181   1946   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 1182   1947   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 1183   1948   
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
 1184   1949   
new file mode 100644
 1185   1950   
index 0000000..876a64b
 1186         -
-- /dev/null
        1951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 1187   1952   
@@ -0,0 +1 @@
        1953  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 1188   1954   
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
 1189   1955   
similarity index 50%
 1190   1956   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 1191   1957   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 1192   1958   
index ba1ef40..9d0d993 100644
 1193         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        1959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 1194   1960   
@@ -1,4 +1,5 @@
 1195   1961   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 1196   1962   
Host:example.amazonaws.com
 1197   1963   
X-Amz-Date:20150830T123600Z
 1198         -
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
        1964  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        1965  +
 1199   1966   
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
 1200   1967   
similarity index 100%
 1201   1968   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 1202   1969   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 1203   1970   
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
 1204   1971   
new file mode 100644
 1205   1972   
index 0000000..a1bac59
 1206         -
-- /dev/null
        1973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 1207   1974   
@@ -0,0 +1,7 @@
        1975  +
GET
        1976  +
/
        1977  +
-._~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
        1978  +
host:example.amazonaws.com
        1979  +
        1980  +
host
        1981  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1208   1982   
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
 1209   1983   
new file mode 100644
 1210   1984   
index 0000000..41881e9
 1211         -
-- /dev/null
        1985  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 1212   1986   
@@ -0,0 +1 @@
        1987  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 1213   1988   
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
 1214   1989   
new file mode 100644
 1215   1990   
index 0000000..3179076
 1216         -
-- /dev/null
        1991  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 1217   1992   
@@ -0,0 +1,3 @@
        1993  +
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
        1994  +
Host:example.amazonaws.com
        1995  +
 1218   1996   
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
 1219   1997   
new file mode 100644
 1220   1998   
index 0000000..6d675fc
 1221         -
-- /dev/null
        1999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 1222   2000   
@@ -0,0 +1,4 @@
        2001  +
AWS4-HMAC-SHA256
        2002  +
20150830T123600Z
        2003  +
20150830/us-east-1/service/aws4_request
        2004  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 1223   2005   
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
 1224   2006   
similarity index 100%
 1225   2007   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 1226   2008   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 1227   2009   
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
 1228   2010   
new file mode 100644
 1229   2011   
index 0000000..0468d80
 1230         -
-- /dev/null
        2012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 1231   2013   
@@ -0,0 +1,12 @@
        2014  +
{
        2015  +
    "credentials": {
        2016  +
        "access_key_id": "AKIDEXAMPLE",
        2017  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2018  +
    },
        2019  +
    "expiration_in_seconds": 3600,
        2020  +
    "normalize": true,
        2021  +
    "region": "us-east-1",
        2022  +
    "service": "service",
        2023  +
    "sign_body": false,
        2024  +
    "timestamp": "2015-08-30T12:36:00Z"
        2025  +
}
              \
 No newline at end of file
 1232   2026   
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
 1233   2027   
similarity index 100%
 1234   2028   
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
 1235   2029   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 1236   2030   
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
 1237   2031   
new file mode 100644
 1238   2032   
index 0000000..87f295f
 1239         -
-- /dev/null
        2033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 1240   2034   
@@ -0,0 +1 @@
        2035  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1241   2036   
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
 1242   2037   
new file mode 100644
 1243   2038   
index 0000000..36b86e7
 1244         -
-- /dev/null
        2039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 1245   2040   
@@ -0,0 +1,5 @@
        2041  +
GET / HTTP/1.1
        2042  +
Host:example.amazonaws.com
        2043  +
X-Amz-Date:20150830T123600Z
        2044  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2045  +
 1246   2046   
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
 1247   2047   
similarity index 100%
 1248   2048   
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
 1249   2049   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 1250   2050   
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
 1251   2051   
new file mode 100644
 1252   2052   
index 0000000..fb2420d
 1253         -
-- /dev/null
        2053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 1254   2054   
@@ -0,0 +1,7 @@
        2055  +
GET
        2056  +
/
        2057  +
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
        2058  +
host:example.amazonaws.com
        2059  +
        2060  +
host
        2061  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1255   2062   
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
 1256   2063   
new file mode 100644
 1257   2064   
index 0000000..da5c905
 1258         -
-- /dev/null
        2065  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 1259   2066   
@@ -0,0 +1 @@
        2067  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1260   2068   
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
 1261   2069   
new file mode 100644
 1262   2070   
index 0000000..eeb7a8f
 1263         -
-- /dev/null
        2071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 1264   2072   
@@ -0,0 +1,3 @@
        2073  +
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
        2074  +
Host:example.amazonaws.com
        2075  +
 1265   2076   
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
 1266   2077   
new file mode 100644
 1267   2078   
index 0000000..d837e67
 1268         -
-- /dev/null
        2079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 1269   2080   
@@ -0,0 +1,4 @@
        2081  +
AWS4-HMAC-SHA256
        2082  +
20150830T123600Z
        2083  +
20150830/us-east-1/service/aws4_request
        2084  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1270   2085   
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
 1271   2086   
similarity index 100%
 1272   2087   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 1273   2088   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 1274   2089   
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
 1275   2090   
new file mode 100644
 1276   2091   
index 0000000..0468d80
 1277         -
-- /dev/null
        2092  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 1278   2093   
@@ -0,0 +1,12 @@
        2094  +
{
        2095  +
    "credentials": {
        2096  +
        "access_key_id": "AKIDEXAMPLE",
        2097  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2098  +
    },
        2099  +
    "expiration_in_seconds": 3600,
        2100  +
    "normalize": true,
        2101  +
    "region": "us-east-1",
        2102  +
    "service": "service",
        2103  +
    "sign_body": false,
        2104  +
    "timestamp": "2015-08-30T12:36:00Z"
        2105  +
}
              \
 No newline at end of file
 1279   2106   
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
 1280   2107   
similarity index 100%
 1281   2108   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 1282   2109   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 1283   2110   
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
 1284   2111   
new file mode 100644
 1285   2112   
index 0000000..19a2cc9
 1286         -
-- /dev/null
        2113  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 1287   2114   
@@ -0,0 +1 @@
        2115  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 1288   2116   
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
 1289   2117   
new file mode 100644
 1290   2118   
index 0000000..acb13ee
 1291         -
-- /dev/null
        2119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 1292   2120   
@@ -0,0 +1,5 @@
        2121  +
GET /?ሴ=bar HTTP/1.1
        2122  +
Host:example.amazonaws.com
        2123  +
X-Amz-Date:20150830T123600Z
        2124  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2125  +
 1293   2126   
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
 1294   2127   
similarity index 100%
 1295   2128   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 1296   2129   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 1297   2130   
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
 1298   2131   
new file mode 100644
 1299   2132   
index 0000000..92cee62
 1300         -
-- /dev/null
        2133  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 1301   2134   
@@ -0,0 +1,7 @@
        2135  +
GET
        2136  +
/
        2137  +
%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
        2138  +
host:example.amazonaws.com
        2139  +
        2140  +
host
        2141  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1302   2142   
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
 1303   2143   
new file mode 100644
 1304   2144   
index 0000000..c9e49de
 1305         -
-- /dev/null
        2145  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 1306   2146   
@@ -0,0 +1 @@
        2147  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 1307   2148   
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
 1308   2149   
new file mode 100644
 1309   2150   
index 0000000..8f4d8d0
 1310         -
-- /dev/null
        2151  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 1311   2152   
@@ -0,0 +1,3 @@
        2153  +
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
        2154  +
Host:example.amazonaws.com
        2155  +
 1312   2156   
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
 1313   2157   
new file mode 100644
 1314   2158   
index 0000000..a6181dc
 1315         -
-- /dev/null
        2159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 1316   2160   
@@ -0,0 +1,4 @@
        2161  +
AWS4-HMAC-SHA256
        2162  +
20150830T123600Z
        2163  +
20150830/us-east-1/service/aws4_request
        2164  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 1317   2165   
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
 1318   2166   
similarity index 64%
 1319   2167   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 1320   2168   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 1321   2169   
index cc2757e..aff333a 100644
 1322         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2170  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 1323   2171   
@@ -1,3 +1,2 @@
 1324   2172   
GET /?ሴ=bar HTTP/1.1
 1325   2173   
Host:example.amazonaws.com
 1326         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1327   2174   
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
 1328   2175   
similarity index 99%
 1329   2176   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 1330   2177   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 1331   2178   
index a457c8a..a334e18 100644
 1332   2179   
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
 1333   2180   
new file mode 100644
 1334   2181   
index 0000000..ccacdeb
 1335         -
-- /dev/null
        2182  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 1336   2183   
@@ -0,0 +1,9 @@
        2184  +
GET
        2185  +
/
        2186  +
        2187  +
host:example.amazonaws.com
        2188  +
x-amz-date:20150830T123600Z
        2189  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2190  +
        2191  +
host;x-amz-date;x-amz-security-token
        2192  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1337   2193   
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
 1338   2194   
new file mode 100644
 1339   2195   
index 0000000..083e30d
 1340         -
-- /dev/null
        2196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 1341   2197   
@@ -0,0 +1 @@
        2198  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 1342   2199   
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
 1343   2200   
new file mode 100644
 1344   2201   
index 0000000..5287932
 1345         -
-- /dev/null
        2202  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 1346   2203   
@@ -0,0 +1,6 @@
        2204  +
GET / HTTP/1.1
        2205  +
Host:example.amazonaws.com
        2206  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2207  +
X-Amz-Date:20150830T123600Z
        2208  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2209  +
 1347   2210   
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
 1348   2211   
new file mode 100644
 1349   2212   
index 0000000..742b880
 1350         -
-- /dev/null
        2213  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 1351   2214   
@@ -0,0 +1,4 @@
        2215  +
AWS4-HMAC-SHA256
        2216  +
20150830T123600Z
        2217  +
20150830/us-east-1/service/aws4_request
        2218  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 1352   2219   
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
 1353   2220   
new file mode 100644
 1354   2221   
index 0000000..5e75179
 1355         -
-- /dev/null
        2222  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 1356   2223   
@@ -0,0 +1,7 @@
        2224  +
GET
        2225  +
/
        2226  +
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
        2227  +
host:example.amazonaws.com
        2228  +
        2229  +
host
        2230  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1357   2231   
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
 1358   2232   
new file mode 100644
 1359   2233   
index 0000000..50b947f
 1360         -
-- /dev/null
        2234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 1361   2235   
@@ -0,0 +1 @@
        2236  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 1362   2237   
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
 1363   2238   
new file mode 100644
 1364   2239   
index 0000000..aee910b
 1365         -
-- /dev/null
        2240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 1366   2241   
@@ -0,0 +1,3 @@
        2242  +
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
        2243  +
Host:example.amazonaws.com
        2244  +
 1367   2245   
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
 1368   2246   
new file mode 100644
 1369   2247   
index 0000000..04a6c17
 1370         -
-- /dev/null
        2248  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 1371   2249   
@@ -0,0 +1,4 @@
        2250  +
AWS4-HMAC-SHA256
        2251  +
20150830T123600Z
        2252  +
20150830/us-east-1/service/aws4_request
        2253  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 1372   2254   
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
 1373   2255   
similarity index 100%
 1374   2256   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 1375   2257   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 1376   2258   
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
 1377   2259   
new file mode 100644
 1378   2260   
index 0000000..0468d80
 1379         -
-- /dev/null
        2261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 1380   2262   
@@ -0,0 +1,12 @@
        2263  +
{
        2264  +
    "credentials": {
        2265  +
        "access_key_id": "AKIDEXAMPLE",
        2266  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2267  +
    },
        2268  +
    "expiration_in_seconds": 3600,
        2269  +
    "normalize": true,
        2270  +
    "region": "us-east-1",
        2271  +
    "service": "service",
        2272  +
    "sign_body": false,
        2273  +
    "timestamp": "2015-08-30T12:36:00Z"
        2274  +
}
              \
 No newline at end of file
 1381   2275   
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
 1382   2276   
similarity index 100%
 1383   2277   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 1384   2278   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 1385   2279   
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
 1386   2280   
new file mode 100644
 1387   2281   
index 0000000..87f295f
 1388         -
-- /dev/null
        2282  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 1389   2283   
@@ -0,0 +1 @@
        2284  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1390   2285   
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
 1391   2286   
new file mode 100644
 1392   2287   
index 0000000..36b86e7
 1393         -
-- /dev/null
        2288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 1394   2289   
@@ -0,0 +1,5 @@
        2290  +
GET / HTTP/1.1
        2291  +
Host:example.amazonaws.com
        2292  +
X-Amz-Date:20150830T123600Z
        2293  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2294  +
 1395   2295   
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
 1396   2296   
similarity index 100%
 1397   2297   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 1398   2298   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 1399   2299   
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
 1400   2300   
new file mode 100644
 1401   2301   
index 0000000..fb2420d
 1402         -
-- /dev/null
        2302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 1403   2303   
@@ -0,0 +1,7 @@
        2304  +
GET
        2305  +
/
        2306  +
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
        2307  +
host:example.amazonaws.com
        2308  +
        2309  +
host
        2310  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1404   2311   
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
 1405   2312   
new file mode 100644
 1406   2313   
index 0000000..da5c905
 1407         -
-- /dev/null
        2314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 1408   2315   
@@ -0,0 +1 @@
        2316  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1409   2317   
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
 1410   2318   
new file mode 100644
 1411   2319   
index 0000000..eeb7a8f
 1412         -
-- /dev/null
        2320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 1413   2321   
@@ -0,0 +1,3 @@
        2322  +
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
        2323  +
Host:example.amazonaws.com
        2324  +
 1414   2325   
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
 1415   2326   
new file mode 100644
 1416   2327   
index 0000000..d837e67
 1417         -
-- /dev/null
        2328  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 1418   2329   
@@ -0,0 +1,4 @@
        2330  +
AWS4-HMAC-SHA256
        2331  +
20150830T123600Z
        2332  +
20150830/us-east-1/service/aws4_request
        2333  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1419   2334   
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
 1420   2335   
similarity index 100%
 1421   2336   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 1422   2337   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 1423   2338   
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
 1424   2339   
new file mode 100644
 1425   2340   
index 0000000..0468d80
 1426         -
-- /dev/null
        2341  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 1427   2342   
@@ -0,0 +1,12 @@
        2343  +
{
        2344  +
    "credentials": {
        2345  +
        "access_key_id": "AKIDEXAMPLE",
        2346  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2347  +
    },
        2348  +
    "expiration_in_seconds": 3600,
        2349  +
    "normalize": true,
        2350  +
    "region": "us-east-1",
        2351  +
    "service": "service",
        2352  +
    "sign_body": false,
        2353  +
    "timestamp": "2015-08-30T12:36:00Z"
        2354  +
}
              \
 No newline at end of file
 1428   2355   
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
 1429   2356   
similarity index 100%
 1430   2357   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 1431   2358   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 1432   2359   
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
 1433   2360   
new file mode 100644
 1434   2361   
index 0000000..629487f
 1435         -
-- /dev/null
        2362  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 1436   2363   
@@ -0,0 +1 @@
        2364  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 1437   2365   
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
 1438   2366   
new file mode 100644
 1439   2367   
index 0000000..0d99b1c
 1440         -
-- /dev/null
        2368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 1441   2369   
@@ -0,0 +1,5 @@
        2370  +
POST / HTTP/1.1
        2371  +
Host:example.amazonaws.com
        2372  +
X-Amz-Date:20150830T123600Z
        2373  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2374  +
 1442   2375   
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
 1443   2376   
similarity index 100%
 1444   2377   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 1445   2378   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 1446   2379   
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
 1447   2380   
new file mode 100644
 1448   2381   
index 0000000..d3341e7
 1449         -
-- /dev/null
        2382  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 1450   2383   
@@ -0,0 +1,7 @@
        2384  +
POST
        2385  +
/
        2386  +
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
        2387  +
host:example.amazonaws.com
        2388  +
        2389  +
host
        2390  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1451   2391   
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
 1452   2392   
new file mode 100644
 1453   2393   
index 0000000..79f7e0d
 1454         -
-- /dev/null
        2394  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 1455   2395   
@@ -0,0 +1 @@
        2396  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 1456   2397   
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
 1457   2398   
new file mode 100644
 1458   2399   
index 0000000..94f1b21
 1459         -
-- /dev/null
        2400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 1460   2401   
@@ -0,0 +1,3 @@
        2402  +
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
        2403  +
Host:example.amazonaws.com
        2404  +
 1461   2405   
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
 1462   2406   
new file mode 100644
 1463   2407   
index 0000000..e8f335b
 1464         -
-- /dev/null
        2408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 1465   2409   
@@ -0,0 +1,4 @@
        2410  +
AWS4-HMAC-SHA256
        2411  +
20150830T123600Z
        2412  +
20150830/us-east-1/service/aws4_request
        2413  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 1466   2414   
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
 1467   2415   
similarity index 100%
 1468   2416   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 1469   2417   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 1470   2418   
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
 1471   2419   
new file mode 100644
 1472   2420   
index 0000000..0468d80
 1473         -
-- /dev/null
        2421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 1474   2422   
@@ -0,0 +1,12 @@
        2423  +
{
        2424  +
    "credentials": {
        2425  +
        "access_key_id": "AKIDEXAMPLE",
        2426  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2427  +
    },
        2428  +
    "expiration_in_seconds": 3600,
        2429  +
    "normalize": true,
        2430  +
    "region": "us-east-1",
        2431  +
    "service": "service",
        2432  +
    "sign_body": false,
        2433  +
    "timestamp": "2015-08-30T12:36:00Z"
        2434  +
}
              \
 No newline at end of file
 1475   2435   
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
 1476   2436   
similarity index 100%
 1477   2437   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 1478   2438   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 1479   2439   
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
 1480   2440   
new file mode 100644
 1481   2441   
index 0000000..e4e6428
 1482         -
-- /dev/null
        2442  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 1483   2443   
@@ -0,0 +1 @@
        2444  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 1484   2445   
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
 1485   2446   
new file mode 100644
 1486   2447   
index 0000000..e3778f5
 1487         -
-- /dev/null
        2448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 1488   2449   
@@ -0,0 +1,6 @@
        2450  +
POST / HTTP/1.1
        2451  +
Host:example.amazonaws.com
        2452  +
My-Header1:value1
        2453  +
X-Amz-Date:20150830T123600Z
        2454  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2455  +
 1489   2456   
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
 1490   2457   
similarity index 100%
 1491   2458   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 1492   2459   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 1493   2460   
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
 1494   2461   
new file mode 100644
 1495   2462   
index 0000000..bd7c937
 1496         -
-- /dev/null
        2463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 1497   2464   
@@ -0,0 +1,8 @@
        2465  +
POST
        2466  +
/
        2467  +
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
        2468  +
host:example.amazonaws.com
        2469  +
my-header1:value1
        2470  +
        2471  +
host;my-header1
        2472  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1498   2473   
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
 1499   2474   
new file mode 100644
 1500   2475   
index 0000000..0416f13
 1501         -
-- /dev/null
        2476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 1502   2477   
@@ -0,0 +1 @@
        2478  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 1503   2479   
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
 1504   2480   
new file mode 100644
 1505   2481   
index 0000000..5e6522f
 1506         -
-- /dev/null
        2482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 1507   2483   
@@ -0,0 +1,4 @@
        2484  +
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
        2485  +
Host:example.amazonaws.com
        2486  +
My-Header1:value1
        2487  +
 1508   2488   
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
 1509   2489   
new file mode 100644
 1510   2490   
index 0000000..d06d1df
 1511         -
-- /dev/null
        2491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 1512   2492   
@@ -0,0 +1,4 @@
        2493  +
AWS4-HMAC-SHA256
        2494  +
20150830T123600Z
        2495  +
20150830/us-east-1/service/aws4_request
        2496  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 1513   2497   
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
 1514   2498   
similarity index 100%
 1515   2499   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 1516   2500   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 1517   2501   
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
 1518   2502   
new file mode 100644
 1519   2503   
index 0000000..0468d80
 1520         -
-- /dev/null
        2504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 1521   2505   
@@ -0,0 +1,12 @@
        2506  +
{
        2507  +
    "credentials": {
        2508  +
        "access_key_id": "AKIDEXAMPLE",
        2509  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2510  +
    },
        2511  +
    "expiration_in_seconds": 3600,
        2512  +
    "normalize": true,
        2513  +
    "region": "us-east-1",
        2514  +
    "service": "service",
        2515  +
    "sign_body": false,
        2516  +
    "timestamp": "2015-08-30T12:36:00Z"
        2517  +
}
              \
 No newline at end of file
 1522   2518   
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
 1523   2519   
similarity index 100%
 1524   2520   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 1525   2521   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 1526   2522   
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
 1527   2523   
new file mode 100644
 1528   2524   
index 0000000..bb3809c
 1529         -
-- /dev/null
        2525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 1530   2526   
@@ -0,0 +1 @@
        2527  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 1531   2528   
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
 1532   2529   
new file mode 100644
 1533   2530   
index 0000000..10f6761
 1534         -
-- /dev/null
        2531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 1535   2532   
@@ -0,0 +1,6 @@
        2533  +
POST / HTTP/1.1
        2534  +
Host:example.amazonaws.com
        2535  +
My-Header1:VALUE1
        2536  +
X-Amz-Date:20150830T123600Z
        2537  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        2538  +
 1536   2539   
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
 1537   2540   
similarity index 100%
 1538   2541   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 1539   2542   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 1540   2543   
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
 1541   2544   
new file mode 100644
 1542   2545   
index 0000000..f84856f
 1543         -
-- /dev/null
        2546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 1544   2547   
@@ -0,0 +1,8 @@
        2548  +
POST
        2549  +
/
        2550  +
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
        2551  +
host:example.amazonaws.com
        2552  +
my-header1:VALUE1
        2553  +
        2554  +
host;my-header1
        2555  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1545   2556   
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
 1546   2557   
new file mode 100644
 1547   2558   
index 0000000..a9d3cac
 1548         -
-- /dev/null
        2559  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 1549   2560   
@@ -0,0 +1 @@
        2561  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 1550   2562   
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
 1551   2563   
new file mode 100644
 1552   2564   
index 0000000..cf96c7c
 1553         -
-- /dev/null
        2565  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 1554   2566   
@@ -0,0 +1,4 @@
        2567  +
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
        2568  +
Host:example.amazonaws.com
        2569  +
My-Header1:VALUE1
        2570  +
 1555   2571   
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
 1556   2572   
new file mode 100644
 1557   2573   
index 0000000..47ef566
 1558         -
-- /dev/null
        2574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 1559   2575   
@@ -0,0 +1,4 @@
        2576  +
AWS4-HMAC-SHA256
        2577  +
20150830T123600Z
        2578  +
20150830/us-east-1/service/aws4_request
        2579  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 1560   2580   
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
 1561   2581   
similarity index 100%
 1562   2582   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 1563   2583   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 1564   2584   
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
 1565   2585   
similarity index 100%
 1566   2586   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 1567   2587   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 1568   2588   
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
 1569   2589   
similarity index 100%
 1570   2590   
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
 1571   2591   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 1572   2592   
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
 1573   2593   
new file mode 100644
 1574   2594   
index 0000000..629487f
 1575         -
-- /dev/null
        2595  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 1576   2596   
@@ -0,0 +1 @@
        2597  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 1577   2598   
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
 1578   2599   
similarity index 67%
 1579   2600   
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
 1580   2601   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 1581   2602   
index 291ed07..f96ff9e 100644
 1582         -
-- 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
        2603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 1583   2604   
@@ -1,5 +1,6 @@
 1584   2605   
POST / HTTP/1.1
 1585   2606   
Host:example.amazonaws.com
 1586         -
X-Amz-Date:20150830T123600Z
 1587   2607   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 1588         -
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
        2608  +
X-Amz-Date:20150830T123600Z
        2609  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2610  +
 1589   2611   
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
 1590   2612   
similarity index 100%
 1591   2613   
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
 1592   2614   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 1593   2615   
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
 1594   2616   
new file mode 100644
 1595   2617   
index 0000000..d3341e7
 1596         -
-- /dev/null
        2618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 1597   2619   
@@ -0,0 +1,7 @@
        2620  +
POST
        2621  +
/
        2622  +
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
        2623  +
host:example.amazonaws.com
        2624  +
        2625  +
host
        2626  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1598   2627   
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
 1599   2628   
new file mode 100644
 1600   2629   
index 0000000..79f7e0d
 1601         -
-- /dev/null
        2630  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 1602   2631   
@@ -0,0 +1 @@
        2632  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 1603   2633   
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
 1604   2634   
new file mode 100644
 1605   2635   
index 0000000..4983268
 1606         -
-- /dev/null
        2636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 1607   2637   
@@ -0,0 +1,3 @@
        2638  +
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
        2639  +
Host:example.amazonaws.com
        2640  +
 1608   2641   
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
 1609   2642   
new file mode 100644
 1610   2643   
index 0000000..e8f335b
 1611         -
-- /dev/null
        2644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 1612   2645   
@@ -0,0 +1,4 @@
        2646  +
AWS4-HMAC-SHA256
        2647  +
20150830T123600Z
        2648  +
20150830/us-east-1/service/aws4_request
        2649  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 1613   2650   
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
 1614   2651   
similarity index 100%
 1615   2652   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 1616   2653   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 1617   2654   
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
 1618   2655   
similarity index 100%
 1619   2656   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 1620   2657   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 1621   2658   
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
 1622   2659   
similarity index 100%
 1623   2660   
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
 1624   2661   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 1625   2662   
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
 1626   2663   
new file mode 100644
 1627   2664   
index 0000000..85a7c29
 1628         -
-- /dev/null
        2665  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 1629   2666   
@@ -0,0 +1 @@
        2667  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 1630   2668   
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
 1631   2669   
similarity index 65%
 1632   2670   
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
 1633   2671   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 1634   2672   
index 37b2f04..4d0b143 100644
 1635         -
-- 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
        2673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 1636   2674   
@@ -1,5 +1,6 @@
 1637   2675   
POST / HTTP/1.1
 1638   2676   
Host:example.amazonaws.com
 1639         -
X-Amz-Date:20150830T123600Z
 1640   2677   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 1641         -
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
        2678  +
X-Amz-Date:20150830T123600Z
        2679  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        2680  +
 1642   2681   
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
 1643   2682   
similarity index 100%
 1644   2683   
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
 1645   2684   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 1646   2685   
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
 1647   2686   
new file mode 100644
 1648   2687   
index 0000000..57a7bc3
 1649         -
-- /dev/null
        2688  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 1650   2689   
@@ -0,0 +1,7 @@
        2690  +
POST
        2691  +
/
        2692  +
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
        2693  +
host:example.amazonaws.com
        2694  +
        2695  +
host
        2696  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1651   2697   
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
 1652   2698   
new file mode 100644
 1653   2699   
index 0000000..eb905d2
 1654         -
-- /dev/null
        2700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 1655   2701   
@@ -0,0 +1 @@
        2702  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 1656   2703   
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
 1657   2704   
new file mode 100644
 1658   2705   
index 0000000..1d80ec0
 1659         -
-- /dev/null
        2706  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 1660   2707   
@@ -0,0 +1,3 @@
        2708  +
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
        2709  +
Host:example.amazonaws.com
        2710  +
 1661   2711   
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
 1662   2712   
new file mode 100644
 1663   2713   
index 0000000..bd0239a
 1664         -
-- /dev/null
        2714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 1665   2715   
@@ -0,0 +1,4 @@
        2716  +
AWS4-HMAC-SHA256
        2717  +
20150830T123600Z
        2718  +
20150830/us-east-1/service/aws4_request
        2719  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 1666   2720   
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
 1667   2721   
similarity index 100%
 1668   2722   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 1669   2723   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 1670   2724   
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
 1671   2725   
new file mode 100644
 1672   2726   
index 0000000..0468d80
 1673         -
-- /dev/null
        2727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 1674   2728   
@@ -0,0 +1,12 @@
        2729  +
{
        2730  +
    "credentials": {
        2731  +
        "access_key_id": "AKIDEXAMPLE",
        2732  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2733  +
    },
        2734  +
    "expiration_in_seconds": 3600,
        2735  +
    "normalize": true,
        2736  +
    "region": "us-east-1",
        2737  +
    "service": "service",
        2738  +
    "sign_body": false,
        2739  +
    "timestamp": "2015-08-30T12:36:00Z"
        2740  +
}
              \
 No newline at end of file
 1675   2741   
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
 1676   2742   
similarity index 100%
 1677   2743   
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
 1678   2744   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 1679   2745   
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
 1680   2746   
new file mode 100644
 1681   2747   
index 0000000..80ed433
 1682         -
-- /dev/null
        2748  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 1683   2749   
@@ -0,0 +1 @@
        2750  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 1684   2751   
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
 1685   2752   
new file mode 100644
 1686   2753   
index 0000000..4e614f8
 1687         -
-- /dev/null
        2754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 1688   2755   
@@ -0,0 +1,5 @@
        2756  +
POST /?Param1=value1 HTTP/1.1
        2757  +
Host:example.amazonaws.com
        2758  +
X-Amz-Date:20150830T123600Z
        2759  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        2760  +
 1689   2761   
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
 1690   2762   
similarity index 100%
 1691   2763   
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
 1692   2764   
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
 1693   2765   
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
 1694   2766   
new file mode 100644
 1695   2767   
index 0000000..be66403
 1696         -
-- /dev/null
        2768  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 1697   2769   
@@ -0,0 +1,7 @@
        2770  +
POST
        2771  +
/
        2772  +
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
        2773  +
host:example.amazonaws.com
        2774  +
        2775  +
host
        2776  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1698   2777   
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
 1699   2778   
new file mode 100644
 1700   2779   
index 0000000..20fd32b
 1701         -
-- /dev/null
        2780  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 1702   2781   
@@ -0,0 +1 @@
        2782  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 1703   2783   
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
 1704   2784   
new file mode 100644
 1705   2785   
index 0000000..d1148d0
 1706         -
-- /dev/null
        2786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 1707   2787   
@@ -0,0 +1,3 @@
        2788  +
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
        2789  +
Host:example.amazonaws.com
        2790  +
 1708   2791   
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
 1709   2792   
new file mode 100644
 1710   2793   
index 0000000..1a77103
 1711         -
-- /dev/null
        2794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 1712   2795   
@@ -0,0 +1,4 @@
        2796  +
AWS4-HMAC-SHA256
        2797  +
20150830T123600Z
        2798  +
20150830/us-east-1/service/aws4_request
        2799  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 1713   2800   
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
 1714   2801   
similarity index 100%
 1715   2802   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 1716   2803   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 1717   2804   
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
 1718   2805   
new file mode 100644
 1719   2806   
index 0000000..0468d80
 1720         -
-- /dev/null
        2807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 1721   2808   
@@ -0,0 +1,12 @@
        2809  +
{
        2810  +
    "credentials": {
        2811  +
        "access_key_id": "AKIDEXAMPLE",
        2812  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2813  +
    },
        2814  +
    "expiration_in_seconds": 3600,
        2815  +
    "normalize": true,
        2816  +
    "region": "us-east-1",
        2817  +
    "service": "service",
        2818  +
    "sign_body": false,
        2819  +
    "timestamp": "2015-08-30T12:36:00Z"
        2820  +
}
              \
 No newline at end of file
 1722   2821   
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
 1723   2822   
similarity index 100%
 1724   2823   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 1725   2824   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 1726   2825   
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
 1727   2826   
new file mode 100644
 1728   2827   
index 0000000..80ed433
 1729         -
-- /dev/null
        2828  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 1730   2829   
@@ -0,0 +1 @@
        2830  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 1731   2831   
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
 1732   2832   
new file mode 100644
 1733   2833   
index 0000000..4e614f8
 1734         -
-- /dev/null
        2834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 1735   2835   
@@ -0,0 +1,5 @@
        2836  +
POST /?Param1=value1 HTTP/1.1
        2837  +
Host:example.amazonaws.com
        2838  +
X-Amz-Date:20150830T123600Z
        2839  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        2840  +
 1736   2841   
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
 1737   2842   
similarity index 100%
 1738   2843   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 1739   2844   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 1740   2845   
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
 1741   2846   
new file mode 100644
 1742   2847   
index 0000000..be66403
 1743         -
-- /dev/null
        2848  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 1744   2849   
@@ -0,0 +1,7 @@
        2850  +
POST
        2851  +
/
        2852  +
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
        2853  +
host:example.amazonaws.com
        2854  +
        2855  +
host
        2856  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1745   2857   
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
 1746   2858   
new file mode 100644
 1747   2859   
index 0000000..20fd32b
 1748         -
-- /dev/null
        2860  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 1749   2861   
@@ -0,0 +1 @@
        2862  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 1750   2863   
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
 1751   2864   
new file mode 100644
 1752   2865   
index 0000000..d1148d0
 1753         -
-- /dev/null
        2866  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 1754   2867   
@@ -0,0 +1,3 @@
        2868  +
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
        2869  +
Host:example.amazonaws.com
        2870  +
 1755   2871   
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
 1756   2872   
new file mode 100644
 1757   2873   
index 0000000..1a77103
 1758         -
-- /dev/null
        2874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 1759   2875   
@@ -0,0 +1,4 @@
        2876  +
AWS4-HMAC-SHA256
        2877  +
20150830T123600Z
        2878  +
20150830/us-east-1/service/aws4_request
        2879  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 1760   2880   
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
 1761   2881   
similarity index 100%
 1762   2882   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 1763   2883   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 1764   2884   
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
 1765   2885   
new file mode 100644
 1766   2886   
index 0000000..0468d80
 1767         -
-- /dev/null
        2887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 1768   2888   
@@ -0,0 +1,12 @@
        2889  +
{
        2890  +
    "credentials": {
        2891  +
        "access_key_id": "AKIDEXAMPLE",
        2892  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2893  +
    },
        2894  +
    "expiration_in_seconds": 3600,
        2895  +
    "normalize": true,
        2896  +
    "region": "us-east-1",
        2897  +
    "service": "service",
        2898  +
    "sign_body": false,
        2899  +
    "timestamp": "2015-08-30T12:36:00Z"
        2900  +
}
              \
 No newline at end of file
 1769   2901   
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
 1770   2902   
similarity index 100%
 1771   2903   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 1772   2904   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 1773   2905   
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
 1774   2906   
new file mode 100644
 1775   2907   
index 0000000..629487f
 1776         -
-- /dev/null
        2908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 1777   2909   
@@ -0,0 +1 @@
        2910  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 1778   2911   
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
 1779   2912   
new file mode 100644
 1780   2913   
index 0000000..0d99b1c
 1781         -
-- /dev/null
        2914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 1782   2915   
@@ -0,0 +1,5 @@
        2916  +
POST / HTTP/1.1
        2917  +
Host:example.amazonaws.com
        2918  +
X-Amz-Date:20150830T123600Z
        2919  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2920  +
 1783   2921   
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
 1784   2922   
similarity index 100%
 1785   2923   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 1786   2924   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 1787   2925   
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
 1788   2926   
new file mode 100644
 1789   2927   
index 0000000..d3341e7
 1790         -
-- /dev/null
        2928  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 1791   2929   
@@ -0,0 +1,7 @@
        2930  +
POST
        2931  +
/
        2932  +
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
        2933  +
host:example.amazonaws.com
        2934  +
        2935  +
host
        2936  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1792   2937   
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
 1793   2938   
new file mode 100644
 1794   2939   
index 0000000..79f7e0d
 1795         -
-- /dev/null
        2940  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 1796   2941   
@@ -0,0 +1 @@
        2942  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 1797   2943   
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
 1798   2944   
new file mode 100644
 1799   2945   
index 0000000..94f1b21
 1800         -
-- /dev/null
        2946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 1801   2947   
@@ -0,0 +1,3 @@
        2948  +
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
        2949  +
Host:example.amazonaws.com
        2950  +
 1802   2951   
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
 1803   2952   
new file mode 100644
 1804   2953   
index 0000000..e8f335b
 1805         -
-- /dev/null
        2954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 1806   2955   
@@ -0,0 +1,4 @@
        2956  +
AWS4-HMAC-SHA256
        2957  +
20150830T123600Z
        2958  +
20150830/us-east-1/service/aws4_request
        2959  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 1807   2960   
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
 1808   2961   
similarity index 100%
 1809   2962   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 1810   2963   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 1811   2964   
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
 1812   2965   
similarity index 99%
 1813   2966   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 1814   2967   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 1815   2968   
index fc4bce6..0db1df1 100644
 1816   2969   
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
 1817   2970   
new file mode 100644
 1818   2971   
index 0000000..c218fdf
 1819         -
-- /dev/null
        2972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 1820   2973   
@@ -0,0 +1,11 @@
        2974  +
POST
        2975  +
/
        2976  +
        2977  +
content-length:13
        2978  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        2979  +
host:example.amazonaws.com
        2980  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        2981  +
x-amz-date:20150830T123600Z
        2982  +
        2983  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        2984  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 1821   2985   
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
 1822   2986   
new file mode 100644
 1823   2987   
index 0000000..836aa8b
 1824         -
-- /dev/null
        2988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 1825   2989   
@@ -0,0 +1 @@
        2990  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 1826   2991   
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
 1827   2992   
new file mode 100644
 1828   2993   
index 0000000..9262d53
 1829         -
-- /dev/null
        2994  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 1830   2995   
@@ -0,0 +1,9 @@
        2996  +
POST / HTTP/1.1
        2997  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        2998  +
Host:example.amazonaws.com
        2999  +
Content-Length:13
        3000  +
X-Amz-Date:20150830T123600Z
        3001  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3002  +
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
        3003  +
        3004  +
Param1=value1
              \
 No newline at end of file
 1831   3005   
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
 1832   3006   
new file mode 100644
 1833   3007   
index 0000000..ddbdccc
 1834         -
-- /dev/null
        3008  +
++ 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
 1835   3009   
@@ -0,0 +1,4 @@
        3010  +
AWS4-HMAC-SHA256
        3011  +
20150830T123600Z
        3012  +
20150830/us-east-1/service/aws4_request
        3013  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 1836   3014   
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
 1837   3015   
new file mode 100644
 1838   3016   
index 0000000..596a579
 1839         -
-- /dev/null
        3017  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 1840   3018   
@@ -0,0 +1,9 @@
        3019  +
POST
        3020  +
/
        3021  +
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
        3022  +
content-length:13
        3023  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3024  +
host:example.amazonaws.com
        3025  +
        3026  +
content-length;content-type;host
        3027  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 1841   3028   
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
 1842   3029   
new file mode 100644
 1843   3030   
index 0000000..bc85cd8
 1844         -
-- /dev/null
        3031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 1845   3032   
@@ -0,0 +1 @@
        3033  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 1846   3034   
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
 1847   3035   
new file mode 100644
 1848   3036   
index 0000000..16b59e5
 1849         -
-- /dev/null
        3037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 1850   3038   
@@ -0,0 +1,6 @@
        3039  +
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
        3040  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3041  +
Host:example.amazonaws.com
        3042  +
Content-Length:13
        3043  +
        3044  +
Param1=value1
              \
 No newline at end of file
 1851   3045   
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
 1852   3046   
new file mode 100644
 1853   3047   
index 0000000..50074af
 1854         -
-- /dev/null
        3048  +
++ 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
 1855   3049   
@@ -0,0 +1,4 @@
        3050  +
AWS4-HMAC-SHA256
        3051  +
20150830T123600Z
        3052  +
20150830/us-east-1/service/aws4_request
        3053  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 1856   3054   
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
 1857   3055   
similarity index 89%
 1858   3056   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 1859   3057   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 1860   3058   
index b711c25..8289eaa 100644
 1861   3059   
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
 1862   3060   
similarity index 99%
 1863   3061   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 1864   3062   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 1865   3063   
index fc4bce6..0db1df1 100644
 1866   3064   
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
 1867   3065   
new file mode 100644
 1868   3066   
index 0000000..4d116a5
 1869         -
-- /dev/null
        3067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 1870   3068   
@@ -0,0 +1,11 @@
        3069  +
POST
        3070  +
/
        3071  +
        3072  +
content-length:13
        3073  +
content-type:application/x-www-form-urlencoded
        3074  +
host:example.amazonaws.com
        3075  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3076  +
x-amz-date:20150830T123600Z
        3077  +
        3078  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3079  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 1871   3080   
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
 1872   3081   
new file mode 100644
 1873   3082   
index 0000000..0d2ac37
 1874         -
-- /dev/null
        3083  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 1875   3084   
@@ -0,0 +1 @@
        3085  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 1876   3086   
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
 1877   3087   
new file mode 100644
 1878   3088   
index 0000000..bd5e49c
 1879         -
-- /dev/null
        3089  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 1880   3090   
@@ -0,0 +1,9 @@
        3091  +
POST / HTTP/1.1
        3092  +
Content-Type:application/x-www-form-urlencoded
        3093  +
Host:example.amazonaws.com
        3094  +
Content-Length:13
        3095  +
X-Amz-Date:20150830T123600Z
        3096  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3097  +
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
        3098  +
        3099  +
Param1=value1
              \
 No newline at end of file
 1881   3100   
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
 1882   3101   
new file mode 100644
 1883   3102   
index 0000000..f1c599c
 1884         -
-- /dev/null
        3103  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 1885   3104   
@@ -0,0 +1,4 @@
        3105  +
AWS4-HMAC-SHA256
        3106  +
20150830T123600Z
        3107  +
20150830/us-east-1/service/aws4_request
        3108  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 1886   3109   
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
 1887   3110   
new file mode 100644
 1888   3111   
index 0000000..1fc1bb7
 1889         -
-- /dev/null
        3112  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 1890   3113   
@@ -0,0 +1,9 @@
        3114  +
POST
        3115  +
/
        3116  +
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
        3117  +
content-length:13
        3118  +
content-type:application/x-www-form-urlencoded
        3119  +
host:example.amazonaws.com
        3120  +
        3121  +
content-length;content-type;host
        3122  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 1891   3123   
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
 1892   3124   
new file mode 100644
 1893   3125   
index 0000000..98c91b3
 1894         -
-- /dev/null
        3126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 1895   3127   
@@ -0,0 +1 @@
        3128  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 1896   3129   
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
 1897   3130   
new file mode 100644
 1898   3131   
index 0000000..055cd7a
 1899         -
-- /dev/null
        3132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 1900   3133   
@@ -0,0 +1,6 @@
        3134  +
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
        3135  +
Content-Type:application/x-www-form-urlencoded
        3136  +
Host:example.amazonaws.com
        3137  +
Content-Length:13
        3138  +
        3139  +
Param1=value1
              \
 No newline at end of file
 1901   3140   
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
 1902   3141   
new file mode 100644
 1903   3142   
index 0000000..db7fc27
 1904         -
-- /dev/null
        3143  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 1905   3144   
@@ -0,0 +1,4 @@
        3145  +
AWS4-HMAC-SHA256
        3146  +
20150830T123600Z
        3147  +
20150830/us-east-1/service/aws4_request
        3148  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 1906   3149   
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
 1907   3150   
similarity index 88%
 1908   3151   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 1909   3152   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 1910   3153   
index 0091102..760b2d3 100644
 1911   3154   
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
 1912   3155   
new file mode 100644
 1913   3156   
index 0000000..0468d80
 1914         -
-- /dev/null
        3157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 1915   3158   
@@ -0,0 +1,12 @@
        3159  +
{
        3160  +
    "credentials": {
        3161  +
        "access_key_id": "AKIDEXAMPLE",
        3162  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3163  +
    },
        3164  +
    "expiration_in_seconds": 3600,
        3165  +
    "normalize": true,
        3166  +
    "region": "us-east-1",
        3167  +
    "service": "service",
        3168  +
    "sign_body": false,
        3169  +
    "timestamp": "2015-08-30T12:36:00Z"
        3170  +
}
              \
 No newline at end of file
 1916   3171   
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
 1917   3172   
similarity index 99%
 1918   3173   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 1919   3174   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 1920   3175   
index ccb5f43..1bc448e 100644
 1921   3176   
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
 1922   3177   
new file mode 100644
 1923   3178   
index 0000000..489c182
 1924         -
-- /dev/null
        3179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 1925   3180   
@@ -0,0 +1 @@
        3181  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 1926   3182   
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
 1927   3183   
new file mode 100644
 1928   3184   
index 0000000..e1b8dbf
 1929         -
-- /dev/null
        3185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 1930   3186   
@@ -0,0 +1,9 @@
        3187  +
GET / HTTP/1.1
        3188  +
Host:example.amazonaws.com
        3189  +
My-Header1:value2
        3190  +
My-Header1:value2
        3191  +
My-Header1:value1
        3192  +
X-Amz-Date:20150830T123600Z
        3193  +
X-Amz-Region-Set:us-east-1
        3194  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3195  +
 1931   3196   
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
 1932   3197   
similarity index 99%
 1933   3198   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 1934   3199   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 1935   3200   
index 8783461..bfc4619 100644
 1936   3201   
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
 1937   3202   
new file mode 100644
 1938   3203   
index 0000000..379dcb2
 1939         -
-- /dev/null
        3204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 1940   3205   
@@ -0,0 +1,4 @@
        3206  +
{
        3207  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3208  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3209  +
}
 1941   3210   
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
 1942   3211   
similarity index 99%
 1943   3212   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 1944   3213   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 1945   3214   
index 9561297..c05c3f5 100644
 1946   3215   
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
 1947   3216   
new file mode 100644
 1948   3217   
index 0000000..de9a4c3
 1949         -
-- /dev/null
        3218  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 1950   3219   
@@ -0,0 +1 @@
        3220  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 1951   3221   
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
 1952   3222   
new file mode 100644
 1953   3223   
index 0000000..6c6b8c4
 1954         -
-- /dev/null
        3224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 1955   3225   
@@ -0,0 +1,6 @@
        3226  +
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
        3227  +
Host:example.amazonaws.com
        3228  +
My-Header1:value2
        3229  +
My-Header1:value2
        3230  +
My-Header1:value1
        3231  +
 1956   3232   
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
 1957   3233   
similarity index 99%
 1958   3234   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 1959   3235   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 1960   3236   
index 3140f6f..4eef106 100644
 1961   3237   
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
 1962   3238   
similarity index 78%
 1963   3239   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 1964   3240   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 1965   3241   
index 08a0364..40455ce 100644
 1966         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 1967   3243   
@@ -1,6 +1,5 @@
 1968   3244   
GET / HTTP/1.1
 1969   3245   
Host:example.amazonaws.com
 1970   3246   
My-Header1:value2
 1971   3247   
My-Header1:value2
 1972   3248   
My-Header1:value1
 1973         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1974   3249   
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
 1975   3250   
new file mode 100644
 1976   3251   
index 0000000..0468d80
 1977         -
-- /dev/null
        3252  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 1978   3253   
@@ -0,0 +1,12 @@
        3254  +
{
        3255  +
    "credentials": {
        3256  +
        "access_key_id": "AKIDEXAMPLE",
        3257  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3258  +
    },
        3259  +
    "expiration_in_seconds": 3600,
        3260  +
    "normalize": true,
        3261  +
    "region": "us-east-1",
        3262  +
    "service": "service",
        3263  +
    "sign_body": false,
        3264  +
    "timestamp": "2015-08-30T12:36:00Z"
        3265  +
}
              \
 No newline at end of file
 1979   3266   
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
 1980   3267   
new file mode 100644
 1981   3268   
index 0000000..69526cd
 1982         -
-- /dev/null
        3269  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 1983   3270   
@@ -0,0 +1,10 @@
        3271  +
GET
        3272  +
/
        3273  +
        3274  +
host:example.amazonaws.com
        3275  +
my-header1:value1 value2 value3
        3276  +
x-amz-date:20150830T123600Z
        3277  +
x-amz-region-set:us-east-1
        3278  +
        3279  +
host;my-header1;x-amz-date;x-amz-region-set
        3280  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1984   3281   
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
 1985   3282   
new file mode 100644
 1986   3283   
index 0000000..d51b4f3
 1987         -
-- /dev/null
        3284  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 1988   3285   
@@ -0,0 +1 @@
        3286  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 1989   3287   
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
 1990   3288   
new file mode 100644
 1991   3289   
index 0000000..8131420
 1992         -
-- /dev/null
        3290  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 1993   3291   
@@ -0,0 +1,9 @@
        3292  +
GET / HTTP/1.1
        3293  +
Host:example.amazonaws.com
        3294  +
My-Header1:value1
        3295  +
  value2
        3296  +
     value3
        3297  +
X-Amz-Date:20150830T123600Z
        3298  +
X-Amz-Region-Set:us-east-1
        3299  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3300  +
 1994   3301   
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
 1995   3302   
new file mode 100644
 1996   3303   
index 0000000..e4d99fa
 1997         -
-- /dev/null
        3304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 1998   3305   
@@ -0,0 +1,4 @@
        3306  +
AWS4-ECDSA-P256-SHA256
        3307  +
20150830T123600Z
        3308  +
20150830/service/aws4_request
        3309  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 1999   3310   
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
 2000   3311   
new file mode 100644
 2001   3312   
index 0000000..379dcb2
 2002         -
-- /dev/null
        3313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 2003   3314   
@@ -0,0 +1,4 @@
        3315  +
{
        3316  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3317  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3318  +
}
 2004   3319   
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
 2005   3320   
new file mode 100644
 2006   3321   
index 0000000..3c4d52f
 2007         -
-- /dev/null
        3322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 2008   3323   
@@ -0,0 +1,8 @@
        3324  +
GET
        3325  +
/
        3326  +
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
        3327  +
host:example.amazonaws.com
        3328  +
my-header1:value1 value2 value3
        3329  +
        3330  +
host;my-header1
        3331  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2009   3332   
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
 2010   3333   
new file mode 100644
 2011   3334   
index 0000000..4e63f9a
 2012         -
-- /dev/null
        3335  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 2013   3336   
@@ -0,0 +1 @@
        3337  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 2014   3338   
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
 2015   3339   
new file mode 100644
 2016   3340   
index 0000000..adf1f09
 2017         -
-- /dev/null
        3341  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 2018   3342   
@@ -0,0 +1,6 @@
        3343  +
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
        3344  +
Host:example.amazonaws.com
        3345  +
My-Header1:value1
        3346  +
  value2
        3347  +
     value3
        3348  +
 2019   3349   
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
 2020   3350   
new file mode 100644
 2021   3351   
index 0000000..e085407
 2022         -
-- /dev/null
        3352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 2023   3353   
@@ -0,0 +1,4 @@
        3354  +
AWS4-ECDSA-P256-SHA256
        3355  +
20150830T123600Z
        3356  +
20150830/service/aws4_request
        3357  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 2024   3358   
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
 2025   3359   
new file mode 100644
 2026   3360   
index 0000000..b5026cd
 2027         -
-- /dev/null
        3361  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 2028   3362   
@@ -0,0 +1,5 @@
        3363  +
GET / HTTP/1.1
        3364  +
Host:example.amazonaws.com
        3365  +
My-Header1:value1
        3366  +
  value2
        3367  +
     value3
 2029   3368   
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
 2030   3369   
new file mode 100644
 2031   3370   
index 0000000..0468d80
 2032         -
-- /dev/null
        3371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 2033   3372   
@@ -0,0 +1,12 @@
        3373  +
{
        3374  +
    "credentials": {
        3375  +
        "access_key_id": "AKIDEXAMPLE",
        3376  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3377  +
    },
        3378  +
    "expiration_in_seconds": 3600,
        3379  +
    "normalize": true,
        3380  +
    "region": "us-east-1",
        3381  +
    "service": "service",
        3382  +
    "sign_body": false,
        3383  +
    "timestamp": "2015-08-30T12:36:00Z"
        3384  +
}
              \
 No newline at end of file
 2034   3385   
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
 2035   3386   
similarity index 99%
 2036   3387   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 2037   3388   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 2038   3389   
index 9375193..533afdb 100644
 2039   3390   
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
 2040   3391   
new file mode 100644
 2041   3392   
index 0000000..057b426
 2042         -
-- /dev/null
        3393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 2043   3394   
@@ -0,0 +1 @@
        3395  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 2044   3396   
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
 2045   3397   
new file mode 100644
 2046   3398   
index 0000000..4e4ccf0
 2047         -
-- /dev/null
        3399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 2048   3400   
@@ -0,0 +1,10 @@
        3401  +
GET / HTTP/1.1
        3402  +
Host:example.amazonaws.com
        3403  +
My-Header1:value4
        3404  +
My-Header1:value1
        3405  +
My-Header1:value3
        3406  +
My-Header1:value2
        3407  +
X-Amz-Date:20150830T123600Z
        3408  +
X-Amz-Region-Set:us-east-1
        3409  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        3410  +
 2049   3411   
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
 2050   3412   
similarity index 99%
 2051   3413   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 2052   3414   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 2053   3415   
index 6400baf..e68c952 100644
 2054   3416   
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
 2055   3417   
new file mode 100644
 2056   3418   
index 0000000..379dcb2
 2057         -
-- /dev/null
        3419  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 2058   3420   
@@ -0,0 +1,4 @@
        3421  +
{
        3422  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3423  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3424  +
}
 2059   3425   
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
 2060   3426   
similarity index 99%
 2061   3427   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 2062   3428   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 2063   3429   
index ecf494a..68450fe 100644
 2064   3430   
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
 2065   3431   
new file mode 100644
 2066   3432   
index 0000000..9df2eb3
 2067         -
-- /dev/null
        3433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 2068   3434   
@@ -0,0 +1 @@
        3435  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 2069   3436   
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
 2070   3437   
new file mode 100644
 2071   3438   
index 0000000..62f8cb7
 2072         -
-- /dev/null
        3439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 2073   3440   
@@ -0,0 +1,7 @@
        3441  +
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
        3442  +
Host:example.amazonaws.com
        3443  +
My-Header1:value4
        3444  +
My-Header1:value1
        3445  +
My-Header1:value3
        3446  +
My-Header1:value2
        3447  +
 2074   3448   
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
 2075   3449   
similarity index 99%
 2076   3450   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 2077   3451   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 2078   3452   
index b584179..2bcf7b1 100644
 2079   3453   
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
 2080   3454   
similarity index 80%
 2081   3455   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 2082   3456   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 2083   3457   
index f7bd9e6..2c6f49d 100644
 2084         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        3458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 2085   3459   
@@ -1,7 +1,6 @@
 2086   3460   
GET / HTTP/1.1
 2087   3461   
Host:example.amazonaws.com
 2088   3462   
My-Header1:value4
 2089   3463   
My-Header1:value1
 2090   3464   
My-Header1:value3
 2091   3465   
My-Header1:value2
 2092         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2093   3466   
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
 2094   3467   
new file mode 100644
 2095   3468   
index 0000000..0468d80
 2096         -
-- /dev/null
        3469  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 2097   3470   
@@ -0,0 +1,12 @@
        3471  +
{
        3472  +
    "credentials": {
        3473  +
        "access_key_id": "AKIDEXAMPLE",
        3474  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3475  +
    },
        3476  +
    "expiration_in_seconds": 3600,
        3477  +
    "normalize": true,
        3478  +
    "region": "us-east-1",
        3479  +
    "service": "service",
        3480  +
    "sign_body": false,
        3481  +
    "timestamp": "2015-08-30T12:36:00Z"
        3482  +
}
              \
 No newline at end of file
 2098   3483   
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
 2099   3484   
similarity index 99%
 2100   3485   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 2101   3486   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 2102   3487   
index e91e952..94b6be5 100644
 2103   3488   
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
 2104   3489   
new file mode 100644
 2105   3490   
index 0000000..bf8c3cb
 2106         -
-- /dev/null
        3491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 2107   3492   
@@ -0,0 +1 @@
        3493  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 2108   3494   
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
 2109   3495   
new file mode 100644
 2110   3496   
index 0000000..f7f054d
 2111         -
-- /dev/null
        3497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 2112   3498   
@@ -0,0 +1,8 @@
        3499  +
GET / HTTP/1.1
        3500  +
Host:example.amazonaws.com
        3501  +
My-Header1: value1
        3502  +
My-Header2: "a   b   c"
        3503  +
X-Amz-Date:20150830T123600Z
        3504  +
X-Amz-Region-Set:us-east-1
        3505  +
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
        3506  +
 2113   3507   
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
 2114   3508   
similarity index 99%
 2115   3509   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 2116   3510   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 2117   3511   
index 0e407d8..a2c9c05 100644
 2118   3512   
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
 2119   3513   
new file mode 100644
 2120   3514   
index 0000000..379dcb2
 2121         -
-- /dev/null
        3515  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 2122   3516   
@@ -0,0 +1,4 @@
        3517  +
{
        3518  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3519  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3520  +
}
 2123   3521   
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
 2124   3522   
similarity index 99%
 2125   3523   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 2126   3524   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 2127   3525   
index 8a3b042..3a51150 100644
 2128   3526   
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
 2129   3527   
new file mode 100644
 2130   3528   
index 0000000..0033053
 2131         -
-- /dev/null
        3529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 2132   3530   
@@ -0,0 +1 @@
        3531  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 2133   3532   
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
 2134   3533   
new file mode 100644
 2135   3534   
index 0000000..1537888
 2136         -
-- /dev/null
        3535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 2137   3536   
@@ -0,0 +1,5 @@
        3537  +
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
        3538  +
Host:example.amazonaws.com
        3539  +
My-Header1: value1
        3540  +
My-Header2: "a   b   c"
        3541  +
 2138   3542   
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
 2139   3543   
similarity index 99%
 2140   3544   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 2141   3545   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 2142   3546   
index 5eead25..633dc1f 100644
 2143   3547   
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
 2144   3548   
similarity index 75%
 2145   3549   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 2146   3550   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 2147   3551   
index 901f36c..ad1ea98 100644
 2148         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        3552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 2149   3553   
@@ -1,5 +1,4 @@
 2150   3554   
GET / HTTP/1.1
 2151   3555   
Host:example.amazonaws.com
 2152   3556   
My-Header1: value1
 2153   3557   
My-Header2: "a   b   c"
 2154         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2155   3558   
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
 2156   3559   
new file mode 100644
 2157   3560   
index 0000000..0468d80
 2158         -
-- /dev/null
        3561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 2159   3562   
@@ -0,0 +1,12 @@
        3563  +
{
        3564  +
    "credentials": {
        3565  +
        "access_key_id": "AKIDEXAMPLE",
        3566  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3567  +
    },
        3568  +
    "expiration_in_seconds": 3600,
        3569  +
    "normalize": true,
        3570  +
    "region": "us-east-1",
        3571  +
    "service": "service",
        3572  +
    "sign_body": false,
        3573  +
    "timestamp": "2015-08-30T12:36:00Z"
        3574  +
}
              \
 No newline at end of file
 2160   3575   
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
 2161   3576   
similarity index 99%
 2162   3577   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 2163   3578   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 2164   3579   
index 47e7128..76db73d 100644
 2165   3580   
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
 2166   3581   
new file mode 100644
 2167   3582   
index 0000000..cbd6ae2
 2168         -
-- /dev/null
        3583  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 2169   3584   
@@ -0,0 +1 @@
        3585  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 2170   3586   
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
 2171   3587   
new file mode 100644
 2172   3588   
index 0000000..a343fcf
 2173         -
-- /dev/null
        3589  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 2174   3590   
@@ -0,0 +1,6 @@
        3591  +
GET /example/.. HTTP/1.1
        3592  +
Host:example.amazonaws.com
        3593  +
X-Amz-Date:20150830T123600Z
        3594  +
X-Amz-Region-Set:us-east-1
        3595  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        3596  +
 2175   3597   
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
 2176   3598   
similarity index 99%
 2177   3599   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 2178   3600   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 2179   3601   
index 95d7219..600f1d8 100644
 2180   3602   
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
 2181   3603   
new file mode 100644
 2182   3604   
index 0000000..379dcb2
 2183         -
-- /dev/null
        3605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 2184   3606   
@@ -0,0 +1,4 @@
        3607  +
{
        3608  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3609  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3610  +
}
 2185   3611   
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
 2186   3612   
similarity index 99%
 2187   3613   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 2188   3614   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 2189   3615   
index a34ea26..779c51c 100644
 2190   3616   
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
 2191   3617   
new file mode 100644
 2192   3618   
index 0000000..3cc88e6
 2193         -
-- /dev/null
        3619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 2194   3620   
@@ -0,0 +1 @@
        3621  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 2195   3622   
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
 2196   3623   
new file mode 100644
 2197   3624   
index 0000000..f68dde8
 2198         -
-- /dev/null
        3625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 2199   3626   
@@ -0,0 +1,3 @@
        3627  +
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
        3628  +
Host:example.amazonaws.com
        3629  +
 2200   3630   
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
 2201   3631   
similarity index 99%
 2202   3632   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 2203   3633   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 2204   3634   
index 48f855c..6e29a7e 100644
 2205   3635   
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
 2206   3636   
similarity index 65%
 2207   3637   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 2208   3638   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 2209   3639   
index 9d6d7ca..6aa9f99 100644
 2210         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        3640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 2211   3641   
@@ -1,3 +1,2 @@
 2212   3642   
GET /example/.. HTTP/1.1
 2213   3643   
Host:example.amazonaws.com
 2214         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2215   3644   
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
 2216   3645   
new file mode 100644
 2217   3646   
index 0000000..0468d80
 2218         -
-- /dev/null
        3647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 2219   3648   
@@ -0,0 +1,12 @@
        3649  +
{
        3650  +
    "credentials": {
        3651  +
        "access_key_id": "AKIDEXAMPLE",
        3652  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3653  +
    },
        3654  +
    "expiration_in_seconds": 3600,
        3655  +
    "normalize": true,
        3656  +
    "region": "us-east-1",
        3657  +
    "service": "service",
        3658  +
    "sign_body": false,
        3659  +
    "timestamp": "2015-08-30T12:36:00Z"
        3660  +
}
              \
 No newline at end of file
 2220   3661   
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
 2221   3662   
similarity index 99%
 2222   3663   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 2223   3664   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 2224   3665   
index 47e7128..76db73d 100644
 2225   3666   
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
 2226   3667   
new file mode 100644
 2227   3668   
index 0000000..f7a7ebe
 2228         -
-- /dev/null
        3669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 2229   3670   
@@ -0,0 +1 @@
        3671  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 2230   3672   
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
 2231   3673   
new file mode 100644
 2232   3674   
index 0000000..9d2c50d
 2233         -
-- /dev/null
        3675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 2234   3676   
@@ -0,0 +1,6 @@
        3677  +
GET /example1/example2/../.. HTTP/1.1
        3678  +
Host:example.amazonaws.com
        3679  +
X-Amz-Date:20150830T123600Z
        3680  +
X-Amz-Region-Set:us-east-1
        3681  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        3682  +
 2235   3683   
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
 2236   3684   
similarity index 99%
 2237   3685   
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
 2238   3686   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 2239   3687   
index 95d7219..600f1d8 100644
 2240   3688   
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
 2241   3689   
new file mode 100644
 2242   3690   
index 0000000..379dcb2
 2243         -
-- /dev/null
        3691  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 2244   3692   
@@ -0,0 +1,4 @@
        3693  +
{
        3694  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3695  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3696  +
}
 2245   3697   
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
 2246   3698   
similarity index 99%
 2247   3699   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 2248   3700   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 2249   3701   
index a34ea26..779c51c 100644
 2250   3702   
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
 2251   3703   
new file mode 100644
 2252   3704   
index 0000000..45ef286
 2253         -
-- /dev/null
        3705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 2254   3706   
@@ -0,0 +1 @@
        3707  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 2255   3708   
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
 2256   3709   
new file mode 100644
 2257   3710   
index 0000000..0d16f66
 2258         -
-- /dev/null
        3711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 2259   3712   
@@ -0,0 +1,3 @@
        3713  +
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
        3714  +
Host:example.amazonaws.com
        3715  +
 2260   3716   
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
 2261   3717   
similarity index 99%
 2262   3718   
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
 2263   3719   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 2264   3720   
index 48f855c..6e29a7e 100644
 2265   3721   
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
 2266   3722   
similarity index 70%
 2267   3723   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 2268   3724   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 2269   3725   
index cfd4e8b..a856c10 100644
 2270         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        3726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 2271   3727   
@@ -1,3 +1,2 @@
 2272   3728   
GET /example1/example2/../.. HTTP/1.1
 2273   3729   
Host:example.amazonaws.com
 2274         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2275   3730   
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
 2276   3731   
new file mode 100644
 2277   3732   
index 0000000..7bee5c7
 2278         -
-- /dev/null
        3733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 2279   3734   
@@ -0,0 +1,12 @@
        3735  +
{
        3736  +
    "credentials": {
        3737  +
        "access_key_id": "AKIDEXAMPLE",
        3738  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3739  +
    },
        3740  +
    "expiration_in_seconds": 3600,
        3741  +
    "normalize": false,
        3742  +
    "region": "us-east-1",
        3743  +
    "service": "service",
        3744  +
    "sign_body": false,
        3745  +
    "timestamp": "2015-08-30T12:36:00Z"
        3746  +
}
              \
 No newline at end of file
 2280   3747   
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
 2281   3748   
similarity index 99%
 2282   3749   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 2283   3750   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 2284   3751   
index 5e1d1cf..e4e6d57 100644
 2285   3752   
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
 2286   3753   
new file mode 100644
 2287   3754   
index 0000000..2d1b47c
 2288         -
-- /dev/null
        3755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 2289   3756   
@@ -0,0 +1 @@
        3757  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 2290   3758   
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
 2291   3759   
new file mode 100644
 2292   3760   
index 0000000..7158179
 2293         -
-- /dev/null
        3761  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 2294   3762   
@@ -0,0 +1,6 @@
        3763  +
GET /example1/example2/../.. HTTP/1.1
        3764  +
Host:example.amazonaws.com
        3765  +
X-Amz-Date:20150830T123600Z
        3766  +
X-Amz-Region-Set:us-east-1
        3767  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        3768  +
 2295   3769   
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
 2296   3770   
similarity index 99%
 2297   3771   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 2298   3772   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 2299   3773   
index 1cca6cf..db60c8e 100644
 2300   3774   
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
 2301   3775   
new file mode 100644
 2302   3776   
index 0000000..379dcb2
 2303         -
-- /dev/null
        3777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 2304   3778   
@@ -0,0 +1,4 @@
        3779  +
{
        3780  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3781  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3782  +
}
 2305   3783   
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
 2306   3784   
similarity index 99%
 2307   3785   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 2308   3786   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 2309   3787   
index 95dc104..0d963ba 100644
 2310   3788   
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
 2311   3789   
new file mode 100644
 2312   3790   
index 0000000..ae774e4
 2313         -
-- /dev/null
        3791  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 2314   3792   
@@ -0,0 +1 @@
        3793  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 2315   3794   
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
 2316   3795   
new file mode 100644
 2317   3796   
index 0000000..be6b86e
 2318         -
-- /dev/null
        3797  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 2319   3798   
@@ -0,0 +1,3 @@
        3799  +
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
        3800  +
Host:example.amazonaws.com
        3801  +
 2320   3802   
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
 2321   3803   
similarity index 99%
 2322   3804   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 2323   3805   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 2324   3806   
index 50edce6..fcc70cd 100644
 2325   3807   
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
 2326   3808   
new file mode 100644
 2327   3809   
index 0000000..a856c10
 2328         -
-- /dev/null
        3810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 2329   3811   
@@ -0,0 +1,2 @@
        3812  +
GET /example1/example2/../.. HTTP/1.1
        3813  +
Host:example.amazonaws.com
 2330   3814   
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
 2331   3815   
new file mode 100644
 2332   3816   
index 0000000..7bee5c7
 2333         -
-- /dev/null
        3817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 2334   3818   
@@ -0,0 +1,12 @@
        3819  +
{
        3820  +
    "credentials": {
        3821  +
        "access_key_id": "AKIDEXAMPLE",
        3822  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3823  +
    },
        3824  +
    "expiration_in_seconds": 3600,
        3825  +
    "normalize": false,
        3826  +
    "region": "us-east-1",
        3827  +
    "service": "service",
        3828  +
    "sign_body": false,
        3829  +
    "timestamp": "2015-08-30T12:36:00Z"
        3830  +
}
              \
 No newline at end of file
 2335   3831   
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
 2336   3832   
similarity index 99%
 2337   3833   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 2338   3834   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 2339   3835   
index d6a0abe..22def1a 100644
 2340   3836   
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
 2341   3837   
new file mode 100644
 2342   3838   
index 0000000..9251bad
 2343         -
-- /dev/null
        3839  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 2344   3840   
@@ -0,0 +1 @@
        3841  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 2345   3842   
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
 2346   3843   
new file mode 100644
 2347   3844   
index 0000000..f1bb60f
 2348         -
-- /dev/null
        3845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 2349   3846   
@@ -0,0 +1,6 @@
        3847  +
GET /example/.. HTTP/1.1
        3848  +
Host:example.amazonaws.com
        3849  +
X-Amz-Date:20150830T123600Z
        3850  +
X-Amz-Region-Set:us-east-1
        3851  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        3852  +
 2350   3853   
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
 2351   3854   
similarity index 99%
 2352   3855   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 2353   3856   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 2354   3857   
index 4a34e93..5673a20 100644
 2355   3858   
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
 2356   3859   
new file mode 100644
 2357   3860   
index 0000000..379dcb2
 2358         -
-- /dev/null
        3861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 2359   3862   
@@ -0,0 +1,4 @@
        3863  +
{
        3864  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3865  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3866  +
}
 2360   3867   
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
 2361   3868   
similarity index 99%
 2362   3869   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 2363   3870   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 2364   3871   
index b1d123e..a1c22e0 100644
 2365   3872   
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
 2366   3873   
new file mode 100644
 2367   3874   
index 0000000..9f0f686
 2368         -
-- /dev/null
        3875  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 2369   3876   
@@ -0,0 +1 @@
        3877  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 2370   3878   
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
 2371   3879   
new file mode 100644
 2372   3880   
index 0000000..d1d451a
 2373         -
-- /dev/null
        3881  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 2374   3882   
@@ -0,0 +1,3 @@
        3883  +
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
        3884  +
Host:example.amazonaws.com
        3885  +
 2375   3886   
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
 2376   3887   
similarity index 99%
 2377   3888   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 2378   3889   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 2379   3890   
index a17f5ab..81b41e8 100644
 2380   3891   
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
 2381   3892   
new file mode 100644
 2382   3893   
index 0000000..6aa9f99
 2383         -
-- /dev/null
        3894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 2384   3895   
@@ -0,0 +1,2 @@
        3896  +
GET /example/.. HTTP/1.1
        3897  +
Host:example.amazonaws.com
 2385   3898   
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
 2386   3899   
new file mode 100644
 2387   3900   
index 0000000..0468d80
 2388         -
-- /dev/null
        3901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 2389   3902   
@@ -0,0 +1,12 @@
        3903  +
{
        3904  +
    "credentials": {
        3905  +
        "access_key_id": "AKIDEXAMPLE",
        3906  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3907  +
    },
        3908  +
    "expiration_in_seconds": 3600,
        3909  +
    "normalize": true,
        3910  +
    "region": "us-east-1",
        3911  +
    "service": "service",
        3912  +
    "sign_body": false,
        3913  +
    "timestamp": "2015-08-30T12:36:00Z"
        3914  +
}
              \
 No newline at end of file
 2390   3915   
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
 2391   3916   
similarity index 99%
 2392   3917   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 2393   3918   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 2394   3919   
index 47e7128..76db73d 100644
 2395   3920   
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
 2396   3921   
new file mode 100644
 2397   3922   
index 0000000..ca6e84e
 2398         -
-- /dev/null
        3923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 2399   3924   
@@ -0,0 +1 @@
        3925  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 2400   3926   
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
 2401   3927   
new file mode 100644
 2402   3928   
index 0000000..a7c764c
 2403         -
-- /dev/null
        3929  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 2404   3930   
@@ -0,0 +1,6 @@
        3931  +
GET /./ HTTP/1.1
        3932  +
Host:example.amazonaws.com
        3933  +
X-Amz-Date:20150830T123600Z
        3934  +
X-Amz-Region-Set:us-east-1
        3935  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        3936  +
 2405   3937   
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
 2406   3938   
similarity index 99%
 2407   3939   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 2408   3940   
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
 2409   3941   
index 95d7219..600f1d8 100644
 2410   3942   
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
 2411   3943   
new file mode 100644
 2412   3944   
index 0000000..379dcb2
 2413         -
-- /dev/null
        3945  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 2414   3946   
@@ -0,0 +1,4 @@
        3947  +
{
        3948  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3949  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3950  +
}
 2415   3951   
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
 2416   3952   
similarity index 99%
 2417   3953   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 2418   3954   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 2419   3955   
index a34ea26..779c51c 100644
 2420   3956   
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
 2421   3957   
new file mode 100644
 2422   3958   
index 0000000..4b6ed09
 2423         -
-- /dev/null
        3959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 2424   3960   
@@ -0,0 +1 @@
        3961  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 2425   3962   
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
 2426   3963   
new file mode 100644
 2427   3964   
index 0000000..d6c7176
 2428         -
-- /dev/null
        3965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 2429   3966   
@@ -0,0 +1,3 @@
        3967  +
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
        3968  +
Host:example.amazonaws.com
        3969  +
 2430   3970   
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
 2431   3971   
similarity index 99%
 2432   3972   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 2433   3973   
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
 2434   3974   
index 48f855c..6e29a7e 100644
 2435   3975   
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
 2436   3976   
similarity index 61%
 2437   3977   
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
 2438   3978   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 2439   3979   
index f3537b7..2c5ff38 100644
 2440         -
-- 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
        3980  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 2441   3981   
@@ -1,3 +1,2 @@
 2442   3982   
GET /./ HTTP/1.1
 2443   3983   
Host:example.amazonaws.com
 2444         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2445   3984   
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
 2446   3985   
new file mode 100644
 2447   3986   
index 0000000..7bee5c7
 2448         -
-- /dev/null
        3987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 2449   3988   
@@ -0,0 +1,12 @@
        3989  +
{
        3990  +
    "credentials": {
        3991  +
        "access_key_id": "AKIDEXAMPLE",
        3992  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3993  +
    },
        3994  +
    "expiration_in_seconds": 3600,
        3995  +
    "normalize": false,
        3996  +
    "region": "us-east-1",
        3997  +
    "service": "service",
        3998  +
    "sign_body": false,
        3999  +
    "timestamp": "2015-08-30T12:36:00Z"
        4000  +
}
              \
 No newline at end of file
 2450   4001   
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
 2451   4002   
similarity index 99%
 2452   4003   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 2453   4004   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 2454   4005   
index d05303d..9257ac4 100644
 2455   4006   
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
 2456   4007   
new file mode 100644
 2457   4008   
index 0000000..2eb1aa5
 2458         -
-- /dev/null
        4009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 2459   4010   
@@ -0,0 +1 @@
        4011  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 2460   4012   
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
 2461   4013   
new file mode 100644
 2462   4014   
index 0000000..df3b1da
 2463         -
-- /dev/null
        4015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 2464   4016   
@@ -0,0 +1,6 @@
        4017  +
GET /./ HTTP/1.1
        4018  +
Host:example.amazonaws.com
        4019  +
X-Amz-Date:20150830T123600Z
        4020  +
X-Amz-Region-Set:us-east-1
        4021  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4022  +
 2465   4023   
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
 2466   4024   
similarity index 99%
 2467   4025   
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
 2468   4026   
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
 2469   4027   
index e1bfb39..754b3ed 100644
 2470   4028   
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
 2471   4029   
new file mode 100644
 2472   4030   
index 0000000..379dcb2
 2473         -
-- /dev/null
        4031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 2474   4032   
@@ -0,0 +1,4 @@
        4033  +
{
        4034  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4035  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4036  +
}
 2475   4037   
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
 2476   4038   
similarity index 99%
 2477   4039   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 2478   4040   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 2479   4041   
index f048d0f..c8edce3 100644
 2480   4042   
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
 2481   4043   
new file mode 100644
 2482   4044   
index 0000000..d3af3b8
 2483         -
-- /dev/null
        4045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 2484   4046   
@@ -0,0 +1 @@
        4047  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 2485   4048   
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
 2486   4049   
new file mode 100644
 2487   4050   
index 0000000..eb38155
 2488         -
-- /dev/null
        4051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 2489   4052   
@@ -0,0 +1,3 @@
        4053  +
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
        4054  +
Host:example.amazonaws.com
        4055  +
 2490   4056   
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
 2491   4057   
similarity index 99%
 2492   4058   
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
 2493   4059   
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
 2494   4060   
index bfcf245..4f20b8f 100644
 2495   4061   
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
 2496   4062   
new file mode 100644
 2497   4063   
index 0000000..2c5ff38
 2498         -
-- /dev/null
        4064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 2499   4065   
@@ -0,0 +1,2 @@
        4066  +
GET /./ HTTP/1.1
        4067  +
Host:example.amazonaws.com
 2500   4068   
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
 2501   4069   
new file mode 100644
 2502   4070   
index 0000000..0468d80
 2503         -
-- /dev/null
        4071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 2504   4072   
@@ -0,0 +1,12 @@
        4073  +
{
        4074  +
    "credentials": {
        4075  +
        "access_key_id": "AKIDEXAMPLE",
        4076  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4077  +
    },
        4078  +
    "expiration_in_seconds": 3600,
        4079  +
    "normalize": true,
        4080  +
    "region": "us-east-1",
        4081  +
    "service": "service",
        4082  +
    "sign_body": false,
        4083  +
    "timestamp": "2015-08-30T12:36:00Z"
        4084  +
}
              \
 No newline at end of file
 2505   4085   
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
 2506   4086   
similarity index 99%
 2507   4087   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 2508   4088   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 2509   4089   
index 47e7128..76db73d 100644
 2510   4090   
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
 2511   4091   
new file mode 100644
 2512   4092   
index 0000000..0c049ca
 2513         -
-- /dev/null
        4093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 2514   4094   
@@ -0,0 +1 @@
        4095  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 2515   4096   
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
 2516   4097   
new file mode 100644
 2517   4098   
index 0000000..f4bb1e1
 2518         -
-- /dev/null
        4099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 2519   4100   
@@ -0,0 +1,6 @@
        4101  +
GET // HTTP/1.1
        4102  +
Host:example.amazonaws.com
        4103  +
X-Amz-Date:20150830T123600Z
        4104  +
X-Amz-Region-Set:us-east-1
        4105  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4106  +
 2520   4107   
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
 2521   4108   
similarity index 99%
 2522   4109   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 2523   4110   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 2524   4111   
index 95d7219..600f1d8 100644
 2525   4112   
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
 2526   4113   
new file mode 100644
 2527   4114   
index 0000000..379dcb2
 2528         -
-- /dev/null
        4115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 2529   4116   
@@ -0,0 +1,4 @@
        4117  +
{
        4118  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4119  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4120  +
}
 2530   4121   
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
 2531   4122   
similarity index 99%
 2532   4123   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 2533   4124   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 2534   4125   
index a34ea26..779c51c 100644
 2535   4126   
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
 2536   4127   
new file mode 100644
 2537   4128   
index 0000000..ca52293
 2538         -
-- /dev/null
        4129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 2539   4130   
@@ -0,0 +1 @@
        4131  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 2540   4132   
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
 2541   4133   
new file mode 100644
 2542   4134   
index 0000000..4a212a9
 2543         -
-- /dev/null
        4135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 2544   4136   
@@ -0,0 +1,3 @@
        4137  +
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
        4138  +
Host:example.amazonaws.com
        4139  +
 2545   4140   
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
 2546   4141   
similarity index 99%
 2547   4142   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 2548   4143   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 2549   4144   
index 48f855c..6e29a7e 100644
 2550   4145   
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
 2551   4146   
similarity index 61%
 2552   4147   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 2553   4148   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 2554   4149   
index ede8e3c..25bc21e 100644
 2555         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        4150  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 2556   4151   
@@ -1,3 +1,2 @@
 2557   4152   
GET // HTTP/1.1
 2558   4153   
Host:example.amazonaws.com
 2559         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2560   4154   
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
 2561   4155   
new file mode 100644
 2562   4156   
index 0000000..0468d80
 2563         -
-- /dev/null
        4157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 2564   4158   
@@ -0,0 +1,12 @@
        4159  +
{
        4160  +
    "credentials": {
        4161  +
        "access_key_id": "AKIDEXAMPLE",
        4162  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4163  +
    },
        4164  +
    "expiration_in_seconds": 3600,
        4165  +
    "normalize": true,
        4166  +
    "region": "us-east-1",
        4167  +
    "service": "service",
        4168  +
    "sign_body": false,
        4169  +
    "timestamp": "2015-08-30T12:36:00Z"
        4170  +
}
              \
 No newline at end of file
 2565   4171   
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
 2566   4172   
similarity index 99%
 2567   4173   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 2568   4174   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 2569   4175   
index 2e36c20..a51f1ba 100644
 2570   4176   
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
 2571   4177   
new file mode 100644
 2572   4178   
index 0000000..f5c871f
 2573         -
-- /dev/null
        4179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 2574   4180   
@@ -0,0 +1 @@
        4181  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 2575   4182   
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
 2576   4183   
new file mode 100644
 2577   4184   
index 0000000..bda4718
 2578         -
-- /dev/null
        4185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 2579   4186   
@@ -0,0 +1,6 @@
        4187  +
GET /./example HTTP/1.1
        4188  +
Host:example.amazonaws.com
        4189  +
X-Amz-Date:20150830T123600Z
        4190  +
X-Amz-Region-Set:us-east-1
        4191  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        4192  +
 2580   4193   
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
 2581   4194   
similarity index 99%
 2582   4195   
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
 2583   4196   
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
 2584   4197   
index cd30e8b..2ffe879 100644
 2585   4198   
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
 2586   4199   
new file mode 100644
 2587   4200   
index 0000000..379dcb2
 2588         -
-- /dev/null
        4201  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 2589   4202   
@@ -0,0 +1,4 @@
        4203  +
{
        4204  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4205  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4206  +
}
 2590   4207   
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
 2591   4208   
similarity index 99%
 2592   4209   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 2593   4210   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 2594   4211   
index 77cf28d..45151ea 100644
 2595   4212   
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
 2596   4213   
new file mode 100644
 2597   4214   
index 0000000..11ad7bf
 2598         -
-- /dev/null
        4215  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 2599   4216   
@@ -0,0 +1 @@
        4217  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 2600   4218   
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
 2601   4219   
new file mode 100644
 2602   4220   
index 0000000..a7537b1
 2603         -
-- /dev/null
        4221  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 2604   4222   
@@ -0,0 +1,3 @@
        4223  +
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
        4224  +
Host:example.amazonaws.com
        4225  +
 2605   4226   
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
 2606   4227   
similarity index 99%
 2607   4228   
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
 2608   4229   
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
 2609   4230   
index 49d9b24..b486672 100644
 2610   4231   
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
 2611   4232   
similarity index 65%
 2612   4233   
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
 2613   4234   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 2614   4235   
index 3c91071..5d919c9 100644
 2615         -
-- 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
        4236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 2616   4237   
@@ -1,3 +1,2 @@
 2617   4238   
GET /./example HTTP/1.1
 2618   4239   
Host:example.amazonaws.com
 2619         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2620   4240   
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
 2621   4241   
new file mode 100644
 2622   4242   
index 0000000..7bee5c7
 2623         -
-- /dev/null
        4243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 2624   4244   
@@ -0,0 +1,12 @@
        4245  +
{
        4246  +
    "credentials": {
        4247  +
        "access_key_id": "AKIDEXAMPLE",
        4248  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4249  +
    },
        4250  +
    "expiration_in_seconds": 3600,
        4251  +
    "normalize": false,
        4252  +
    "region": "us-east-1",
        4253  +
    "service": "service",
        4254  +
    "sign_body": false,
        4255  +
    "timestamp": "2015-08-30T12:36:00Z"
        4256  +
}
              \
 No newline at end of file
 2625   4257   
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
 2626   4258   
similarity index 99%
 2627   4259   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 2628   4260   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 2629   4261   
index 4444842..2355a69 100644
 2630   4262   
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
 2631   4263   
new file mode 100644
 2632   4264   
index 0000000..9c8f737
 2633         -
-- /dev/null
        4265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 2634   4266   
@@ -0,0 +1 @@
        4267  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 2635   4268   
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
 2636   4269   
new file mode 100644
 2637   4270   
index 0000000..aa5980d
 2638         -
-- /dev/null
        4271  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 2639   4272   
@@ -0,0 +1,6 @@
        4273  +
GET /./example HTTP/1.1
        4274  +
Host:example.amazonaws.com
        4275  +
X-Amz-Date:20150830T123600Z
        4276  +
X-Amz-Region-Set:us-east-1
        4277  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        4278  +
 2640   4279   
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
 2641   4280   
similarity index 99%
 2642   4281   
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
 2643   4282   
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
 2644   4283   
index cc63510..d056816 100644
 2645   4284   
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
 2646   4285   
new file mode 100644
 2647   4286   
index 0000000..379dcb2
 2648         -
-- /dev/null
        4287  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 2649   4288   
@@ -0,0 +1,4 @@
        4289  +
{
        4290  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4291  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4292  +
}
 2650   4293   
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
 2651   4294   
similarity index 99%
 2652   4295   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 2653   4296   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 2654   4297   
index ed2cb2d..df9928e 100644
 2655   4298   
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
 2656   4299   
new file mode 100644
 2657   4300   
index 0000000..bb4d86b
 2658         -
-- /dev/null
        4301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 2659   4302   
@@ -0,0 +1 @@
        4303  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 2660   4304   
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
 2661   4305   
new file mode 100644
 2662   4306   
index 0000000..0061136
 2663         -
-- /dev/null
        4307  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 2664   4308   
@@ -0,0 +1,3 @@
        4309  +
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
        4310  +
Host:example.amazonaws.com
        4311  +
 2665   4312   
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
 2666   4313   
similarity index 99%
 2667   4314   
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
 2668   4315   
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
 2669   4316   
index c9f3b6d..418f2d6 100644
 2670   4317   
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
 2671   4318   
new file mode 100644
 2672   4319   
index 0000000..5d919c9
 2673         -
-- /dev/null
        4320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 2674   4321   
@@ -0,0 +1,2 @@
        4322  +
GET /./example HTTP/1.1
        4323  +
Host:example.amazonaws.com
 2675   4324   
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
 2676   4325   
new file mode 100644
 2677   4326   
index 0000000..7bee5c7
 2678         -
-- /dev/null
        4327  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 2679   4328   
@@ -0,0 +1,12 @@
        4329  +
{
        4330  +
    "credentials": {
        4331  +
        "access_key_id": "AKIDEXAMPLE",
        4332  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4333  +
    },
        4334  +
    "expiration_in_seconds": 3600,
        4335  +
    "normalize": false,
        4336  +
    "region": "us-east-1",
        4337  +
    "service": "service",
        4338  +
    "sign_body": false,
        4339  +
    "timestamp": "2015-08-30T12:36:00Z"
        4340  +
}
              \
 No newline at end of file
 2680   4341   
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
 2681   4342   
similarity index 99%
 2682   4343   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 2683   4344   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 2684   4345   
index 8a4d33b..5f809da 100644
 2685   4346   
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
 2686   4347   
new file mode 100644
 2687   4348   
index 0000000..60179e9
 2688         -
-- /dev/null
        4349  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 2689   4350   
@@ -0,0 +1 @@
        4351  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 2690   4352   
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
 2691   4353   
new file mode 100644
 2692   4354   
index 0000000..72bf1b7
 2693         -
-- /dev/null
        4355  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 2694   4356   
@@ -0,0 +1,6 @@
        4357  +
GET // HTTP/1.1
        4358  +
Host:example.amazonaws.com
        4359  +
X-Amz-Date:20150830T123600Z
        4360  +
X-Amz-Region-Set:us-east-1
        4361  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        4362  +
 2695   4363   
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
 2696   4364   
similarity index 99%
 2697   4365   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 2698   4366   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 2699   4367   
index 874c01c..2b3bf67 100644
 2700   4368   
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
 2701   4369   
new file mode 100644
 2702   4370   
index 0000000..379dcb2
 2703         -
-- /dev/null
        4371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 2704   4372   
@@ -0,0 +1,4 @@
        4373  +
{
        4374  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4375  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4376  +
}
 2705   4377   
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
 2706   4378   
similarity index 99%
 2707   4379   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 2708   4380   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 2709   4381   
index 81d7b0b..d10ad29 100644
 2710   4382   
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
 2711   4383   
new file mode 100644
 2712   4384   
index 0000000..d9bd824
 2713         -
-- /dev/null
        4385  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 2714   4386   
@@ -0,0 +1 @@
        4387  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 2715   4388   
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
 2716   4389   
new file mode 100644
 2717   4390   
index 0000000..19d1d46
 2718         -
-- /dev/null
        4391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 2719   4392   
@@ -0,0 +1,3 @@
        4393  +
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
        4394  +
Host:example.amazonaws.com
        4395  +
 2720   4396   
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
 2721   4397   
similarity index 99%
 2722   4398   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 2723   4399   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 2724   4400   
index 17e5279..24c8a5e 100644
 2725   4401   
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
 2726   4402   
new file mode 100644
 2727   4403   
index 0000000..25bc21e
 2728         -
-- /dev/null
        4404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 2729   4405   
@@ -0,0 +1,2 @@
        4406  +
GET // HTTP/1.1
        4407  +
Host:example.amazonaws.com
 2730   4408   
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
 2731   4409   
new file mode 100644
 2732   4410   
index 0000000..0468d80
 2733         -
-- /dev/null
        4411  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 2734   4412   
@@ -0,0 +1,12 @@
        4413  +
{
        4414  +
    "credentials": {
        4415  +
        "access_key_id": "AKIDEXAMPLE",
        4416  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4417  +
    },
        4418  +
    "expiration_in_seconds": 3600,
        4419  +
    "normalize": true,
        4420  +
    "region": "us-east-1",
        4421  +
    "service": "service",
        4422  +
    "sign_body": false,
        4423  +
    "timestamp": "2015-08-30T12:36:00Z"
        4424  +
}
              \
 No newline at end of file
 2735   4425   
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
 2736   4426   
similarity index 99%
 2737   4427   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 2738   4428   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 2739   4429   
index fdf9c48..a8e9e02 100644
 2740   4430   
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
 2741   4431   
new file mode 100644
 2742   4432   
index 0000000..ffe1b60
 2743         -
-- /dev/null
        4433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 2744   4434   
@@ -0,0 +1 @@
        4435  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 2745   4436   
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
 2746   4437   
new file mode 100644
 2747   4438   
index 0000000..3189f55
 2748         -
-- /dev/null
        4439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 2749   4440   
@@ -0,0 +1,6 @@
        4441  +
GET //example// HTTP/1.1
        4442  +
Host:example.amazonaws.com
        4443  +
X-Amz-Date:20150830T123600Z
        4444  +
X-Amz-Region-Set:us-east-1
        4445  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        4446  +
 2750   4447   
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
 2751   4448   
similarity index 99%
 2752   4449   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 2753   4450   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 2754   4451   
index 8f9c95e..430020e 100644
 2755   4452   
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
 2756   4453   
new file mode 100644
 2757   4454   
index 0000000..379dcb2
 2758         -
-- /dev/null
        4455  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 2759   4456   
@@ -0,0 +1,4 @@
        4457  +
{
        4458  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4459  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4460  +
}
 2760   4461   
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
 2761   4462   
similarity index 99%
 2762   4463   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 2763   4464   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 2764   4465   
index 1046735..8d41e37 100644
 2765   4466   
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
 2766   4467   
new file mode 100644
 2767   4468   
index 0000000..93a0fa4
 2768         -
-- /dev/null
        4469  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 2769   4470   
@@ -0,0 +1 @@
        4471  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 2770   4472   
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
 2771   4473   
new file mode 100644
 2772   4474   
index 0000000..65c8cb6
 2773         -
-- /dev/null
        4475  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 2774   4476   
@@ -0,0 +1,3 @@
        4477  +
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
        4478  +
Host:example.amazonaws.com
        4479  +
 2775   4480   
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
 2776   4481   
similarity index 99%
 2777   4482   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 2778   4483   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 2779   4484   
index b293cc2..0f4c4c5 100644
 2780   4485   
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
 2781   4486   
similarity index 65%
 2782   4487   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 2783   4488   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 2784   4489   
index a4307ce..12e0931 100644
 2785         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        4490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 2786   4491   
@@ -1,3 +1,2 @@
 2787   4492   
GET //example// HTTP/1.1
 2788   4493   
Host:example.amazonaws.com
 2789         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2790   4494   
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
 2791   4495   
new file mode 100644
 2792   4496   
index 0000000..7bee5c7
 2793         -
-- /dev/null
        4497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 2794   4498   
@@ -0,0 +1,12 @@
        4499  +
{
        4500  +
    "credentials": {
        4501  +
        "access_key_id": "AKIDEXAMPLE",
        4502  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4503  +
    },
        4504  +
    "expiration_in_seconds": 3600,
        4505  +
    "normalize": false,
        4506  +
    "region": "us-east-1",
        4507  +
    "service": "service",
        4508  +
    "sign_body": false,
        4509  +
    "timestamp": "2015-08-30T12:36:00Z"
        4510  +
}
              \
 No newline at end of file
 2795   4511   
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
 2796   4512   
similarity index 99%
 2797   4513   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 2798   4514   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 2799   4515   
index a9c55f6..76f55ed 100644
 2800   4516   
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
 2801   4517   
new file mode 100644
 2802   4518   
index 0000000..de333b2
 2803         -
-- /dev/null
        4519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 2804   4520   
@@ -0,0 +1 @@
        4521  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 2805   4522   
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
 2806   4523   
new file mode 100644
 2807   4524   
index 0000000..773ce63
 2808         -
-- /dev/null
        4525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 2809   4526   
@@ -0,0 +1,6 @@
        4527  +
GET //example// HTTP/1.1
        4528  +
Host:example.amazonaws.com
        4529  +
X-Amz-Date:20150830T123600Z
        4530  +
X-Amz-Region-Set:us-east-1
        4531  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        4532  +
 2810   4533   
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
 2811   4534   
similarity index 99%
 2812   4535   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 2813   4536   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 2814   4537   
index 5c4c2cd..46c3265 100644
 2815   4538   
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
 2816   4539   
new file mode 100644
 2817   4540   
index 0000000..379dcb2
 2818         -
-- /dev/null
        4541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 2819   4542   
@@ -0,0 +1,4 @@
        4543  +
{
        4544  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4545  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4546  +
}
 2820   4547   
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
 2821   4548   
similarity index 99%
 2822   4549   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 2823   4550   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 2824   4551   
index c878ab4..6047ccf 100644
 2825   4552   
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
 2826   4553   
new file mode 100644
 2827   4554   
index 0000000..d61fcd0
 2828         -
-- /dev/null
        4555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 2829   4556   
@@ -0,0 +1 @@
        4557  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 2830   4558   
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
 2831   4559   
new file mode 100644
 2832   4560   
index 0000000..3e37b5b
 2833         -
-- /dev/null
        4561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 2834   4562   
@@ -0,0 +1,3 @@
        4563  +
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
        4564  +
Host:example.amazonaws.com
        4565  +
 2835   4566   
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
 2836   4567   
similarity index 99%
 2837   4568   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 2838   4569   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 2839   4570   
index 5f59645..2537d28 100644
 2840   4571   
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
 2841   4572   
new file mode 100644
 2842   4573   
index 0000000..12e0931
 2843         -
-- /dev/null
        4574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 2844   4575   
@@ -0,0 +1,2 @@
        4576  +
GET //example// HTTP/1.1
        4577  +
Host:example.amazonaws.com
 2845   4578   
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
 2846   4579   
new file mode 100644
 2847   4580   
index 0000000..0468d80
 2848         -
-- /dev/null
        4581  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 2849   4582   
@@ -0,0 +1,12 @@
        4583  +
{
        4584  +
    "credentials": {
        4585  +
        "access_key_id": "AKIDEXAMPLE",
        4586  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4587  +
    },
        4588  +
    "expiration_in_seconds": 3600,
        4589  +
    "normalize": true,
        4590  +
    "region": "us-east-1",
        4591  +
    "service": "service",
        4592  +
    "sign_body": false,
        4593  +
    "timestamp": "2015-08-30T12:36:00Z"
        4594  +
}
              \
 No newline at end of file
 2850   4595   
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
 2851   4596   
new file mode 100644
 2852   4597   
index 0000000..0b2b616
 2853         -
-- /dev/null
        4598  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 2854   4599   
@@ -0,0 +1,9 @@
        4600  +
GET
        4601  +
/example%20space/
        4602  +
        4603  +
host:example.amazonaws.com
        4604  +
x-amz-date:20150830T123600Z
        4605  +
x-amz-region-set:us-east-1
        4606  +
        4607  +
host;x-amz-date;x-amz-region-set
        4608  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2855   4609   
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
 2856   4610   
new file mode 100644
 2857   4611   
index 0000000..6e7841d
 2858         -
-- /dev/null
        4612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 2859   4613   
@@ -0,0 +1 @@
        4614  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 2860   4615   
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
 2861   4616   
new file mode 100644
 2862   4617   
index 0000000..0969cd3
 2863         -
-- /dev/null
        4618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 2864   4619   
@@ -0,0 +1,6 @@
        4620  +
GET /example space/ HTTP/1.1
        4621  +
Host:example.amazonaws.com
        4622  +
X-Amz-Date:20150830T123600Z
        4623  +
X-Amz-Region-Set:us-east-1
        4624  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        4625  +
 2865   4626   
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
 2866   4627   
new file mode 100644
 2867   4628   
index 0000000..ddae6e2
 2868         -
-- /dev/null
        4629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 2869   4630   
@@ -0,0 +1,4 @@
        4631  +
AWS4-ECDSA-P256-SHA256
        4632  +
20150830T123600Z
        4633  +
20150830/service/aws4_request
        4634  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 2870   4635   
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
 2871   4636   
new file mode 100644
 2872   4637   
index 0000000..379dcb2
 2873         -
-- /dev/null
        4638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 2874   4639   
@@ -0,0 +1,4 @@
        4640  +
{
        4641  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4642  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4643  +
}
 2875   4644   
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
 2876   4645   
new file mode 100644
 2877   4646   
index 0000000..a66b3cb
 2878         -
-- /dev/null
        4647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 2879   4648   
@@ -0,0 +1,7 @@
        4649  +
GET
        4650  +
/example%20space/
        4651  +
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
        4652  +
host:example.amazonaws.com
        4653  +
        4654  +
host
        4655  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2880   4656   
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
 2881   4657   
new file mode 100644
 2882   4658   
index 0000000..b3253ae
 2883         -
-- /dev/null
        4659  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 2884   4660   
@@ -0,0 +1 @@
        4661  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 2885   4662   
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
 2886   4663   
new file mode 100644
 2887   4664   
index 0000000..9e335b2
 2888         -
-- /dev/null
        4665  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 2889   4666   
@@ -0,0 +1,3 @@
        4667  +
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
        4668  +
Host:example.amazonaws.com
        4669  +
 2890   4670   
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
 2891   4671   
new file mode 100644
 2892   4672   
index 0000000..b6ff6fb
 2893         -
-- /dev/null
        4673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 2894   4674   
@@ -0,0 +1,4 @@
        4675  +
AWS4-ECDSA-P256-SHA256
        4676  +
20150830T123600Z
        4677  +
20150830/service/aws4_request
        4678  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 2895   4679   
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
 2896   4680   
new file mode 100644
 2897   4681   
index 0000000..ab509ab
 2898         -
-- /dev/null
        4682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 2899   4683   
@@ -0,0 +1,2 @@
        4684  +
GET /example space/ HTTP/1.1
        4685  +
Host:example.amazonaws.com
 2900   4686   
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
 2901   4687   
new file mode 100644
 2902   4688   
index 0000000..7bee5c7
 2903         -
-- /dev/null
        4689  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 2904   4690   
@@ -0,0 +1,12 @@
        4691  +
{
        4692  +
    "credentials": {
        4693  +
        "access_key_id": "AKIDEXAMPLE",
        4694  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4695  +
    },
        4696  +
    "expiration_in_seconds": 3600,
        4697  +
    "normalize": false,
        4698  +
    "region": "us-east-1",
        4699  +
    "service": "service",
        4700  +
    "sign_body": false,
        4701  +
    "timestamp": "2015-08-30T12:36:00Z"
        4702  +
}
              \
 No newline at end of file
 2905   4703   
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
 2906   4704   
new file mode 100644
 2907   4705   
index 0000000..0b2b616
 2908         -
-- /dev/null
        4706  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 2909   4707   
@@ -0,0 +1,9 @@
        4708  +
GET
        4709  +
/example%20space/
        4710  +
        4711  +
host:example.amazonaws.com
        4712  +
x-amz-date:20150830T123600Z
        4713  +
x-amz-region-set:us-east-1
        4714  +
        4715  +
host;x-amz-date;x-amz-region-set
        4716  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2910   4717   
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
 2911   4718   
new file mode 100644
 2912   4719   
index 0000000..e75ae08
 2913         -
-- /dev/null
        4720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 2914   4721   
@@ -0,0 +1 @@
        4722  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 2915   4723   
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
 2916   4724   
new file mode 100644
 2917   4725   
index 0000000..cb089db
 2918         -
-- /dev/null
        4726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 2919   4727   
@@ -0,0 +1,6 @@
        4728  +
GET /example space/ HTTP/1.1
        4729  +
Host:example.amazonaws.com
        4730  +
X-Amz-Date:20150830T123600Z
        4731  +
X-Amz-Region-Set:us-east-1
        4732  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        4733  +
 2920   4734   
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
 2921   4735   
new file mode 100644
 2922   4736   
index 0000000..ddae6e2
 2923         -
-- /dev/null
        4737  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 2924   4738   
@@ -0,0 +1,4 @@
        4739  +
AWS4-ECDSA-P256-SHA256
        4740  +
20150830T123600Z
        4741  +
20150830/service/aws4_request
        4742  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 2925   4743   
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
 2926   4744   
new file mode 100644
 2927   4745   
index 0000000..379dcb2
 2928         -
-- /dev/null
        4746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 2929   4747   
@@ -0,0 +1,4 @@
        4748  +
{
        4749  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4750  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4751  +
}
 2930   4752   
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
 2931   4753   
new file mode 100644
 2932   4754   
index 0000000..a66b3cb
 2933         -
-- /dev/null
        4755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 2934   4756   
@@ -0,0 +1,7 @@
        4757  +
GET
        4758  +
/example%20space/
        4759  +
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
        4760  +
host:example.amazonaws.com
        4761  +
        4762  +
host
        4763  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2935   4764   
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
 2936   4765   
new file mode 100644
 2937   4766   
index 0000000..66a80c3
 2938         -
-- /dev/null
        4767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 2939   4768   
@@ -0,0 +1 @@
        4769  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 2940   4770   
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
 2941   4771   
new file mode 100644
 2942   4772   
index 0000000..7d1b9d9
 2943         -
-- /dev/null
        4773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 2944   4774   
@@ -0,0 +1,3 @@
        4775  +
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
        4776  +
Host:example.amazonaws.com
        4777  +
 2945   4778   
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
 2946   4779   
new file mode 100644
 2947   4780   
index 0000000..b6ff6fb
 2948         -
-- /dev/null
        4781  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 2949   4782   
@@ -0,0 +1,4 @@
        4783  +
AWS4-ECDSA-P256-SHA256
        4784  +
20150830T123600Z
        4785  +
20150830/service/aws4_request
        4786  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 2950   4787   
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
 2951   4788   
new file mode 100644
 2952   4789   
index 0000000..ab509ab
 2953         -
-- /dev/null
        4790  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 2954   4791   
@@ -0,0 +1,2 @@
        4792  +
GET /example space/ HTTP/1.1
        4793  +
Host:example.amazonaws.com
 2955   4794   
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
 2956   4795   
new file mode 100644
 2957   4796   
index 0000000..0468d80
 2958         -
-- /dev/null
        4797  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 2959   4798   
@@ -0,0 +1,12 @@
        4799  +
{
        4800  +
    "credentials": {
        4801  +
        "access_key_id": "AKIDEXAMPLE",
        4802  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4803  +
    },
        4804  +
    "expiration_in_seconds": 3600,
        4805  +
    "normalize": true,
        4806  +
    "region": "us-east-1",
        4807  +
    "service": "service",
        4808  +
    "sign_body": false,
        4809  +
    "timestamp": "2015-08-30T12:36:00Z"
        4810  +
}
              \
 No newline at end of file
 2960   4811   
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
 2961   4812   
similarity index 99%
 2962   4813   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 2963   4814   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 2964   4815   
index b0db648..46d76bb 100644
 2965   4816   
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
 2966   4817   
new file mode 100644
 2967   4818   
index 0000000..53c0cb6
 2968         -
-- /dev/null
        4819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 2969   4820   
@@ -0,0 +1 @@
        4821  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 2970   4822   
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
 2971   4823   
new file mode 100644
 2972   4824   
index 0000000..3bdb653
 2973         -
-- /dev/null
        4825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 2974   4826   
@@ -0,0 +1,6 @@
        4827  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        4828  +
Host:example.amazonaws.com
        4829  +
X-Amz-Date:20150830T123600Z
        4830  +
X-Amz-Region-Set:us-east-1
        4831  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        4832  +
 2975   4833   
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
 2976   4834   
similarity index 99%
 2977   4835   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 2978   4836   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 2979   4837   
index 20c7cd6..3b30173 100644
 2980   4838   
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
 2981   4839   
new file mode 100644
 2982   4840   
index 0000000..379dcb2
 2983         -
-- /dev/null
        4841  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 2984   4842   
@@ -0,0 +1,4 @@
        4843  +
{
        4844  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4845  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4846  +
}
 2985   4847   
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
 2986   4848   
similarity index 99%
 2987   4849   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 2988   4850   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 2989   4851   
index f9fb726..7e93f58 100644
 2990   4852   
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
 2991   4853   
new file mode 100644
 2992   4854   
index 0000000..48311a8
 2993         -
-- /dev/null
        4855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 2994   4856   
@@ -0,0 +1 @@
        4857  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 2995   4858   
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
 2996   4859   
new file mode 100644
 2997   4860   
index 0000000..82da9be
 2998         -
-- /dev/null
        4861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 2999   4862   
@@ -0,0 +1,3 @@
        4863  +
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
        4864  +
Host:example.amazonaws.com
        4865  +
 3000   4866   
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
 3001   4867   
similarity index 99%
 3002   4868   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 3003   4869   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 3004   4870   
index ef06e89..4aab9a2 100644
 3005   4871   
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
 3006   4872   
similarity index 80%
 3007   4873   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 3008   4874   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 3009   4875   
index da760cd..a149694 100644
 3010         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        4876  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 3011   4877   
@@ -1,3 +1,2 @@
 3012   4878   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 3013   4879   
Host:example.amazonaws.com
 3014         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3015   4880   
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
 3016   4881   
new file mode 100644
 3017   4882   
index 0000000..0468d80
 3018         -
-- /dev/null
        4883  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 3019   4884   
@@ -0,0 +1,12 @@
        4885  +
{
        4886  +
    "credentials": {
        4887  +
        "access_key_id": "AKIDEXAMPLE",
        4888  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4889  +
    },
        4890  +
    "expiration_in_seconds": 3600,
        4891  +
    "normalize": true,
        4892  +
    "region": "us-east-1",
        4893  +
    "service": "service",
        4894  +
    "sign_body": false,
        4895  +
    "timestamp": "2015-08-30T12:36:00Z"
        4896  +
}
              \
 No newline at end of file
 3020   4897   
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
 3021   4898   
new file mode 100644
 3022   4899   
index 0000000..0f1afe7
 3023         -
-- /dev/null
        4900  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 3024   4901   
@@ -0,0 +1,9 @@
        4902  +
GET
        4903  +
/%E1%88%B4
        4904  +
        4905  +
host:example.amazonaws.com
        4906  +
x-amz-date:20150830T123600Z
        4907  +
x-amz-region-set:us-east-1
        4908  +
        4909  +
host;x-amz-date;x-amz-region-set
        4910  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3025   4911   
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
 3026   4912   
new file mode 100644
 3027   4913   
index 0000000..4b9af6c
 3028         -
-- /dev/null
        4914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 3029   4915   
@@ -0,0 +1 @@
        4916  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 3030   4917   
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
 3031   4918   
new file mode 100644
 3032   4919   
index 0000000..d42d7b3
 3033         -
-- /dev/null
        4920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 3034   4921   
@@ -0,0 +1,6 @@
        4922  +
GET /ሴ HTTP/1.1
        4923  +
Host:example.amazonaws.com
        4924  +
X-Amz-Date:20150830T123600Z
        4925  +
X-Amz-Region-Set:us-east-1
        4926  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        4927  +
 3035   4928   
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
 3036   4929   
new file mode 100644
 3037   4930   
index 0000000..0827f62
 3038         -
-- /dev/null
        4931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 3039   4932   
@@ -0,0 +1,4 @@
        4933  +
AWS4-ECDSA-P256-SHA256
        4934  +
20150830T123600Z
        4935  +
20150830/service/aws4_request
        4936  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 3040   4937   
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
 3041   4938   
new file mode 100644
 3042   4939   
index 0000000..379dcb2
 3043         -
-- /dev/null
        4940  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 3044   4941   
@@ -0,0 +1,4 @@
        4942  +
{
        4943  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4944  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4945  +
}
 3045   4946   
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
 3046   4947   
new file mode 100644
 3047   4948   
index 0000000..a41a2f8
 3048         -
-- /dev/null
        4949  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 3049   4950   
@@ -0,0 +1,7 @@
        4951  +
GET
        4952  +
/%E1%88%B4
        4953  +
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
        4954  +
host:example.amazonaws.com
        4955  +
        4956  +
host
        4957  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3050   4958   
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
 3051   4959   
new file mode 100644
 3052   4960   
index 0000000..a5c7f4f
 3053         -
-- /dev/null
        4961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 3054   4962   
@@ -0,0 +1 @@
        4963  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 3055   4964   
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
 3056   4965   
new file mode 100644
 3057   4966   
index 0000000..492ed33
 3058         -
-- /dev/null
        4967  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 3059   4968   
@@ -0,0 +1,3 @@
        4969  +
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
        4970  +
Host:example.amazonaws.com
        4971  +
 3060   4972   
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
 3061   4973   
new file mode 100644
 3062   4974   
index 0000000..a93108f
 3063         -
-- /dev/null
        4975  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 3064   4976   
@@ -0,0 +1,4 @@
        4977  +
AWS4-ECDSA-P256-SHA256
        4978  +
20150830T123600Z
        4979  +
20150830/service/aws4_request
        4980  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 3065   4981   
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
 3066   4982   
new file mode 100644
 3067   4983   
index 0000000..9e273f6
 3068         -
-- /dev/null
        4984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 3069   4985   
@@ -0,0 +1,2 @@
        4986  +
GET /ሴ HTTP/1.1
        4987  +
Host:example.amazonaws.com
 3070   4988   
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
 3071   4989   
new file mode 100644
 3072   4990   
index 0000000..0468d80
 3073         -
-- /dev/null
        4991  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 3074   4992   
@@ -0,0 +1,12 @@
        4993  +
{
        4994  +
    "credentials": {
        4995  +
        "access_key_id": "AKIDEXAMPLE",
        4996  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4997  +
    },
        4998  +
    "expiration_in_seconds": 3600,
        4999  +
    "normalize": true,
        5000  +
    "region": "us-east-1",
        5001  +
    "service": "service",
        5002  +
    "sign_body": false,
        5003  +
    "timestamp": "2015-08-30T12:36:00Z"
        5004  +
}
              \
 No newline at end of file
 3075   5005   
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
 3076   5006   
similarity index 99%
 3077   5007   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 3078   5008   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 3079   5009   
index bb9d4bf..edc0bb4 100644
 3080   5010   
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
 3081   5011   
new file mode 100644
 3082   5012   
index 0000000..ee9a272
 3083         -
-- /dev/null
        5013  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 3084   5014   
@@ -0,0 +1 @@
        5015  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 3085   5016   
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
 3086   5017   
new file mode 100644
 3087   5018   
index 0000000..2090343
 3088         -
-- /dev/null
        5019  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 3089   5020   
@@ -0,0 +1,6 @@
        5021  +
GET /?Param1=value1 HTTP/1.1
        5022  +
Host:example.amazonaws.com
        5023  +
X-Amz-Date:20150830T123600Z
        5024  +
X-Amz-Region-Set:us-east-1
        5025  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        5026  +
 3090   5027   
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
 3091   5028   
similarity index 99%
 3092   5029   
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
 3093   5030   
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
 3094   5031   
index a176f1d..06ed74f 100644
 3095   5032   
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
 3096   5033   
new file mode 100644
 3097   5034   
index 0000000..379dcb2
 3098         -
-- /dev/null
        5035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 3099   5036   
@@ -0,0 +1,4 @@
        5037  +
{
        5038  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5039  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5040  +
}
 3100   5041   
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
 3101   5042   
similarity index 99%
 3102   5043   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 3103   5044   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 3104   5045   
index 344384b..a875d70 100644
 3105   5046   
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
 3106   5047   
new file mode 100644
 3107   5048   
index 0000000..ef93624
 3108         -
-- /dev/null
        5049  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 3109   5050   
@@ -0,0 +1 @@
        5051  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 3110   5052   
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
 3111   5053   
new file mode 100644
 3112   5054   
index 0000000..92829f7
 3113         -
-- /dev/null
        5055  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 3114   5056   
@@ -0,0 +1,3 @@
        5057  +
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
        5058  +
Host:example.amazonaws.com
        5059  +
 3115   5060   
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
 3116   5061   
similarity index 99%
 3117   5062   
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
 3118   5063   
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
 3119   5064   
index b625052..4ff9191 100644
 3120   5065   
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
 3121   5066   
similarity index 67%
 3122   5067   
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
 3123   5068   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 3124   5069   
index 970d0a0..f4a03bb 100644
 3125         -
-- 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
        5070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 3126   5071   
@@ -1,3 +1,2 @@
 3127   5072   
GET /?Param1=value1 HTTP/1.1
 3128   5073   
Host:example.amazonaws.com
 3129         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3130   5074   
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
 3131   5075   
new file mode 100644
 3132   5076   
index 0000000..0468d80
 3133         -
-- /dev/null
        5077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 3134   5078   
@@ -0,0 +1,12 @@
        5079  +
{
        5080  +
    "credentials": {
        5081  +
        "access_key_id": "AKIDEXAMPLE",
        5082  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5083  +
    },
        5084  +
    "expiration_in_seconds": 3600,
        5085  +
    "normalize": true,
        5086  +
    "region": "us-east-1",
        5087  +
    "service": "service",
        5088  +
    "sign_body": false,
        5089  +
    "timestamp": "2015-08-30T12:36:00Z"
        5090  +
}
              \
 No newline at end of file
 3135   5091   
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
 3136   5092   
new file mode 100644
 3137   5093   
index 0000000..da07537
 3138         -
-- /dev/null
        5094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 3139   5095   
@@ -0,0 +1,9 @@
        5096  +
GET
        5097  +
/
        5098  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        5099  +
host:example.amazonaws.com
        5100  +
x-amz-date:20150830T123600Z
        5101  +
x-amz-region-set:us-east-1
        5102  +
        5103  +
host;x-amz-date;x-amz-region-set
        5104  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3140   5105   
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
 3141   5106   
new file mode 100644
 3142   5107   
index 0000000..edb21e5
 3143         -
-- /dev/null
        5108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 3144   5109   
@@ -0,0 +1 @@
        5110  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 3145   5111   
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
 3146   5112   
new file mode 100644
 3147   5113   
index 0000000..e60394c
 3148         -
-- /dev/null
        5114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 3149   5115   
@@ -0,0 +1,6 @@
        5116  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5117  +
Host:example.amazonaws.com
        5118  +
X-Amz-Date:20150830T123600Z
        5119  +
X-Amz-Region-Set:us-east-1
        5120  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        5121  +
 3150   5122   
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
 3151   5123   
new file mode 100644
 3152   5124   
index 0000000..1dfc886
 3153         -
-- /dev/null
        5125  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 3154   5126   
@@ -0,0 +1,4 @@
        5127  +
AWS4-ECDSA-P256-SHA256
        5128  +
20150830T123600Z
        5129  +
20150830/service/aws4_request
        5130  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 3155   5131   
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
 3156   5132   
new file mode 100644
 3157   5133   
index 0000000..379dcb2
 3158         -
-- /dev/null
        5134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 3159   5135   
@@ -0,0 +1,4 @@
        5136  +
{
        5137  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5138  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5139  +
}
 3160   5140   
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
 3161   5141   
new file mode 100644
 3162   5142   
index 0000000..e94dc0c
 3163         -
-- /dev/null
        5143  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 3164   5144   
@@ -0,0 +1,7 @@
        5145  +
GET
        5146  +
/
        5147  +
%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
        5148  +
host:example.amazonaws.com
        5149  +
        5150  +
host
        5151  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3165   5152   
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
 3166   5153   
new file mode 100644
 3167   5154   
index 0000000..7489437
 3168         -
-- /dev/null
        5155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 3169   5156   
@@ -0,0 +1 @@
        5157  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 3170   5158   
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
 3171   5159   
new file mode 100644
 3172   5160   
index 0000000..90c0e73
 3173         -
-- /dev/null
        5161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 3174   5162   
@@ -0,0 +1,3 @@
        5163  +
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
        5164  +
Host:example.amazonaws.com
        5165  +
 3175   5166   
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
 3176   5167   
new file mode 100644
 3177   5168   
index 0000000..ab8a711
 3178         -
-- /dev/null
        5169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 3179   5170   
@@ -0,0 +1,4 @@
        5171  +
AWS4-ECDSA-P256-SHA256
        5172  +
20150830T123600Z
        5173  +
20150830/service/aws4_request
        5174  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 3180   5175   
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
 3181   5176   
new file mode 100644
 3182   5177   
index 0000000..368c6e3
 3183         -
-- /dev/null
        5178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 3184   5179   
@@ -0,0 +1,2 @@
        5180  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5181  +
Host:example.amazonaws.com
 3185   5182   
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
 3186   5183   
new file mode 100644
 3187   5184   
index 0000000..0468d80
 3188         -
-- /dev/null
        5185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 3189   5186   
@@ -0,0 +1,12 @@
        5187  +
{
        5188  +
    "credentials": {
        5189  +
        "access_key_id": "AKIDEXAMPLE",
        5190  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5191  +
    },
        5192  +
    "expiration_in_seconds": 3600,
        5193  +
    "normalize": true,
        5194  +
    "region": "us-east-1",
        5195  +
    "service": "service",
        5196  +
    "sign_body": false,
        5197  +
    "timestamp": "2015-08-30T12:36:00Z"
        5198  +
}
              \
 No newline at end of file
 3190   5199   
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
 3191   5200   
similarity index 99%
 3192   5201   
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
 3193   5202   
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
 3194   5203   
index 74f625a..3db56f7 100644
 3195   5204   
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
 3196   5205   
new file mode 100644
 3197   5206   
index 0000000..e6042bc
 3198         -
-- /dev/null
        5207  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 3199   5208   
@@ -0,0 +1 @@
        5209  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 3200   5210   
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
 3201   5211   
new file mode 100644
 3202   5212   
index 0000000..5505969
 3203         -
-- /dev/null
        5213  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 3204   5214   
@@ -0,0 +1,6 @@
        5215  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        5216  +
Host:example.amazonaws.com
        5217  +
X-Amz-Date:20150830T123600Z
        5218  +
X-Amz-Region-Set:us-east-1
        5219  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        5220  +
 3205   5221   
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
 3206   5222   
similarity index 99%
 3207   5223   
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
 3208   5224   
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
 3209   5225   
index 44873b7..e8f5e31 100644
 3210   5226   
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
 3211   5227   
new file mode 100644
 3212   5228   
index 0000000..379dcb2
 3213         -
-- /dev/null
        5229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 3214   5230   
@@ -0,0 +1,4 @@
        5231  +
{
        5232  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5233  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5234  +
}
 3215   5235   
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
 3216   5236   
similarity index 99%
 3217   5237   
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
 3218   5238   
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
 3219   5239   
index 6d30727..3fe6a9f 100644
 3220   5240   
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
 3221   5241   
new file mode 100644
 3222   5242   
index 0000000..3f35de8
 3223         -
-- /dev/null
        5243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 3224   5244   
@@ -0,0 +1 @@
        5245  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 3225   5246   
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
 3226   5247   
new file mode 100644
 3227   5248   
index 0000000..30b336b
 3228         -
-- /dev/null
        5249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 3229   5250   
@@ -0,0 +1,3 @@
        5251  +
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
        5252  +
Host:example.amazonaws.com
        5253  +
 3230   5254   
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
 3231   5255   
similarity index 99%
 3232   5256   
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
 3233   5257   
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
 3234   5258   
index 99d0510..7f0565f 100644
 3235   5259   
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
 3236   5260   
similarity index 100%
 3237   5261   
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
 3238   5262   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 3239   5263   
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
 3240   5264   
new file mode 100644
 3241   5265   
index 0000000..0468d80
 3242         -
-- /dev/null
        5266  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 3243   5267   
@@ -0,0 +1,12 @@
        5268  +
{
        5269  +
    "credentials": {
        5270  +
        "access_key_id": "AKIDEXAMPLE",
        5271  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5272  +
    },
        5273  +
    "expiration_in_seconds": 3600,
        5274  +
    "normalize": true,
        5275  +
    "region": "us-east-1",
        5276  +
    "service": "service",
        5277  +
    "sign_body": false,
        5278  +
    "timestamp": "2015-08-30T12:36:00Z"
        5279  +
}
              \
 No newline at end of file
 3244   5280   
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
 3245   5281   
similarity index 99%
 3246   5282   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 3247   5283   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 3248   5284   
index 816c862..cc4537a 100644
 3249   5285   
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
 3250   5286   
new file mode 100644
 3251   5287   
index 0000000..70d38c1
 3252         -
-- /dev/null
        5288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 3253   5289   
@@ -0,0 +1 @@
        5290  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 3254   5291   
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
 3255   5292   
new file mode 100644
 3256   5293   
index 0000000..0647eea
 3257         -
-- /dev/null
        5294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 3258   5295   
@@ -0,0 +1,6 @@
        5296  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5297  +
Host:example.amazonaws.com
        5298  +
X-Amz-Date:20150830T123600Z
        5299  +
X-Amz-Region-Set:us-east-1
        5300  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        5301  +
 3259   5302   
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
 3260   5303   
similarity index 99%
 3261   5304   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 3262   5305   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 3263   5306   
index 6129fc5..cc19d14 100644
 3264   5307   
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
 3265   5308   
new file mode 100644
 3266   5309   
index 0000000..379dcb2
 3267         -
-- /dev/null
        5310  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 3268   5311   
@@ -0,0 +1,4 @@
        5312  +
{
        5313  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5314  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5315  +
}
 3269   5316   
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
 3270   5317   
similarity index 99%
 3271   5318   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 3272   5319   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 3273   5320   
index b77ee9f..ed6a10e 100644
 3274   5321   
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
 3275   5322   
new file mode 100644
 3276   5323   
index 0000000..2ceba7b
 3277         -
-- /dev/null
        5324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 3278   5325   
@@ -0,0 +1 @@
        5326  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 3279   5327   
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
 3280   5328   
new file mode 100644
 3281   5329   
index 0000000..0cd6d0a
 3282         -
-- /dev/null
        5330  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 3283   5331   
@@ -0,0 +1,3 @@
        5332  +
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
        5333  +
Host:example.amazonaws.com
        5334  +
 3284   5335   
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
 3285   5336   
similarity index 99%
 3286   5337   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 3287   5338   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 3288   5339   
index 1cfed7a..aad1421 100644
 3289   5340   
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
 3290   5341   
similarity index 86%
 3291   5342   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 3292   5343   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 3293   5344   
index d2833b3..36b2fe3 100644
 3294         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        5345  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 3295   5346   
@@ -1,3 +1,2 @@
 3296   5347   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 3297   5348   
Host:example.amazonaws.com
 3298         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3299   5349   
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
 3300   5350   
new file mode 100644
 3301   5351   
index 0000000..0468d80
 3302         -
-- /dev/null
        5352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 3303   5353   
@@ -0,0 +1,12 @@
        5354  +
{
        5355  +
    "credentials": {
        5356  +
        "access_key_id": "AKIDEXAMPLE",
        5357  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5358  +
    },
        5359  +
    "expiration_in_seconds": 3600,
        5360  +
    "normalize": true,
        5361  +
    "region": "us-east-1",
        5362  +
    "service": "service",
        5363  +
    "sign_body": false,
        5364  +
    "timestamp": "2015-08-30T12:36:00Z"
        5365  +
}
              \
 No newline at end of file
 3304   5366   
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
 3305   5367   
new file mode 100644
 3306   5368   
index 0000000..76db73d
 3307         -
-- /dev/null
        5369  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 3308   5370   
@@ -0,0 +1,9 @@
        5371  +
GET
        5372  +
/
        5373  +
        5374  +
host:example.amazonaws.com
        5375  +
x-amz-date:20150830T123600Z
        5376  +
x-amz-region-set:us-east-1
        5377  +
        5378  +
host;x-amz-date;x-amz-region-set
        5379  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3309   5380   
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
 3310   5381   
new file mode 100644
 3311   5382   
index 0000000..281cc62
 3312         -
-- /dev/null
        5383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 3313   5384   
@@ -0,0 +1 @@
        5385  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 3314   5386   
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
 3315   5387   
new file mode 100644
 3316   5388   
index 0000000..cce9925
 3317         -
-- /dev/null
        5389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 3318   5390   
@@ -0,0 +1,6 @@
        5391  +
GET / HTTP/1.1
        5392  +
Host:example.amazonaws.com
        5393  +
X-Amz-Date:20150830T123600Z
        5394  +
X-Amz-Region-Set:us-east-1
        5395  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        5396  +
 3319   5397   
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
 3320   5398   
new file mode 100644
 3321   5399   
index 0000000..600f1d8
 3322         -
-- /dev/null
        5400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 3323   5401   
@@ -0,0 +1,4 @@
        5402  +
AWS4-ECDSA-P256-SHA256
        5403  +
20150830T123600Z
        5404  +
20150830/service/aws4_request
        5405  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3324   5406   
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
 3325   5407   
new file mode 100644
 3326   5408   
index 0000000..379dcb2
 3327         -
-- /dev/null
        5409  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 3328   5410   
@@ -0,0 +1,4 @@
        5411  +
{
        5412  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5413  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5414  +
}
 3329   5415   
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
 3330   5416   
new file mode 100644
 3331   5417   
index 0000000..779c51c
 3332         -
-- /dev/null
        5418  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 3333   5419   
@@ -0,0 +1,7 @@
        5420  +
GET
        5421  +
/
        5422  +
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
        5423  +
host:example.amazonaws.com
        5424  +
        5425  +
host
        5426  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3334   5427   
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
 3335   5428   
new file mode 100644
 3336   5429   
index 0000000..2979e5e
 3337         -
-- /dev/null
        5430  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 3338   5431   
@@ -0,0 +1 @@
        5432  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 3339   5433   
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
 3340   5434   
new file mode 100644
 3341   5435   
index 0000000..1b3179c
 3342         -
-- /dev/null
        5436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 3343   5437   
@@ -0,0 +1,3 @@
        5438  +
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
        5439  +
Host:example.amazonaws.com
        5440  +
 3344   5441   
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
 3345   5442   
new file mode 100644
 3346   5443   
index 0000000..6e29a7e
 3347         -
-- /dev/null
        5444  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 3348   5445   
@@ -0,0 +1,4 @@
        5446  +
AWS4-ECDSA-P256-SHA256
        5447  +
20150830T123600Z
        5448  +
20150830/service/aws4_request
        5449  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3349   5450   
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
 3350   5451   
similarity index 60%
 3351   5452   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 3352   5453   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 3353   5454   
index 0f7a9bf..e659c3b 100644
 3354         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        5455  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 3355   5456   
@@ -1,3 +1,2 @@
 3356   5457   
GET / HTTP/1.1
 3357   5458   
Host:example.amazonaws.com
 3358         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3359   5459   
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
 3360   5460   
new file mode 100644
 3361   5461   
index 0000000..0468d80
 3362         -
-- /dev/null
        5462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 3363   5463   
@@ -0,0 +1,12 @@
        5464  +
{
        5465  +
    "credentials": {
        5466  +
        "access_key_id": "AKIDEXAMPLE",
        5467  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5468  +
    },
        5469  +
    "expiration_in_seconds": 3600,
        5470  +
    "normalize": true,
        5471  +
    "region": "us-east-1",
        5472  +
    "service": "service",
        5473  +
    "sign_body": false,
        5474  +
    "timestamp": "2015-08-30T12:36:00Z"
        5475  +
}
              \
 No newline at end of file
 3364   5476   
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
 3365   5477   
new file mode 100644
 3366   5478   
index 0000000..8841ddf
 3367         -
-- /dev/null
        5479  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 3368   5480   
@@ -0,0 +1,9 @@
        5481  +
GET
        5482  +
/
        5483  +
%E1%88%B4=bar
        5484  +
host:example.amazonaws.com
        5485  +
x-amz-date:20150830T123600Z
        5486  +
x-amz-region-set:us-east-1
        5487  +
        5488  +
host;x-amz-date;x-amz-region-set
        5489  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3369   5490   
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
 3370   5491   
new file mode 100644
 3371   5492   
index 0000000..1497add
 3372         -
-- /dev/null
        5493  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 3373   5494   
@@ -0,0 +1 @@
        5495  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 3374   5496   
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
 3375   5497   
new file mode 100644
 3376   5498   
index 0000000..961bc10
 3377         -
-- /dev/null
        5499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 3378   5500   
@@ -0,0 +1,6 @@
        5501  +
GET /?ሴ=bar HTTP/1.1
        5502  +
Host:example.amazonaws.com
        5503  +
X-Amz-Date:20150830T123600Z
        5504  +
X-Amz-Region-Set:us-east-1
        5505  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        5506  +
 3379   5507   
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
 3380   5508   
new file mode 100644
 3381   5509   
index 0000000..e78ed70
 3382         -
-- /dev/null
        5510  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 3383   5511   
@@ -0,0 +1,4 @@
        5512  +
AWS4-ECDSA-P256-SHA256
        5513  +
20150830T123600Z
        5514  +
20150830/service/aws4_request
        5515  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 3384   5516   
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
 3385   5517   
new file mode 100644
 3386   5518   
index 0000000..379dcb2
 3387         -
-- /dev/null
        5519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 3388   5520   
@@ -0,0 +1,4 @@
        5521  +
{
        5522  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5523  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5524  +
}
 3389   5525   
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
 3390   5526   
new file mode 100644
 3391   5527   
index 0000000..6d5ae93
 3392         -
-- /dev/null
        5528  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 3393   5529   
@@ -0,0 +1,7 @@
        5530  +
GET
        5531  +
/
        5532  +
%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
        5533  +
host:example.amazonaws.com
        5534  +
        5535  +
host
        5536  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3394   5537   
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
 3395   5538   
new file mode 100644
 3396   5539   
index 0000000..92107f2
 3397         -
-- /dev/null
        5540  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 3398   5541   
@@ -0,0 +1 @@
        5542  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 3399   5543   
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
 3400   5544   
new file mode 100644
 3401   5545   
index 0000000..bb8a75b
 3402         -
-- /dev/null
        5546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 3403   5547   
@@ -0,0 +1,3 @@
        5548  +
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
        5549  +
Host:example.amazonaws.com
        5550  +
 3404   5551   
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
 3405   5552   
new file mode 100644
 3406   5553   
index 0000000..9fa94c7
 3407         -
-- /dev/null
        5554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 3408   5555   
@@ -0,0 +1,4 @@
        5556  +
AWS4-ECDSA-P256-SHA256
        5557  +
20150830T123600Z
        5558  +
20150830/service/aws4_request
        5559  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 3409   5560   
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
 3410   5561   
new file mode 100644
 3411   5562   
index 0000000..aff333a
 3412         -
-- /dev/null
        5563  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 3413   5564   
@@ -0,0 +1,2 @@
        5565  +
GET /?ሴ=bar HTTP/1.1
        5566  +
Host:example.amazonaws.com
 3414   5567   
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
 3415   5568   
new file mode 100644
 3416   5569   
index 0000000..a334e18
 3417         -
-- /dev/null
        5570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 3418   5571   
@@ -0,0 +1,13 @@
        5572  +
{
        5573  +
    "credentials": {
        5574  +
        "access_key_id": "AKIDEXAMPLE",
        5575  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        5576  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        5577  +
    },
        5578  +
    "expiration_in_seconds": 3600,
        5579  +
    "normalize": true,
        5580  +
    "region": "us-east-1",
        5581  +
    "service": "service",
        5582  +
    "sign_body": false,
        5583  +
    "timestamp": "2015-08-30T12:36:00Z"
        5584  +
}
              \
 No newline at end of file
 3419   5585   
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
 3420   5586   
similarity index 99%
 3421   5587   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 3422   5588   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 3423   5589   
index f14defd..0e9ad42 100644
 3424   5590   
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
 3425   5591   
new file mode 100644
 3426   5592   
index 0000000..a7673b5
 3427         -
-- /dev/null
        5593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 3428   5594   
@@ -0,0 +1 @@
        5595  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 3429   5596   
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
 3430   5597   
new file mode 100644
 3431   5598   
index 0000000..ed16e76
 3432         -
-- /dev/null
        5599  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 3433   5600   
@@ -0,0 +1,7 @@
        5601  +
GET / HTTP/1.1
        5602  +
Host:example.amazonaws.com
        5603  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        5604  +
X-Amz-Date:20150830T123600Z
        5605  +
X-Amz-Region-Set:us-east-1
        5606  +
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
        5607  +
 3434   5608   
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
 3435   5609   
similarity index 99%
 3436   5610   
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
 3437   5611   
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
 3438   5612   
index 4edece5..6c1ec65 100644
 3439   5613   
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
 3440   5614   
new file mode 100644
 3441   5615   
index 0000000..379dcb2
 3442         -
-- /dev/null
        5616  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 3443   5617   
@@ -0,0 +1,4 @@
        5618  +
{
        5619  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5620  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5621  +
}
 3444   5622   
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
 3445   5623   
similarity index 99%
 3446   5624   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 3447   5625   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 3448   5626   
index 7c042af..1876b42 100644
 3449   5627   
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
 3450   5628   
new file mode 100644
 3451   5629   
index 0000000..903dfb4
 3452         -
-- /dev/null
        5630  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 3453   5631   
@@ -0,0 +1 @@
        5632  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 3454   5633   
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
 3455   5634   
new file mode 100644
 3456   5635   
index 0000000..bf1d246
 3457         -
-- /dev/null
        5636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 3458   5637   
@@ -0,0 +1,3 @@
        5638  +
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
        5639  +
Host:example.amazonaws.com
        5640  +
 3459   5641   
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
 3460   5642   
similarity index 99%
 3461   5643   
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
 3462   5644   
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
 3463   5645   
index 0fd066a..f1b1790 100644
 3464   5646   
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
 3465   5647   
similarity index 60%
 3466   5648   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 3467   5649   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 3468   5650   
index 0f7a9bf..e659c3b 100644
 3469         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        5651  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 3470   5652   
@@ -1,3 +1,2 @@
 3471   5653   
GET / HTTP/1.1
 3472   5654   
Host:example.amazonaws.com
 3473         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3474   5655   
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
 3475   5656   
new file mode 100644
 3476   5657   
index 0000000..76db73d
 3477         -
-- /dev/null
        5658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 3478   5659   
@@ -0,0 +1,9 @@
        5660  +
GET
        5661  +
/
        5662  +
        5663  +
host:example.amazonaws.com
        5664  +
x-amz-date:20150830T123600Z
        5665  +
x-amz-region-set:us-east-1
        5666  +
        5667  +
host;x-amz-date;x-amz-region-set
        5668  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3479   5669   
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
 3480   5670   
new file mode 100644
 3481   5671   
index 0000000..0468d80
 3482         -
-- /dev/null
        5672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 3483   5673   
@@ -0,0 +1,12 @@
        5674  +
{
        5675  +
    "credentials": {
        5676  +
        "access_key_id": "AKIDEXAMPLE",
        5677  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5678  +
    },
        5679  +
    "expiration_in_seconds": 3600,
        5680  +
    "normalize": true,
        5681  +
    "region": "us-east-1",
        5682  +
    "service": "service",
        5683  +
    "sign_body": false,
        5684  +
    "timestamp": "2015-08-30T12:36:00Z"
        5685  +
}
              \
 No newline at end of file
 3484   5686   
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
 3485   5687   
new file mode 100644
 3486   5688   
index 0000000..76db73d
 3487         -
-- /dev/null
        5689  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 3488   5690   
@@ -0,0 +1,9 @@
        5691  +
GET
        5692  +
/
        5693  +
        5694  +
host:example.amazonaws.com
        5695  +
x-amz-date:20150830T123600Z
        5696  +
x-amz-region-set:us-east-1
        5697  +
        5698  +
host;x-amz-date;x-amz-region-set
        5699  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3489   5700   
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
 3490   5701   
new file mode 100644
 3491   5702   
index 0000000..a96ff24
 3492         -
-- /dev/null
        5703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 3493   5704   
@@ -0,0 +1 @@
        5705  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 3494   5706   
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
 3495   5707   
new file mode 100644
 3496   5708   
index 0000000..689078b
 3497         -
-- /dev/null
        5709  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 3498   5710   
@@ -0,0 +1,6 @@
        5711  +
GET / HTTP/1.1
        5712  +
Host:example.amazonaws.com
        5713  +
X-Amz-Date:20150830T123600Z
        5714  +
X-Amz-Region-Set:us-east-1
        5715  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        5716  +
 3499   5717   
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
 3500   5718   
new file mode 100644
 3501   5719   
index 0000000..600f1d8
 3502         -
-- /dev/null
        5720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 3503   5721   
@@ -0,0 +1,4 @@
        5722  +
AWS4-ECDSA-P256-SHA256
        5723  +
20150830T123600Z
        5724  +
20150830/service/aws4_request
        5725  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3504   5726   
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
 3505   5727   
new file mode 100644
 3506   5728   
index 0000000..379dcb2
 3507         -
-- /dev/null
        5729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 3508   5730   
@@ -0,0 +1,4 @@
        5731  +
{
        5732  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5733  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5734  +
}
 3509   5735   
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
 3510   5736   
new file mode 100644
 3511   5737   
index 0000000..779c51c
 3512         -
-- /dev/null
        5738  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 3513   5739   
@@ -0,0 +1,7 @@
        5740  +
GET
        5741  +
/
        5742  +
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
        5743  +
host:example.amazonaws.com
        5744  +
        5745  +
host
        5746  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3514   5747   
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
 3515   5748   
new file mode 100644
 3516   5749   
index 0000000..cc42158
 3517         -
-- /dev/null
        5750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 3518   5751   
@@ -0,0 +1 @@
        5752  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 3519   5753   
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
 3520   5754   
new file mode 100644
 3521   5755   
index 0000000..dc6d01d
 3522         -
-- /dev/null
        5756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 3523   5757   
@@ -0,0 +1,3 @@
        5758  +
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
        5759  +
Host:example.amazonaws.com
        5760  +
 3524   5761   
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
 3525   5762   
new file mode 100644
 3526   5763   
index 0000000..6e29a7e
 3527         -
-- /dev/null
        5764  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 3528   5765   
@@ -0,0 +1,4 @@
        5766  +
AWS4-ECDSA-P256-SHA256
        5767  +
20150830T123600Z
        5768  +
20150830/service/aws4_request
        5769  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3529   5770   
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
 3530   5771   
new file mode 100644
 3531   5772   
index 0000000..e659c3b
 3532         -
-- /dev/null
        5773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 3533   5774   
@@ -0,0 +1,2 @@
        5775  +
GET / HTTP/1.1
        5776  +
Host:example.amazonaws.com
 3534   5777   
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
 3535   5778   
new file mode 100644
 3536   5779   
index 0000000..600f1d8
 3537         -
-- /dev/null
        5780  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 3538   5781   
@@ -0,0 +1,4 @@
        5782  +
AWS4-ECDSA-P256-SHA256
        5783  +
20150830T123600Z
        5784  +
20150830/service/aws4_request
        5785  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3539   5786   
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
 3540   5787   
new file mode 100644
 3541   5788   
index 0000000..0468d80
 3542         -
-- /dev/null
        5789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 3543   5790   
@@ -0,0 +1,12 @@
        5791  +
{
        5792  +
    "credentials": {
        5793  +
        "access_key_id": "AKIDEXAMPLE",
        5794  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5795  +
    },
        5796  +
    "expiration_in_seconds": 3600,
        5797  +
    "normalize": true,
        5798  +
    "region": "us-east-1",
        5799  +
    "service": "service",
        5800  +
    "sign_body": false,
        5801  +
    "timestamp": "2015-08-30T12:36:00Z"
        5802  +
}
              \
 No newline at end of file
 3544   5803   
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
 3545   5804   
similarity index 99%
 3546   5805   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 3547   5806   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 3548   5807   
index a6942c1..e881ac7 100644
 3549   5808   
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
 3550   5809   
new file mode 100644
 3551   5810   
index 0000000..4210210
 3552         -
-- /dev/null
        5811  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 3553   5812   
@@ -0,0 +1 @@
        5813  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 3554   5814   
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
 3555   5815   
new file mode 100644
 3556   5816   
index 0000000..257b110
 3557         -
-- /dev/null
        5817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 3558   5818   
@@ -0,0 +1,6 @@
        5819  +
POST / HTTP/1.1
        5820  +
Host:example.amazonaws.com
        5821  +
X-Amz-Date:20150830T123600Z
        5822  +
X-Amz-Region-Set:us-east-1
        5823  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        5824  +
 3559   5825   
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
 3560   5826   
similarity index 99%
 3561   5827   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 3562   5828   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 3563   5829   
index d5650cb..f8adf13 100644
 3564   5830   
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
 3565   5831   
new file mode 100644
 3566   5832   
index 0000000..379dcb2
 3567         -
-- /dev/null
        5833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 3568   5834   
@@ -0,0 +1,4 @@
        5835  +
{
        5836  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5837  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5838  +
}
 3569   5839   
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
 3570   5840   
similarity index 99%
 3571   5841   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 3572   5842   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 3573   5843   
index e48ce07..5ea8e3c 100644
 3574   5844   
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
 3575   5845   
new file mode 100644
 3576   5846   
index 0000000..9e2069e
 3577         -
-- /dev/null
        5847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 3578   5848   
@@ -0,0 +1 @@
        5849  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 3579   5850   
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
 3580   5851   
new file mode 100644
 3581   5852   
index 0000000..67f5d29
 3582         -
-- /dev/null
        5853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 3583   5854   
@@ -0,0 +1,3 @@
        5855  +
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
        5856  +
Host:example.amazonaws.com
        5857  +
 3584   5858   
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
 3585   5859   
similarity index 99%
 3586   5860   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 3587   5861   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 3588   5862   
index 34e3382..711c162 100644
 3589   5863   
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
 3590   5864   
similarity index 61%
 3591   5865   
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
 3592   5866   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 3593   5867   
index 3dc4179..3f0a82a 100644
 3594         -
-- 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
        5868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 3595   5869   
@@ -1,3 +1,2 @@
 3596   5870   
POST / HTTP/1.1
 3597   5871   
Host:example.amazonaws.com
 3598         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3599   5872   
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
 3600   5873   
new file mode 100644
 3601   5874   
index 0000000..0468d80
 3602         -
-- /dev/null
        5875  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 3603   5876   
@@ -0,0 +1,12 @@
        5877  +
{
        5878  +
    "credentials": {
        5879  +
        "access_key_id": "AKIDEXAMPLE",
        5880  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5881  +
    },
        5882  +
    "expiration_in_seconds": 3600,
        5883  +
    "normalize": true,
        5884  +
    "region": "us-east-1",
        5885  +
    "service": "service",
        5886  +
    "sign_body": false,
        5887  +
    "timestamp": "2015-08-30T12:36:00Z"
        5888  +
}
              \
 No newline at end of file
 3604   5889   
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
 3605   5890   
similarity index 99%
 3606   5891   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 3607   5892   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 3608   5893   
index a8e1727..2883822 100644
 3609   5894   
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
 3610   5895   
new file mode 100644
 3611   5896   
index 0000000..e3c2e6e
 3612         -
-- /dev/null
        5897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 3613   5898   
@@ -0,0 +1 @@
        5899  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 3614   5900   
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
 3615   5901   
new file mode 100644
 3616   5902   
index 0000000..1d6e288
 3617         -
-- /dev/null
        5903  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 3618   5904   
@@ -0,0 +1,7 @@
        5905  +
POST / HTTP/1.1
        5906  +
Host:example.amazonaws.com
        5907  +
My-Header1:value1
        5908  +
X-Amz-Date:20150830T123600Z
        5909  +
X-Amz-Region-Set:us-east-1
        5910  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        5911  +
 3619   5912   
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
 3620   5913   
similarity index 99%
 3621   5914   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 3622   5915   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 3623   5916   
index f6e3e9b..7c5236a 100644
 3624   5917   
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
 3625   5918   
new file mode 100644
 3626   5919   
index 0000000..379dcb2
 3627         -
-- /dev/null
        5920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 3628   5921   
@@ -0,0 +1,4 @@
        5922  +
{
        5923  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5924  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5925  +
}
 3629   5926   
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
 3630   5927   
similarity index 99%
 3631   5928   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 3632   5929   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 3633   5930   
index 0ae73e1..2cf3f29 100644
 3634   5931   
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
 3635   5932   
new file mode 100644
 3636   5933   
index 0000000..2a08401
 3637         -
-- /dev/null
        5934  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 3638   5935   
@@ -0,0 +1 @@
        5936  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 3639   5937   
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
 3640   5938   
new file mode 100644
 3641   5939   
index 0000000..8d2343f
 3642         -
-- /dev/null
        5940  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 3643   5941   
@@ -0,0 +1,4 @@
        5942  +
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
        5943  +
Host:example.amazonaws.com
        5944  +
My-Header1:value1
        5945  +
 3644   5946   
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
 3645   5947   
similarity index 99%
 3646   5948   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 3647   5949   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 3648   5950   
index 8cb96bf..2c4db7a 100644
 3649   5951   
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
 3650   5952   
similarity index 69%
 3651   5953   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 3652   5954   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 3653   5955   
index 0253f19..917720e 100644
 3654         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        5956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 3655   5957   
@@ -1,4 +1,3 @@
 3656   5958   
POST / HTTP/1.1
 3657   5959   
Host:example.amazonaws.com
 3658   5960   
My-Header1:value1
 3659         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3660   5961   
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
 3661   5962   
new file mode 100644
 3662   5963   
index 0000000..0468d80
 3663         -
-- /dev/null
        5964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 3664   5965   
@@ -0,0 +1,12 @@
        5966  +
{
        5967  +
    "credentials": {
        5968  +
        "access_key_id": "AKIDEXAMPLE",
        5969  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5970  +
    },
        5971  +
    "expiration_in_seconds": 3600,
        5972  +
    "normalize": true,
        5973  +
    "region": "us-east-1",
        5974  +
    "service": "service",
        5975  +
    "sign_body": false,
        5976  +
    "timestamp": "2015-08-30T12:36:00Z"
        5977  +
}
              \
 No newline at end of file
 3665   5978   
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
 3666   5979   
similarity index 99%
 3667   5980   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 3668   5981   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 3669   5982   
index 1dc3ef8..164e65c 100644
 3670   5983   
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
 3671   5984   
new file mode 100644
 3672   5985   
index 0000000..7072b0e
 3673         -
-- /dev/null
        5986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 3674   5987   
@@ -0,0 +1 @@
        5988  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 3675   5989   
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
 3676   5990   
new file mode 100644
 3677   5991   
index 0000000..17f5e3e
 3678         -
-- /dev/null
        5992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 3679   5993   
@@ -0,0 +1,7 @@
        5994  +
POST / HTTP/1.1
        5995  +
Host:example.amazonaws.com
        5996  +
My-Header1:VALUE1
        5997  +
X-Amz-Date:20150830T123600Z
        5998  +
X-Amz-Region-Set:us-east-1
        5999  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        6000  +
 3680   6001   
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
 3681   6002   
similarity index 99%
 3682   6003   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 3683   6004   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 3684   6005   
index 59c7e45..620f54e 100644
 3685   6006   
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
 3686   6007   
new file mode 100644
 3687   6008   
index 0000000..379dcb2
 3688         -
-- /dev/null
        6009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 3689   6010   
@@ -0,0 +1,4 @@
        6011  +
{
        6012  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6013  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6014  +
}
 3690   6015   
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
 3691   6016   
similarity index 99%
 3692   6017   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 3693   6018   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 3694   6019   
index 377e6f3..23e0da3 100644
 3695   6020   
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
 3696   6021   
new file mode 100644
 3697   6022   
index 0000000..a18acb8
 3698         -
-- /dev/null
        6023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 3699   6024   
@@ -0,0 +1 @@
        6025  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 3700   6026   
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
 3701   6027   
new file mode 100644
 3702   6028   
index 0000000..7cbdcfa
 3703         -
-- /dev/null
        6029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 3704   6030   
@@ -0,0 +1,4 @@
        6031  +
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
        6032  +
Host:example.amazonaws.com
        6033  +
My-Header1:VALUE1
        6034  +
 3705   6035   
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
 3706   6036   
similarity index 99%
 3707   6037   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 3708   6038   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 3709   6039   
index 84a7afd..0c90627 100644
 3710   6040   
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
 3711   6041   
similarity index 69%
 3712   6042   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 3713   6043   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 3714   6044   
index 3f9987a..5f14c91 100644
 3715         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        6045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 3716   6046   
@@ -1,4 +1,3 @@
 3717   6047   
POST / HTTP/1.1
 3718   6048   
Host:example.amazonaws.com
 3719   6049   
My-Header1:VALUE1
 3720         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3721   6050   
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
 3722   6051   
new file mode 100644
 3723   6052   
index 0000000..8f1d5ce
 3724         -
-- /dev/null
        6053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 3725   6054   
@@ -0,0 +1,14 @@
        6055  +
{
        6056  +
    "credentials": {
        6057  +
        "access_key_id": "AKIDEXAMPLE",
        6058  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6059  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6060  +
    },
        6061  +
    "expiration_in_seconds": 3600,
        6062  +
    "normalize": true,
        6063  +
    "region": "us-east-1",
        6064  +
    "service": "service",
        6065  +
    "sign_body": false,
        6066  +
    "timestamp": "2015-08-30T12:36:00Z",
        6067  +
    "omit_session_token": true
        6068  +
}
 3726   6069   
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
 3727   6070   
similarity index 99%
 3728   6071   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 3729   6072   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 3730   6073   
index a6942c1..e881ac7 100644
 3731   6074   
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
 3732   6075   
new file mode 100644
 3733   6076   
index 0000000..9c5ecb9
 3734         -
-- /dev/null
        6077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 3735   6078   
@@ -0,0 +1 @@
        6079  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 3736   6080   
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
 3737   6081   
similarity index 52%
 3738   6082   
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
 3739   6083   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 3740   6084   
index 9d91775..61b6527 100644
 3741         -
-- 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
        6085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 3742   6086   
@@ -1,4 +1,7 @@
 3743   6087   
POST / HTTP/1.1
 3744   6088   
Host:example.amazonaws.com
 3745         -
X-Amz-Date:20150830T123600Z
 3746   6089   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6090  +
X-Amz-Date:20150830T123600Z
        6091  +
X-Amz-Region-Set:us-east-1
        6092  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        6093  +
 3747   6094   
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
 3748   6095   
similarity index 99%
 3749   6096   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 3750   6097   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 3751   6098   
index d5650cb..f8adf13 100644
 3752   6099   
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
 3753   6100   
new file mode 100644
 3754   6101   
index 0000000..379dcb2
 3755         -
-- /dev/null
        6102  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 3756   6103   
@@ -0,0 +1,4 @@
        6104  +
{
        6105  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6106  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6107  +
}
 3757   6108   
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
 3758   6109   
similarity index 99%
 3759   6110   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 3760   6111   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 3761   6112   
index e48ce07..5ea8e3c 100644
 3762   6113   
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
 3763   6114   
new file mode 100644
 3764   6115   
index 0000000..ff8823a
 3765         -
-- /dev/null
        6116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 3766   6117   
@@ -0,0 +1 @@
        6118  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 3767   6119   
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
 3768   6120   
new file mode 100644
 3769   6121   
index 0000000..cfac41b
 3770         -
-- /dev/null
        6122  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 3771   6123   
@@ -0,0 +1,3 @@
        6124  +
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
        6125  +
Host:example.amazonaws.com
        6126  +
 3772   6127   
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
 3773   6128   
similarity index 99%
 3774   6129   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 3775   6130   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 3776   6131   
index 34e3382..711c162 100644
 3777   6132   
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
 3778   6133   
similarity index 61%
 3779   6134   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 3780   6135   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 3781   6136   
index 3dc4179..3f0a82a 100644
 3782         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        6137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 3783   6138   
@@ -1,3 +1,2 @@
 3784   6139   
POST / HTTP/1.1
 3785   6140   
Host:example.amazonaws.com
 3786         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3787   6141   
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
 3788   6142   
new file mode 100644
 3789   6143   
index 0000000..5187392
 3790         -
-- /dev/null
        6144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 3791   6145   
@@ -0,0 +1,14 @@
        6146  +
{
        6147  +
    "credentials": {
        6148  +
        "access_key_id": "AKIDEXAMPLE",
        6149  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6150  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6151  +
    },
        6152  +
    "expiration_in_seconds": 3600,
        6153  +
    "normalize": true,
        6154  +
    "region": "us-east-1",
        6155  +
    "service": "service",
        6156  +
    "sign_body": false,
        6157  +
    "timestamp": "2015-08-30T12:36:00Z",
        6158  +
    "omit_session_token": false
        6159  +
}
 3792   6160   
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
 3793   6161   
similarity index 99%
 3794   6162   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 3795   6163   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 3796   6164   
index dd408c8..e95924e 100644
 3797   6165   
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
 3798   6166   
new file mode 100644
 3799   6167   
index 0000000..1573f07
 3800         -
-- /dev/null
        6168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 3801   6169   
@@ -0,0 +1 @@
        6170  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 3802   6171   
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
 3803   6172   
new file mode 100644
 3804   6173   
index 0000000..6ef9a08
 3805         -
-- /dev/null
        6174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 3806   6175   
@@ -0,0 +1,7 @@
        6176  +
POST / HTTP/1.1
        6177  +
Host:example.amazonaws.com
        6178  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6179  +
X-Amz-Date:20150830T123600Z
        6180  +
X-Amz-Region-Set:us-east-1
        6181  +
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
        6182  +
 3807   6183   
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
 3808   6184   
similarity index 99%
 3809   6185   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 3810   6186   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 3811   6187   
index f352b54..3c3235f 100644
 3812   6188   
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
 3813   6189   
new file mode 100644
 3814   6190   
index 0000000..379dcb2
 3815         -
-- /dev/null
        6191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 3816   6192   
@@ -0,0 +1,4 @@
        6193  +
{
        6194  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6195  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6196  +
}
 3817   6197   
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
 3818   6198   
similarity index 99%
 3819   6199   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 3820   6200   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 3821   6201   
index 832cdc0..63b7de5 100644
 3822   6202   
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
 3823   6203   
new file mode 100644
 3824   6204   
index 0000000..713f57c
 3825         -
-- /dev/null
        6205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 3826   6206   
@@ -0,0 +1 @@
        6207  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 3827   6208   
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
 3828   6209   
new file mode 100644
 3829   6210   
index 0000000..32c3bb3
 3830         -
-- /dev/null
        6211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 3831   6212   
@@ -0,0 +1,3 @@
        6213  +
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
        6214  +
Host:example.amazonaws.com
        6215  +
 3832   6216   
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
 3833   6217   
similarity index 99%
 3834   6218   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 3835   6219   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 3836   6220   
index d7f3668..b46cd8c 100644
 3837   6221   
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
 3838   6222   
similarity index 60%
 3839   6223   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 3840   6224   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 3841   6225   
index 8b5efc8..3f0a82a 100644
 3842         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        6226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 3843   6227   
@@ -1,3 +1,2 @@
 3844   6228   
POST / HTTP/1.1
 3845   6229   
Host:example.amazonaws.com
 3846         -
X-Amz-Date:20150830T123600Z
 3847   6230   
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
 3848   6231   
new file mode 100644
 3849   6232   
index 0000000..0468d80
 3850         -
-- /dev/null
        6233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 3851   6234   
@@ -0,0 +1,12 @@
        6235  +
{
        6236  +
    "credentials": {
        6237  +
        "access_key_id": "AKIDEXAMPLE",
        6238  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6239  +
    },
        6240  +
    "expiration_in_seconds": 3600,
        6241  +
    "normalize": true,
        6242  +
    "region": "us-east-1",
        6243  +
    "service": "service",
        6244  +
    "sign_body": false,
        6245  +
    "timestamp": "2015-08-30T12:36:00Z"
        6246  +
}
              \
 No newline at end of file
 3852   6247   
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
 3853   6248   
similarity index 99%
 3854   6249   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 3855   6250   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 3856   6251   
index 02af60f..34b8c11 100644
 3857   6252   
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
 3858   6253   
new file mode 100644
 3859   6254   
index 0000000..aac6427
 3860         -
-- /dev/null
        6255  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 3861   6256   
@@ -0,0 +1 @@
        6257  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 3862   6258   
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
 3863   6259   
new file mode 100644
 3864   6260   
index 0000000..a611436
 3865         -
-- /dev/null
        6261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 3866   6262   
@@ -0,0 +1,6 @@
        6263  +
POST /?Param1=value1 HTTP/1.1
        6264  +
Host:example.amazonaws.com
        6265  +
X-Amz-Date:20150830T123600Z
        6266  +
X-Amz-Region-Set:us-east-1
        6267  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        6268  +
 3867   6269   
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
 3868   6270   
similarity index 99%
 3869   6271   
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
 3870   6272   
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
 3871   6273   
index 4256b4f..ad88dff 100644
 3872   6274   
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
 3873   6275   
new file mode 100644
 3874   6276   
index 0000000..379dcb2
 3875         -
-- /dev/null
        6277  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 3876   6278   
@@ -0,0 +1,4 @@
        6279  +
{
        6280  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6281  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6282  +
}
 3877   6283   
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
 3878   6284   
similarity index 99%
 3879   6285   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 3880   6286   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 3881   6287   
index fa84bbd..76d5ad6 100644
 3882   6288   
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
 3883   6289   
new file mode 100644
 3884   6290   
index 0000000..4cb1c94
 3885         -
-- /dev/null
        6291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 3886   6292   
@@ -0,0 +1 @@
        6293  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 3887   6294   
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
 3888   6295   
new file mode 100644
 3889   6296   
index 0000000..bd22b97
 3890         -
-- /dev/null
        6297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 3891   6298   
@@ -0,0 +1,3 @@
        6299  +
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
        6300  +
Host:example.amazonaws.com
        6301  +
 3892   6302   
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
 3893   6303   
similarity index 99%
 3894   6304   
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
 3895   6305   
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
 3896   6306   
index de270ef..8c9d319 100644
 3897   6307   
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
 3898   6308   
similarity index 67%
 3899   6309   
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
 3900   6310   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 3901   6311   
index 9157bc7..c9d6e5d 100644
 3902         -
-- 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
        6312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 3903   6313   
@@ -1,3 +1,2 @@
 3904   6314   
POST /?Param1=value1 HTTP/1.1
 3905   6315   
Host:example.amazonaws.com
 3906         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3907   6316   
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
 3908   6317   
new file mode 100644
 3909   6318   
index 0000000..0468d80
 3910         -
-- /dev/null
        6319  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 3911   6320   
@@ -0,0 +1,12 @@
        6321  +
{
        6322  +
    "credentials": {
        6323  +
        "access_key_id": "AKIDEXAMPLE",
        6324  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6325  +
    },
        6326  +
    "expiration_in_seconds": 3600,
        6327  +
    "normalize": true,
        6328  +
    "region": "us-east-1",
        6329  +
    "service": "service",
        6330  +
    "sign_body": false,
        6331  +
    "timestamp": "2015-08-30T12:36:00Z"
        6332  +
}
              \
 No newline at end of file
 3912   6333   
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
 3913   6334   
similarity index 99%
 3914   6335   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 3915   6336   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 3916   6337   
index 02af60f..34b8c11 100644
 3917   6338   
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
 3918   6339   
new file mode 100644
 3919   6340   
index 0000000..34f75c8
 3920         -
-- /dev/null
        6341  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 3921   6342   
@@ -0,0 +1 @@
        6343  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 3922   6344   
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
 3923   6345   
new file mode 100644
 3924   6346   
index 0000000..c731408
 3925         -
-- /dev/null
        6347  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 3926   6348   
@@ -0,0 +1,6 @@
        6349  +
POST /?Param1=value1 HTTP/1.1
        6350  +
Host:example.amazonaws.com
        6351  +
X-Amz-Date:20150830T123600Z
        6352  +
X-Amz-Region-Set:us-east-1
        6353  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        6354  +
 3927   6355   
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
 3928   6356   
similarity index 99%
 3929   6357   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 3930   6358   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 3931   6359   
index 4256b4f..ad88dff 100644
 3932   6360   
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
 3933   6361   
new file mode 100644
 3934   6362   
index 0000000..379dcb2
 3935         -
-- /dev/null
        6363  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 3936   6364   
@@ -0,0 +1,4 @@
        6365  +
{
        6366  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6367  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6368  +
}
 3937   6369   
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
 3938   6370   
similarity index 99%
 3939   6371   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 3940   6372   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 3941   6373   
index fa84bbd..76d5ad6 100644
 3942   6374   
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
 3943   6375   
new file mode 100644
 3944   6376   
index 0000000..ae000d6
 3945         -
-- /dev/null
        6377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 3946   6378   
@@ -0,0 +1 @@
        6379  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 3947   6380   
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
 3948   6381   
new file mode 100644
 3949   6382   
index 0000000..a868f7d
 3950         -
-- /dev/null
        6383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 3951   6384   
@@ -0,0 +1,3 @@
        6385  +
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
        6386  +
Host:example.amazonaws.com
        6387  +
 3952   6388   
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
 3953   6389   
similarity index 99%
 3954   6390   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 3955   6391   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 3956   6392   
index de270ef..8c9d319 100644
 3957   6393   
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
 3958   6394   
similarity index 67%
 3959   6395   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 3960   6396   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 3961   6397   
index 9157bc7..c9d6e5d 100644
 3962         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        6398  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 3963   6399   
@@ -1,3 +1,2 @@
 3964   6400   
POST /?Param1=value1 HTTP/1.1
 3965   6401   
Host:example.amazonaws.com
 3966         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3967   6402   
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
 3968   6403   
new file mode 100644
 3969   6404   
index 0000000..0468d80
 3970         -
-- /dev/null
        6405  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 3971   6406   
@@ -0,0 +1,12 @@
        6407  +
{
        6408  +
    "credentials": {
        6409  +
        "access_key_id": "AKIDEXAMPLE",
        6410  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6411  +
    },
        6412  +
    "expiration_in_seconds": 3600,
        6413  +
    "normalize": true,
        6414  +
    "region": "us-east-1",
        6415  +
    "service": "service",
        6416  +
    "sign_body": false,
        6417  +
    "timestamp": "2015-08-30T12:36:00Z"
        6418  +
}
              \
 No newline at end of file
 3972   6419   
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
 3973   6420   
similarity index 99%
 3974   6421   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 3975   6422   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 3976   6423   
index a6942c1..e881ac7 100644
 3977   6424   
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
 3978   6425   
new file mode 100644
 3979   6426   
index 0000000..7c5e47b
 3980         -
-- /dev/null
        6427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 3981   6428   
@@ -0,0 +1 @@
        6429  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 3982   6430   
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
 3983   6431   
new file mode 100644
 3984   6432   
index 0000000..c0e50a0
 3985         -
-- /dev/null
        6433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 3986   6434   
@@ -0,0 +1,6 @@
        6435  +
POST / HTTP/1.1
        6436  +
Host:example.amazonaws.com
        6437  +
X-Amz-Date:20150830T123600Z
        6438  +
X-Amz-Region-Set:us-east-1
        6439  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        6440  +
 3987   6441   
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
 3988   6442   
similarity index 99%
 3989   6443   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 3990   6444   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 3991   6445   
index d5650cb..f8adf13 100644
 3992   6446   
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
 3993   6447   
new file mode 100644
 3994   6448   
index 0000000..379dcb2
 3995         -
-- /dev/null
        6449  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 3996   6450   
@@ -0,0 +1,4 @@
        6451  +
{
        6452  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6453  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6454  +
}
 3997   6455   
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
 3998   6456   
similarity index 99%
 3999   6457   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 4000   6458   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 4001   6459   
index e48ce07..5ea8e3c 100644
 4002   6460   
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
 4003   6461   
new file mode 100644
 4004   6462   
index 0000000..ea8e3b4
 4005         -
-- /dev/null
        6463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 4006   6464   
@@ -0,0 +1 @@
        6465  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 4007   6466   
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
 4008   6467   
new file mode 100644
 4009   6468   
index 0000000..616973f
 4010         -
-- /dev/null
        6469  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 4011   6470   
@@ -0,0 +1,3 @@
        6471  +
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
        6472  +
Host:example.amazonaws.com
        6473  +
 4012   6474   
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
 4013   6475   
similarity index 99%
 4014   6476   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 4015   6477   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 4016   6478   
index 34e3382..711c162 100644
 4017   6479   
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
 4018   6480   
new file mode 100644
 4019   6481   
index 0000000..3f0a82a
 4020         -
-- /dev/null
        6482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 4021   6483   
@@ -0,0 +1,2 @@
        6484  +
POST / HTTP/1.1
        6485  +
Host:example.amazonaws.com
 4022   6486   
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
 4023   6487   
new file mode 100644
 4024   6488   
index 0000000..0db1df1
 4025         -
-- /dev/null
        6489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 4026   6490   
@@ -0,0 +1,12 @@
        6491  +
{
        6492  +
    "credentials": {
        6493  +
        "access_key_id": "AKIDEXAMPLE",
        6494  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6495  +
    },
        6496  +
    "expiration_in_seconds": 3600,
        6497  +
    "normalize": true,
        6498  +
    "region": "us-east-1",
        6499  +
    "service": "service",
        6500  +
    "sign_body": true,
        6501  +
    "timestamp": "2015-08-30T12:36:00Z"
        6502  +
}
              \
 No newline at end of file
 4027   6503   
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
 4028   6504   
similarity index 62%
 4029   6505   
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
 4030   6506   
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
 4031   6507   
index 05ab787..62639b2 100644
 4032         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        6508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 4033   6509   
@@ -1,12 +1,12 @@
 4034   6510   
POST
 4035   6511   
/
 4036   6512   
 4037   6513   
content-length:13
 4038   6514   
content-type:application/x-www-form-urlencoded; charset=utf-8
 4039   6515   
host:example.amazonaws.com
 4040         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6516  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 4041   6517   
x-amz-date:20150830T123600Z
 4042   6518   
x-amz-region-set:us-east-1
 4043   6519   
 4044   6520   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 4045         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6521  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 4046   6522   
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
 4047   6523   
new file mode 100644
 4048   6524   
index 0000000..006ec2e
 4049         -
-- /dev/null
        6525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 4050   6526   
@@ -0,0 +1 @@
        6527  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 4051   6528   
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
 4052   6529   
new file mode 100644
 4053   6530   
index 0000000..87a11f2
 4054         -
-- /dev/null
        6531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 4055   6532   
@@ -0,0 +1,10 @@
        6533  +
POST / HTTP/1.1
        6534  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        6535  +
Host:example.amazonaws.com
        6536  +
Content-Length:13
        6537  +
X-Amz-Date:20150830T123600Z
        6538  +
X-Amz-Region-Set:us-east-1
        6539  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        6540  +
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
        6541  +
        6542  +
Param1=value1
              \
 No newline at end of file
 4056   6543   
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
 4057   6544   
new file mode 100644
 4058   6545   
index 0000000..c047afb
 4059         -
-- /dev/null
        6546  +
++ 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
 4060   6547   
@@ -0,0 +1,4 @@
        6548  +
AWS4-ECDSA-P256-SHA256
        6549  +
20150830T123600Z
        6550  +
20150830/service/aws4_request
        6551  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 4061   6552   
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
 4062   6553   
new file mode 100644
 4063   6554   
index 0000000..379dcb2
 4064         -
-- /dev/null
        6555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 4065   6556   
@@ -0,0 +1,4 @@
        6557  +
{
        6558  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6559  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6560  +
}
 4066   6561   
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
 4067   6562   
similarity index 85%
 4068   6563   
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
 4069   6564   
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
 4070   6565   
index fcc454f..6933a8c 100644
 4071         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        6566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 4072   6567   
@@ -1,9 +1,9 @@
 4073   6568   
POST
 4074   6569   
/
 4075   6570   
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
 4076   6571   
content-length:13
 4077   6572   
content-type:application/x-www-form-urlencoded; charset=utf-8
 4078   6573   
host:example.amazonaws.com
 4079   6574   
 4080   6575   
content-length;content-type;host
 4081         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6576  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 4082   6577   
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
 4083   6578   
new file mode 100644
 4084   6579   
index 0000000..34a2e12
 4085         -
-- /dev/null
        6580  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 4086   6581   
@@ -0,0 +1 @@
        6582  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 4087   6583   
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
 4088   6584   
new file mode 100644
 4089   6585   
index 0000000..197b99e
 4090         -
-- /dev/null
        6586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 4091   6587   
@@ -0,0 +1,6 @@
        6588  +
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
        6589  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        6590  +
Host:example.amazonaws.com
        6591  +
Content-Length:13
        6592  +
        6593  +
Param1=value1
              \
 No newline at end of file
 4092   6594   
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
 4093   6595   
new file mode 100644
 4094   6596   
index 0000000..9d2bc74
 4095         -
-- /dev/null
        6597  +
++ 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
 4096   6598   
@@ -0,0 +1,4 @@
        6599  +
AWS4-ECDSA-P256-SHA256
        6600  +
20150830T123600Z
        6601  +
20150830/service/aws4_request
        6602  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 4097   6603   
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
 4098   6604   
similarity index 80%
 4099   6605   
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
 4100   6606   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 4101   6607   
index 36015f1..8289eaa 100644
 4102         -
-- 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
        6608  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 4103   6609   
@@ -1,6 +1,6 @@
 4104   6610   
POST / HTTP/1.1
 4105   6611   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 4106   6612   
Host:example.amazonaws.com
 4107         -
X-Amz-Date:20150830T123600Z
        6613  +
Content-Length:13
 4108   6614   
 4109   6615   
Param1=value1
              \
 No newline at end of file
 4110   6616   
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
 4111   6617   
new file mode 100644
 4112   6618   
index 0000000..0db1df1
 4113         -
-- /dev/null
        6619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 4114   6620   
@@ -0,0 +1,12 @@
        6621  +
{
        6622  +
    "credentials": {
        6623  +
        "access_key_id": "AKIDEXAMPLE",
        6624  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6625  +
    },
        6626  +
    "expiration_in_seconds": 3600,
        6627  +
    "normalize": true,
        6628  +
    "region": "us-east-1",
        6629  +
    "service": "service",
        6630  +
    "sign_body": true,
        6631  +
    "timestamp": "2015-08-30T12:36:00Z"
        6632  +
}
              \
 No newline at end of file
 4115   6633   
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
 4116   6634   
similarity index 61%
 4117   6635   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 4118   6636   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 4119   6637   
index 69009dc..797632b 100644
 4120         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        6638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 4121   6639   
@@ -1,12 +1,12 @@
 4122   6640   
POST
 4123   6641   
/
 4124   6642   
 4125   6643   
content-length:13
 4126   6644   
content-type:application/x-www-form-urlencoded
 4127   6645   
host:example.amazonaws.com
 4128         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6646  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 4129   6647   
x-amz-date:20150830T123600Z
 4130   6648   
x-amz-region-set:us-east-1
 4131   6649   
 4132   6650   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 4133         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6651  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 4134   6652   
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
 4135   6653   
new file mode 100644
 4136   6654   
index 0000000..f5a641c
 4137         -
-- /dev/null
        6655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 4138   6656   
@@ -0,0 +1 @@
        6657  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 4139   6658   
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
 4140   6659   
new file mode 100644
 4141   6660   
index 0000000..7bd94a7
 4142         -
-- /dev/null
        6661  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 4143   6662   
@@ -0,0 +1,10 @@
        6663  +
POST / HTTP/1.1
        6664  +
Content-Type:application/x-www-form-urlencoded
        6665  +
Host:example.amazonaws.com
        6666  +
Content-Length:13
        6667  +
X-Amz-Date:20150830T123600Z
        6668  +
X-Amz-Region-Set:us-east-1
        6669  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        6670  +
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
        6671  +
        6672  +
Param1=value1
              \
 No newline at end of file
 4144   6673   
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
 4145   6674   
new file mode 100644
 4146   6675   
index 0000000..8d25ba9
 4147         -
-- /dev/null
        6676  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 4148   6677   
@@ -0,0 +1,4 @@
        6678  +
AWS4-ECDSA-P256-SHA256
        6679  +
20150830T123600Z
        6680  +
20150830/service/aws4_request
        6681  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 4149   6682   
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
 4150   6683   
new file mode 100644
 4151   6684   
index 0000000..379dcb2
 4152         -
-- /dev/null
        6685  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 4153   6686   
@@ -0,0 +1,4 @@
        6687  +
{
        6688  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6689  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6690  +
}
 4154   6691   
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
 4155   6692   
similarity index 99%
 4156   6693   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 4157   6694   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 4158   6695   
index 9ed065b..563ff58 100644
 4159   6696   
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
 4160   6697   
new file mode 100644
 4161   6698   
index 0000000..0c77daf
 4162         -
-- /dev/null
        6699  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 4163   6700   
@@ -0,0 +1 @@
        6701  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 4164   6702   
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
 4165   6703   
new file mode 100644
 4166   6704   
index 0000000..71d6de9
 4167         -
-- /dev/null
        6705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 4168   6706   
@@ -0,0 +1,6 @@
        6707  +
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
        6708  +
Content-Type:application/x-www-form-urlencoded
        6709  +
Host:example.amazonaws.com
        6710  +
Content-Length:13
        6711  +
        6712  +
Param1=value1
              \
 No newline at end of file
 4169   6713   
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
 4170   6714   
similarity index 99%
 4171   6715   
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
 4172   6716   
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
 4173   6717   
index bef3143..cc7a224 100644
 4174   6718   
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
 4175   6719   
new file mode 100644
 4176   6720   
index 0000000..760b2d3
 4177         -
-- /dev/null
        6721  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 4178   6722   
@@ -0,0 +1,6 @@
        6723  +
POST / HTTP/1.1
        6724  +
Content-Type:application/x-www-form-urlencoded
        6725  +
Host:example.amazonaws.com
        6726  +
Content-Length:13
        6727  +
        6728  +
Param1=value1
              \
 No newline at end of file
 4179   6729   
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
 4180   6730   
index 9bd636f..b53f33f 100644
 4181         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        6731  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 4182   6732   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 4183   6733   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 4184   6734   
        }
 4185   6735   
 4186   6736   
        if let SignatureValues::QueryParams(values) = values {
 4187   6737   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 4188   6738   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 4189   6739   
 4190   6740   
            #[cfg(feature = "sigv4a")]
 4191   6741   
            if let Some(regions) = values.region_set {
 4192   6742   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 4193   6743   
            }
 4194   6744   
 4195   6745   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 4196   6746   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 4197   6747   
            add_param(
 4198   6748   
                &mut params,
 4199   6749   
                param::X_AMZ_SIGNED_HEADERS,
 4200   6750   
                values.signed_headers.as_str(),
 4201   6751   
            );
 4202   6752   
 4203   6753   
            if let Some(security_token) = values.security_token {
 4204   6754   
                add_param(
 4205   6755   
                    &mut params,
 4206   6756   
                    settings
 4207   6757   
                        .session_token_name_override
 4208   6758   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 4209   6759   
                    security_token,
 4210   6760   
                );
 4211   6761   
            }
 4212   6762   
        }
 4213         -
        // Sort by param name, and then by param value
        6763  +
        6764  +
        // Sort on the _encoded_ key/value pairs
        6765  +
        let mut params: Vec<(String, String)> = params
        6766  +
            .into_iter()
        6767  +
            .map(|x| {
        6768  +
                use aws_smithy_http::query::fmt_string;
        6769  +
                let enc_k = fmt_string(&x.0);
        6770  +
                let enc_v = fmt_string(&x.1);
        6771  +
                (enc_k, enc_v)
        6772  +
            })
        6773  +
            .collect();
        6774  +
 4214   6775   
        params.sort();
 4215   6776   
 4216   6777   
        let mut query = QueryWriter::new(uri);
 4217   6778   
        query.clear_params();
 4218   6779   
        for (key, value) in params {
 4219         -
            query.insert(&key, &value);
        6780  +
            query.insert_encoded(&key, &value);
 4220   6781   
        }
 4221   6782   
 4222   6783   
        let query = query.build_query();
 4223   6784   
        if query.is_empty() {
 4224   6785   
            None
 4225   6786   
        } else {
 4226   6787   
            Some(query)
 4227   6788   
        }
 4228   6789   
    }
 4229   6790   
 4230   6791   
    fn insert_host_header(
 4231   6792   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 4232   6793   
        uri: &Uri,
 4233   6794   
    ) -> HeaderValue {
 4234   6795   
        match canonical_headers.get(&HOST) {
 4235   6796   
            Some(header) => header.clone(),
 4236   6797   
            None => {
 4237   6798   
                let port = uri.port();
 4238   6799   
                let scheme = uri.scheme();
 4239   6800   
                let authority = uri
 4240   6801   
                    .authority()
 4241   6802   
                    .expect("request uri authority must be set for signing")
 4242   6803   
                    .as_str();
 4243   6804   
                let host = uri
 4244   6805   
                    .host()
 4245   6806   
                    .expect("request uri host must be set for signing");
 4246   6807   
 4247   6808   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 4248   6809   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 4249   6810   
                // sent in the Host header (and Hyper strips default ports if they are present)
 4250   6811   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 4251   6812   
            service,
 4252   6813   
            hashed_creq,
 4253   6814   
            signature_version: SignatureVersion::V4a,
 4254   6815   
        }
 4255   6816   
    }
 4256   6817   
}
 4257   6818   
 4258   6819   
impl fmt::Display for StringToSign<'_> {
 4259   6820   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 4260   6821   
        write!(
 4261   6822   
            f,
 4262   6823   
            "{}\n{}\n{}\n{}",
 4263   6824   
            self.algorithm,
 4264   6825   
            format_date_time(self.time),
 4265   6826   
            match self.signature_version {
 4266   6827   
                SignatureVersion::V4 => self.scope.to_string(),
 4267   6828   
                SignatureVersion::V4a => self.scope.v4a_display(),
 4268   6829   
            },
 4269   6830   
            self.hashed_creq
 4270   6831   
        )
 4271   6832   
    }
 4272   6833   
}
 4273   6834   
 4274   6835   
#[cfg(test)]
 4275   6836   
mod tests {
 4276   6837   
    use crate::date_time::test_parsers::parse_date_time;
 4277   6838   
    use crate::http_request::canonical_request::{
 4278   6839   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 4279   6840   
    };
 4280   6841   
    use crate::http_request::test;
        6842  +
    use crate::http_request::test::SigningSuiteTest;
 4281   6843   
    use crate::http_request::{
 4282   6844   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 4283   6845   
        SigningParams, SigningSettings,
 4284   6846   
    };
 4285   6847   
    use crate::sign::v4;
 4286   6848   
    use crate::sign::v4::sha256_hex_string;
 4287   6849   
    use aws_credential_types::Credentials;
 4288   6850   
    use aws_smithy_http::query_writer::QueryWriter;
 4289   6851   
    use aws_smithy_runtime_api::client::identity::Identity;
 4290   6852   
    use http0::{HeaderValue, Uri};
 4291   6853   
    use pretty_assertions::assert_eq;
 4292   6854   
    use proptest::{prelude::*, proptest};
 4293   6855   
    use std::borrow::Cow;
 4294   6856   
    use std::time::Duration;
 4295   6857   
 4296   6858   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 4297   6859   
        v4::signing_params::Builder::default()
 4298   6860   
            .identity(identity)
 4299   6861   
            .region("test-region")
 4300   6862   
            .name("testservicename")
 4301   6863   
            .time(parse_date_time("20210511T154045Z").unwrap())
 4302   6864   
            .settings(settings)
 4303   6865   
            .build()
 4304   6866   
            .unwrap()
 4305   6867   
            .into()
 4306   6868   
    }
 4307   6869   
 4308   6870   
    #[test]
 4309   6871   
    fn test_repeated_header() {
 4310         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        6872  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        6873  +
        let mut req = test.request();
 4311   6874   
        req.headers.push((
 4312   6875   
            "x-amz-object-attributes".to_string(),
 4313   6876   
            "Checksum".to_string(),
 4314   6877   
        ));
 4315   6878   
        req.headers.push((
 4316   6879   
            "x-amz-object-attributes".to_string(),
 4317   6880   
            "ObjectSize".to_string(),
 4318   6881   
        ));
 4319   6882   
        let req = SignableRequest::from(&req);
 4320   6883   
        let settings = SigningSettings {
 4321   6884   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 4322   6885   
            session_token_mode: SessionTokenMode::Exclude,
 4323   6886   
            ..Default::default()
 4324   6887   
        };
 4325   6888   
        let identity = Credentials::for_tests().into();
 4326   6889   
        let signing_params = signing_params(&identity, settings);
 4327   6890   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4328   6891   
 4329   6892   
        assert_eq!(
 4330   6893   
            creq.values.signed_headers().to_string(),
 4331   6894   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 4332   6895   
        );
 4333   6896   
        assert_eq!(
 4334   6897   
            creq.header_values_for("x-amz-object-attributes"),
 4335   6898   
            "Checksum,ObjectSize",
 4336   6899   
        );
 4337   6900   
    }
 4338   6901   
 4339   6902   
    #[test]
 4340   6903   
    fn test_host_header_properly_handles_ports() {
 4341   6904   
        fn host_header_test_setup(endpoint: String) -> String {
 4342         -
            let mut req = test::v4::test_request("get-vanilla");
        6905  +
            let test = SigningSuiteTest::v4("get-vanilla");
        6906  +
            let mut req = test.request();
 4343   6907   
            req.uri = endpoint;
 4344   6908   
            let req = SignableRequest::from(&req);
 4345   6909   
            let settings = SigningSettings {
 4346   6910   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 4347   6911   
                session_token_mode: SessionTokenMode::Exclude,
 4348   6912   
                ..Default::default()
 4349   6913   
            };
 4350   6914   
            let identity = Credentials::for_tests().into();
 4351   6915   
            let signing_params = signing_params(&identity, settings);
 4352   6916   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4353   6917   
            creq.header_values_for("host")
 4354   6918   
        }
 4355   6919   
 4356   6920   
        // HTTP request with 80 port should not be signed with that port
 4357   6921   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 4358   6922   
        assert_eq!(http_80_host_header, "localhost",);
 4359   6923   
 4360   6924   
        // HTTP request with non-80 port should be signed with that port
 4361   6925   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 4362   6926   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 4363   6927   
 4364   6928   
        // HTTPS request with 443 port should not be signed with that port
 4365   6929   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 4366   6930   
        assert_eq!(https_443_host_header, "localhost",);
 4367   6931   
 4368   6932   
        // HTTPS request with non-443 port should be signed with that port
 4369   6933   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 4370   6934   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 4371   6935   
    }
 4372   6936   
 4373   6937   
    #[test]
 4374   6938   
    fn test_set_xamz_sha_256() {
 4375         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        6939  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        6940  +
        let req = test.request();
 4376   6941   
        let req = SignableRequest::from(&req);
 4377   6942   
        let settings = SigningSettings {
 4378   6943   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 4379   6944   
            session_token_mode: SessionTokenMode::Exclude,
 4380   6945   
            ..Default::default()
 4381   6946   
        };
 4382   6947   
        let identity = Credentials::for_tests().into();
 4383   6948   
        let mut signing_params = signing_params(&identity, settings);
 4384   6949   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4385   6950   
        assert_eq!(
 4386   6951   
            creq.values.content_sha256(),
 4387   6952   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 4388   6953   
        );
 4389   6954   
        // assert that the sha256 header was added
 4390   6955   
        assert_eq!(
 4391   6956   
            creq.values.signed_headers().as_str(),
 4392   6957   
            "host;x-amz-content-sha256;x-amz-date"
 4393   6958   
        );
 4394   6959   
 4395   6960   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 4396   6961   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4397   6962   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 4398   6963   
    }
 4399   6964   
 4400   6965   
    #[test]
 4401   6966   
    fn test_unsigned_payload() {
 4402         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        6967  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        6968  +
        let mut req = test.request();
 4403   6969   
        req.set_body(SignableBody::UnsignedPayload);
 4404   6970   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 4405   6971   
 4406   6972   
        let settings = SigningSettings {
 4407   6973   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 4408   6974   
            ..Default::default()
 4409   6975   
        };
 4410   6976   
        let identity = Credentials::for_tests().into();
 4411   6977   
        let signing_params = signing_params(&identity, settings);
 4412   6978   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4413   6979   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 4414   6980   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 4415   6981   
    }
 4416   6982   
 4417   6983   
    #[test]
 4418   6984   
    fn test_precomputed_payload() {
 4419   6985   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 4420         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        6986  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        6987  +
        let mut req = test.request();
 4421   6988   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 4422   6989   
        let req = SignableRequest::from(&req);
 4423   6990   
        let settings = SigningSettings {
 4424   6991   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 4425   6992   
            ..Default::default()
 4426   6993   
        };
 4427   6994   
        let identity = Credentials::for_tests().into();
 4428   6995   
        let signing_params = signing_params(&identity, settings);
 4429   6996   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4430   6997   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 4431   6998   
        assert!(creq.to_string().ends_with(payload_hash));
 4432   6999   
    }
 4433   7000   
 4434   7001   
    #[test]
 4435   7002   
    fn test_generate_scope() {
 4436   7003   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 4437   7004   
        let scope = SigningScope {
 4438   7005   
            time: parse_date_time("20150830T123600Z").unwrap(),
 4439   7006   
            region: "us-east-1",
 4440   7007   
            service: "iam",
 4441   7008   
        };
 4442   7009   
        assert_eq!(format!("{}\n", scope), expected);
 4443   7010   
    }
 4444   7011   
 4445   7012   
    #[test]
 4446   7013   
    fn test_string_to_sign() {
 4447   7014   
        let time = parse_date_time("20150830T123600Z").unwrap();
 4448         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 4449         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        7015  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7016  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        7017  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 4450   7018   
        let encoded = sha256_hex_string(creq.as_bytes());
 4451   7019   
 4452   7020   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 4453   7021   
        assert_eq!(expected_sts, actual.to_string());
 4454   7022   
    }
 4455   7023   
 4456   7024   
    #[test]
 4457   7025   
    fn test_digest_of_canonical_request() {
 4458         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        7026  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7027  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 4459   7028   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 4460   7029   
        let actual = sha256_hex_string(creq.as_bytes());
 4461   7030   
        assert_eq!(expected, actual);
 4462   7031   
    }
 4463   7032   
 4464   7033   
    #[test]
 4465   7034   
    fn test_double_url_encode_path() {
 4466         -
        let req = test::v4::test_request("double-encode-path");
        7035  +
        let test = SigningSuiteTest::v4("double-encode-path");
        7036  +
        let req = test.request();
 4467   7037   
        let req = SignableRequest::from(&req);
 4468   7038   
        let identity = Credentials::for_tests().into();
 4469   7039   
        let signing_params = signing_params(&identity, SigningSettings::default());
 4470   7040   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4471   7041   
 4472         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        7042  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 4473   7043   
        let actual = format!("{}", creq);
 4474   7044   
        assert_eq!(actual, expected);
 4475   7045   
    }
 4476   7046   
 4477   7047   
    #[test]
 4478   7048   
    fn test_double_url_encode() {
 4479         -
        let req = test::v4::test_request("double-url-encode");
        7049  +
        let test = SigningSuiteTest::v4("double-url-encode");
        7050  +
        let req = test.request();
 4480   7051   
        let req = SignableRequest::from(&req);
 4481   7052   
        let identity = Credentials::for_tests().into();
 4482   7053   
        let signing_params = signing_params(&identity, SigningSettings::default());
 4483   7054   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4484         -
 4485         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        7055  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 4486   7056   
        let actual = format!("{}", creq);
 4487   7057   
        assert_eq!(actual, expected);
 4488   7058   
    }
 4489   7059   
 4490   7060   
    #[test]
 4491   7061   
    fn test_tilde_in_uri() {
 4492   7062   
        let req = http0::Request::builder()
 4493   7063   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 4494   7064   
        let req = SignableRequest::from(&req);
 4495   7065   
        let identity = Credentials::for_tests().into();
 4496   7066   
        let signing_params = signing_params(&identity, SigningSettings::default());
 4497   7067   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4498   7068   
        assert_eq!(
 4499   7069   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 4500   7070   
            creq.params.as_deref(),
 4501   7071   
        );
 4502   7072   
    }
 4503   7073   
 4504   7074   
    #[test]
 4505   7075   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 4506   7076   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 4507   7077   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 4508   7078   
 4509   7079   
        let mut query_writer = QueryWriter::new(&uri);
 4510   7080   
        query_writer.insert("list-type", "2");
 4511   7081   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 4512   7082   
 4513   7083   
        let req = http0::Request::builder()
 4514   7084   
            .uri(query_writer.build_uri())
 4515   7085   
            .body("")
 4516   7086   
            .unwrap()
 4517   7087   
            .into();
 4518   7088   
        let req = SignableRequest::from(&req);
 4519   7089   
        let identity = Credentials::for_tests().into();
 4520   7090   
        let signing_params = signing_params(&identity, SigningSettings::default());
 4521   7091   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4522   7092   
 4523   7093   
        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~";
 4524   7094   
        let actual = creq.params.unwrap();
 4525   7095   
        assert_eq!(expected, actual);
 4526   7096   
    }
 4527   7097   
 4528   7098   
    #[test]
 4529   7099   
    fn test_omit_session_token() {
 4530         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7100  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7101  +
        let req = test.request();
 4531   7102   
        let req = SignableRequest::from(&req);
 4532   7103   
        let settings = SigningSettings {
 4533   7104   
            session_token_mode: SessionTokenMode::Include,
 4534   7105   
            ..Default::default()
 4535   7106   
        };
 4536   7107   
        let identity = Credentials::for_tests_with_session_token().into();
 4537   7108   
        let mut signing_params = signing_params(&identity, settings);
 4538   7109   
 4539   7110   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4540   7111   
        assert_eq!(
 4541   7112   
            creq.values.signed_headers().as_str(),
 4542   7113   
            "host;x-amz-date;x-amz-security-token"
 4543   7114   
        );
 4544   7115   
        assert_eq!(
 4545   7116   
            creq.headers.get("x-amz-security-token").unwrap(),
 4546   7117   
            "notarealsessiontoken"
 4547   7118   
        );
 4548   7119   
 4549   7120   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 4550   7121   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 4551   7122   
        assert_eq!(
 4552   7123   
            creq.headers.get("x-amz-security-token").unwrap(),
 4553   7124   
            "notarealsessiontoken"
 4554   7125   
        );
 4555   7126   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 4556   7127   
    }
 4557   7128   
 4558   7129   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 4559   7130   
    #[test]
 4560   7131   
    fn non_presigning_header_exclusion() {
 4561   7132   
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
 4562   7133   
index c4bbbee..363fc2c 100644
 4563         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        7134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 4564   7135   
@@ -6,60 +6,62 @@
 4565   7136   
use super::error::SigningError;
 4566   7137   
use super::{PayloadChecksumKind, SignatureLocation};
 4567   7138   
use crate::http_request::canonical_request::header;
 4568   7139   
use crate::http_request::canonical_request::param;
 4569   7140   
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 4570   7141   
use crate::http_request::error::CanonicalRequestError;
 4571   7142   
use crate::http_request::SigningParams;
 4572   7143   
use crate::sign::v4;
 4573   7144   
#[cfg(feature = "sigv4a")]
 4574   7145   
use crate::sign::v4a;
 4575   7146   
use crate::{SignatureVersion, SigningOutput};
 4576   7147   
use http0::Uri;
 4577   7148   
use std::borrow::Cow;
 4578   7149   
use std::fmt::{Debug, Formatter};
 4579   7150   
use std::str;
 4580   7151   
 4581   7152   
const LOG_SIGNABLE_BODY: &str = "LOG_SIGNABLE_BODY";
 4582   7153   
 4583   7154   
/// Represents all of the information necessary to sign an HTTP request.
 4584   7155   
#[derive(Debug)]
 4585   7156   
#[non_exhaustive]
 4586   7157   
pub struct SignableRequest<'a> {
 4587   7158   
    method: &'a str,
 4588   7159   
    uri: Uri,
 4589   7160   
    headers: Vec<(&'a str, &'a str)>,
 4590   7161   
    body: SignableBody<'a>,
 4591   7162   
}
 4592   7163   
 4593   7164   
impl<'a> SignableRequest<'a> {
 4594   7165   
    /// Creates a new `SignableRequest`.
        7166  +
    ///
        7167  +
    /// NOTE: The `uri` is expected to already in encoded form.
 4595   7168   
    pub fn new(
 4596   7169   
        method: &'a str,
 4597   7170   
        uri: impl Into<Cow<'a, str>>,
 4598   7171   
        headers: impl Iterator<Item = (&'a str, &'a str)>,
 4599   7172   
        body: SignableBody<'a>,
 4600   7173   
    ) -> Result<Self, SigningError> {
 4601   7174   
        let uri = uri
 4602   7175   
            .into()
 4603   7176   
            .parse()
 4604   7177   
            .map_err(|e| SigningError::from(CanonicalRequestError::from(e)))?;
 4605   7178   
        let headers = headers.collect();
 4606   7179   
        Ok(Self {
 4607   7180   
            method,
 4608   7181   
            uri,
 4609   7182   
            headers,
 4610   7183   
            body,
 4611   7184   
        })
 4612   7185   
    }
 4613   7186   
 4614   7187   
    /// Returns the signable URI
 4615   7188   
    pub(crate) fn uri(&self) -> &Uri {
 4616   7189   
        &self.uri
 4617   7190   
    }
 4618   7191   
 4619   7192   
    /// Returns the signable HTTP method
 4620   7193   
    pub(crate) fn method(&self) -> &str {
 4621   7194   
        self.method
 4622   7195   
    }
 4623   7196   
 4624   7197   
    /// Returns the request headers
 4625   7198   
@@ -478,436 +480,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 4626   7199   
        sensitive,
 4627   7200   
    });
 4628   7201   
}
 4629   7202   
 4630   7203   
// add signature to authorization header
 4631   7204   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 4632   7205   
fn build_authorization_header(
 4633   7206   
    access_key: &str,
 4634   7207   
    creq: &CanonicalRequest<'_>,
 4635   7208   
    sts: StringToSign<'_>,
 4636   7209   
    signature: &str,
 4637   7210   
    signature_version: SignatureVersion,
 4638   7211   
) -> String {
 4639   7212   
    let scope = match signature_version {
 4640   7213   
        SignatureVersion::V4 => sts.scope.to_string(),
 4641   7214   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 4642   7215   
    };
 4643   7216   
    format!(
 4644   7217   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 4645   7218   
        sts.algorithm,
 4646   7219   
        access_key,
 4647   7220   
        scope,
 4648   7221   
        creq.values.signed_headers().as_str(),
 4649   7222   
        signature
 4650   7223   
    )
 4651   7224   
}
 4652   7225   
#[cfg(test)]
 4653   7226   
mod tests {
 4654   7227   
    use crate::date_time::test_parsers::parse_date_time;
 4655   7228   
    use crate::http_request::sign::{add_header, SignableRequest};
        7229  +
    use crate::http_request::test::SigningSuiteTest;
 4656   7230   
    use crate::http_request::{
 4657         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        7231  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 4658   7232   
        SigningSettings,
 4659   7233   
    };
 4660   7234   
    use crate::sign::v4;
 4661   7235   
    use aws_credential_types::Credentials;
 4662   7236   
    use http0::{HeaderValue, Request};
 4663   7237   
    use pretty_assertions::assert_eq;
 4664   7238   
    use proptest::proptest;
 4665   7239   
    use std::borrow::Cow;
 4666   7240   
    use std::iter;
 4667         -
    use std::time::Duration;
 4668   7241   
 4669   7242   
    macro_rules! assert_req_eq {
 4670   7243   
        (http: $expected:expr, $actual:expr) => {
 4671   7244   
            let mut expected = ($expected).map(|_b|"body");
 4672   7245   
            let mut actual = ($actual).map(|_b|"body");
 4673   7246   
            make_headers_comparable(&mut expected);
 4674   7247   
            make_headers_comparable(&mut actual);
 4675   7248   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 4676   7249   
        };
 4677   7250   
        ($expected:tt, $actual:tt) => {
 4678   7251   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 4679   7252   
        };
 4680   7253   
    }
 4681   7254   
 4682   7255   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 4683   7256   
        for (_name, value) in request.headers_mut() {
 4684   7257   
            value.set_sensitive(false);
 4685   7258   
        }
 4686   7259   
    }
 4687   7260   
 4688         -
    #[test]
 4689         -
    fn test_sign_vanilla_with_headers() {
 4690         -
        let settings = SigningSettings::default();
 4691         -
        let identity = &Credentials::for_tests().into();
 4692         -
        let params = v4::SigningParams {
 4693         -
            identity,
 4694         -
            region: "us-east-1",
 4695         -
            name: "service",
 4696         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 4697         -
            settings,
 4698         -
        }
 4699         -
        .into();
 4700         -
 4701         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 4702         -
        let signable = SignableRequest::from(&original);
 4703         -
        let out = sign(signable, &params).unwrap();
 4704         -
        assert_eq!(
 4705         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 4706         -
            out.signature
 4707         -
        );
 4708         -
 4709         -
        let mut signed = original.as_http_request();
 4710         -
        out.output.apply_to_request_http0x(&mut signed);
 4711         -
 4712         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 4713         -
        assert_req_eq!(expected, signed);
 4714         -
    }
 4715         -
        7261  +
    // Sigv4A suite tests
 4716   7262   
    #[cfg(feature = "sigv4a")]
 4717         -
    mod sigv4a_tests {
 4718         -
        use super::*;
 4719         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 4720         -
        use crate::http_request::{sign, test, SigningParams};
 4721         -
        use crate::sign::v4a;
 4722         -
        use p256::ecdsa::signature::{Signature, Verifier};
 4723         -
        use p256::ecdsa::{DerSignature, SigningKey};
 4724         -
        use pretty_assertions::assert_eq;
 4725         -
 4726         -
        fn new_v4a_signing_params_from_context(
 4727         -
            test_context: &'_ test::v4a::TestContext,
 4728         -
            signature_location: SignatureLocation,
 4729         -
        ) -> SigningParams<'_> {
 4730         -
            let mut params = v4a::SigningParams::from(test_context);
 4731         -
            params.settings.signature_location = signature_location;
 4732         -
 4733         -
            params.into()
 4734         -
        }
 4735         -
 4736         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 4737         -
            let tc = test::v4a::test_context(test_name);
 4738         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 4739         -
 4740         -
            let req = test::v4a::test_request(test_name);
 4741         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 4742         -
            let signable_req = SignableRequest::from(&req);
 4743         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        7263  +
    mod v4a_suite {
        7264  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 4744   7265   
 4745         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 4746         -
 4747         -
            let expected_string_to_sign =
 4748         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 4749         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 4750         -
            let actual_string_to_sign = StringToSign::new_v4a(
 4751         -
                *params.time(),
 4752         -
                params.region_set().unwrap(),
 4753         -
                params.name(),
 4754         -
                hashed_creq,
 4755         -
            )
 4756         -
            .to_string();
 4757         -
 4758         -
            assert_eq!(
 4759         -
                expected_string_to_sign, actual_string_to_sign,
 4760         -
                "'string to sign' didn't match"
 4761         -
            );
 4762         -
 4763         -
            let out = sign(signable_req, &params).unwrap();
 4764         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 4765         -
            out.output
 4766         -
                .apply_to_request_http0x(&mut req.as_http_request());
 4767         -
 4768         -
            let creds = params.credentials().unwrap();
 4769         -
            let signing_key =
 4770         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 4771         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 4772         -
            let sig = sig
 4773         -
                .try_into()
 4774         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 4775         -
 4776         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 4777         -
            let peer_public_key = signing_key.verifying_key();
 4778         -
            let sts = actual_string_to_sign.as_bytes();
 4779         -
            peer_public_key.verify(sts, &sig).unwrap();
        7266  +
        #[test]
        7267  +
        fn test_get_header_key_duplicate() {
        7268  +
            run_test_suite_v4a("get-header-key-duplicate")
 4780   7269   
        }
 4781   7270   
 4782   7271   
        #[test]
 4783         -
        fn test_get_header_key_duplicate() {
 4784         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        7272  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7273  +
        fn test_get_header_value_multiline() {
        7274  +
            run_test_suite_v4a("get-header-value-multiline")
 4785   7275   
        }
 4786   7276   
 4787   7277   
        #[test]
 4788   7278   
        fn test_get_header_value_order() {
 4789         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        7279  +
            run_test_suite_v4a("get-header-value-order")
 4790   7280   
        }
 4791   7281   
 4792   7282   
        #[test]
 4793   7283   
        fn test_get_header_value_trim() {
 4794         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        7284  +
            run_test_suite_v4a("get-header-value-trim");
 4795   7285   
        }
 4796   7286   
 4797   7287   
        #[test]
 4798   7288   
        fn test_get_relative_normalized() {
 4799         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        7289  +
            run_test_suite_v4a("get-relative-normalized");
 4800   7290   
        }
 4801   7291   
 4802   7292   
        #[test]
 4803   7293   
        fn test_get_relative_relative_normalized() {
 4804         -
            run_v4a_test_suite(
 4805         -
                "get-relative-relative-normalized",
 4806         -
                SignatureLocation::Headers,
 4807         -
            );
        7294  +
            run_test_suite_v4a("get-relative-relative-normalized");
 4808   7295   
        }
 4809   7296   
 4810   7297   
        #[test]
 4811   7298   
        fn test_get_relative_relative_unnormalized() {
 4812         -
            run_v4a_test_suite(
 4813         -
                "get-relative-relative-unnormalized",
 4814         -
                SignatureLocation::Headers,
 4815         -
            );
        7299  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 4816   7300   
        }
 4817   7301   
 4818   7302   
        #[test]
 4819   7303   
        fn test_get_relative_unnormalized() {
 4820         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        7304  +
            run_test_suite_v4a("get-relative-unnormalized");
 4821   7305   
        }
 4822   7306   
 4823   7307   
        #[test]
 4824   7308   
        fn test_get_slash_dot_slash_normalized() {
 4825         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        7309  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 4826   7310   
        }
 4827   7311   
 4828   7312   
        #[test]
 4829   7313   
        fn test_get_slash_dot_slash_unnormalized() {
 4830         -
            run_v4a_test_suite(
 4831         -
                "get-slash-dot-slash-unnormalized",
 4832         -
                SignatureLocation::Headers,
 4833         -
            );
        7314  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 4834   7315   
        }
 4835   7316   
 4836   7317   
        #[test]
 4837   7318   
        fn test_get_slash_normalized() {
 4838         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        7319  +
            run_test_suite_v4a("get-slash-normalized");
 4839   7320   
        }
 4840   7321   
 4841   7322   
        #[test]
 4842   7323   
        fn test_get_slash_pointless_dot_normalized() {
 4843         -
            run_v4a_test_suite(
 4844         -
                "get-slash-pointless-dot-normalized",
 4845         -
                SignatureLocation::Headers,
 4846         -
            );
        7324  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 4847   7325   
        }
 4848   7326   
 4849   7327   
        #[test]
 4850   7328   
        fn test_get_slash_pointless_dot_unnormalized() {
 4851         -
            run_v4a_test_suite(
 4852         -
                "get-slash-pointless-dot-unnormalized",
 4853         -
                SignatureLocation::Headers,
 4854         -
            );
        7329  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 4855   7330   
        }
 4856   7331   
 4857   7332   
        #[test]
 4858   7333   
        fn test_get_slash_unnormalized() {
 4859         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        7334  +
            run_test_suite_v4a("get-slash-unnormalized");
 4860   7335   
        }
 4861   7336   
 4862   7337   
        #[test]
 4863   7338   
        fn test_get_slashes_normalized() {
 4864         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        7339  +
            run_test_suite_v4a("get-slashes-normalized");
 4865   7340   
        }
 4866   7341   
 4867   7342   
        #[test]
 4868   7343   
        fn test_get_slashes_unnormalized() {
 4869         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        7344  +
            run_test_suite_v4a("get-slashes-unnormalized");
        7345  +
        }
        7346  +
        7347  +
        #[test]
        7348  +
        #[ignore = "relies on single encode of path segments"]
        7349  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7350  +
        // skipped until we add control over double_uri_encode in context.json
        7351  +
        fn test_get_space_normalized() {
        7352  +
            run_test_suite_v4a("get-space-normalized");
        7353  +
        }
        7354  +
        7355  +
        #[test]
        7356  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7357  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7358  +
        fn test_get_space_unnormalized() {
        7359  +
            run_test_suite_v4a("get-space-unnormalized");
 4870   7360   
        }
 4871   7361   
 4872   7362   
        #[test]
 4873   7363   
        fn test_get_unreserved() {
 4874         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        7364  +
            run_test_suite_v4a("get-unreserved");
        7365  +
        }
        7366  +
        7367  +
        #[test]
        7368  +
        #[ignore = "httparse fails on invalid uri character"]
        7369  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7370  +
        fn test_get_utf8() {
        7371  +
            run_test_suite_v4a("get-utf8");
 4875   7372   
        }
 4876   7373   
 4877   7374   
        #[test]
 4878   7375   
        fn test_get_vanilla() {
 4879         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        7376  +
            run_test_suite_v4a("get-vanilla");
 4880   7377   
        }
 4881   7378   
 4882   7379   
        #[test]
 4883   7380   
        fn test_get_vanilla_empty_query_key() {
 4884         -
            run_v4a_test_suite(
 4885         -
                "get-vanilla-empty-query-key",
 4886         -
                SignatureLocation::QueryParams,
 4887         -
            );
        7381  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 4888   7382   
        }
 4889   7383   
 4890   7384   
        #[test]
 4891   7385   
        fn test_get_vanilla_query() {
 4892         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        7386  +
            run_test_suite_v4a("get-vanilla-query");
        7387  +
        }
        7388  +
        7389  +
        #[test]
        7390  +
        fn test_get_vanilla_query_order_encoded() {
        7391  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 4893   7392   
        }
 4894   7393   
 4895   7394   
        #[test]
 4896   7395   
        fn test_get_vanilla_query_order_key_case() {
 4897         -
            run_v4a_test_suite(
 4898         -
                "get-vanilla-query-order-key-case",
 4899         -
                SignatureLocation::QueryParams,
 4900         -
            );
        7396  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 4901   7397   
        }
 4902   7398   
 4903   7399   
        #[test]
 4904   7400   
        fn test_get_vanilla_query_unreserved() {
 4905         -
            run_v4a_test_suite(
 4906         -
                "get-vanilla-query-unreserved",
 4907         -
                SignatureLocation::QueryParams,
 4908         -
            );
        7401  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        7402  +
        }
        7403  +
        7404  +
        #[test]
        7405  +
        #[ignore = "httparse fails on invalid uri character"]
        7406  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7407  +
        fn test_get_vanilla_utf8_query() {
        7408  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 4909   7409   
        }
 4910   7410   
 4911   7411   
        #[test]
 4912   7412   
        fn test_get_vanilla_with_session_token() {
 4913         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        7413  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 4914   7414   
        }
 4915   7415   
 4916   7416   
        #[test]
 4917   7417   
        fn test_post_header_key_case() {
 4918         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        7418  +
            run_test_suite_v4a("post-header-key-case");
 4919   7419   
        }
 4920   7420   
 4921   7421   
        #[test]
 4922   7422   
        fn test_post_header_key_sort() {
 4923         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        7423  +
            run_test_suite_v4a("post-header-key-sort");
 4924   7424   
        }
 4925   7425   
 4926   7426   
        #[test]
 4927   7427   
        fn test_post_header_value_case() {
 4928         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        7428  +
            run_test_suite_v4a("post-header-value-case");
 4929   7429   
        }
 4930   7430   
 4931   7431   
        #[test]
 4932   7432   
        fn test_post_sts_header_after() {
 4933         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        7433  +
            run_test_suite_v4a("post-sts-header-after");
 4934   7434   
        }
 4935   7435   
 4936   7436   
        #[test]
 4937   7437   
        fn test_post_sts_header_before() {
 4938         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        7438  +
            run_test_suite_v4a("post-sts-header-before");
 4939   7439   
        }
 4940   7440   
 4941   7441   
        #[test]
 4942   7442   
        fn test_post_vanilla() {
 4943         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        7443  +
            run_test_suite_v4a("post-vanilla");
 4944   7444   
        }
 4945   7445   
 4946   7446   
        #[test]
 4947   7447   
        fn test_post_vanilla_empty_query_value() {
 4948         -
            run_v4a_test_suite(
 4949         -
                "post-vanilla-empty-query-value",
 4950         -
                SignatureLocation::QueryParams,
 4951         -
            );
        7448  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 4952   7449   
        }
 4953   7450   
 4954   7451   
        #[test]
 4955   7452   
        fn test_post_vanilla_query() {
 4956         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        7453  +
            run_test_suite_v4a("post-vanilla-query");
 4957   7454   
        }
 4958   7455   
 4959   7456   
        #[test]
 4960   7457   
        fn test_post_x_www_form_urlencoded() {
 4961         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        7458  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 4962   7459   
        }
 4963   7460   
 4964   7461   
        #[test]
 4965   7462   
        fn test_post_x_www_form_urlencoded_parameters() {
 4966         -
            run_v4a_test_suite(
 4967         -
                "post-x-www-form-urlencoded-parameters",
 4968         -
                SignatureLocation::QueryParams,
 4969         -
            );
        7463  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 4970   7464   
        }
 4971   7465   
    }
 4972   7466   
 4973   7467   
    #[test]
 4974   7468   
    fn test_sign_url_escape() {
 4975         -
        let test = "double-encode-path";
        7469  +
        let test = SigningSuiteTest::v4("double-encode-path");
 4976   7470   
        let settings = SigningSettings::default();
 4977   7471   
        let identity = &Credentials::for_tests().into();
 4978   7472   
        let params = v4::SigningParams {
 4979   7473   
            identity,
 4980   7474   
            region: "us-east-1",
 4981   7475   
            name: "service",
 4982   7476   
            time: parse_date_time("20150830T123600Z").unwrap(),
 4983   7477   
            settings,
 4984   7478   
        }
 4985   7479   
        .into();
 4986   7480   
 4987         -
        let original = test::v4::test_request(test);
        7481  +
        let original = test.request();
 4988   7482   
        let signable = SignableRequest::from(&original);
 4989   7483   
        let out = sign(signable, &params).unwrap();
 4990   7484   
        assert_eq!(
 4991   7485   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 4992   7486   
            out.signature
 4993   7487   
        );
 4994   7488   
 4995   7489   
        let mut signed = original.as_http_request();
 4996   7490   
        out.output.apply_to_request_http0x(&mut signed);
 4997   7491   
 4998         -
        let expected = test::v4::test_signed_request(test);
 4999         -
        assert_req_eq!(expected, signed);
 5000         -
    }
 5001         -
 5002         -
    #[test]
 5003         -
    fn test_sign_vanilla_with_query_params() {
 5004         -
        let settings = SigningSettings {
 5005         -
            signature_location: SignatureLocation::QueryParams,
 5006         -
            expires_in: Some(Duration::from_secs(35)),
 5007         -
            ..Default::default()
 5008         -
        };
 5009         -
        let identity = &Credentials::for_tests().into();
 5010         -
        let params = v4::SigningParams {
 5011         -
            identity,
 5012         -
            region: "us-east-1",
 5013         -
            name: "service",
 5014         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5015         -
            settings,
 5016         -
        }
 5017         -
        .into();
 5018         -
 5019         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5020         -
        let signable = SignableRequest::from(&original);
 5021         -
        let out = sign(signable, &params).unwrap();
 5022         -
        assert_eq!(
 5023         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 5024         -
            out.signature
 5025         -
        );
 5026         -
 5027         -
        let mut signed = original.as_http_request();
 5028         -
        out.output.apply_to_request_http0x(&mut signed);
 5029         -
 5030         -
        let expected =
 5031         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        7492  +
        let expected = test.signed_request(SignatureLocation::Headers);
 5032   7493   
        assert_req_eq!(expected, signed);
 5033   7494   
    }
 5034   7495   
 5035   7496   
    #[test]
 5036   7497   
    fn test_sign_headers_utf8() {
 5037   7498   
        let settings = SigningSettings::default();
 5038   7499   
        let identity = &Credentials::for_tests().into();
 5039   7500   
        let params = v4::SigningParams {
 5040   7501   
            identity,
 5041   7502   
            region: "us-east-1",
 5042   7503   
            name: "service",
 5043   7504   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5044   7505   
            settings,
 5045   7506   
        }
 5046   7507   
        .into();
 5047   7508   
 5048   7509   
        let original = http0::Request::builder()
 5049   7510   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 5050   7511   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 5051   7512   
            .body("")
 5052   7513   
            .unwrap()
 5053   7514   
            .into();
 5054   7515   
        let signable = SignableRequest::from(&original);
 5055   7516   
        let out = sign(signable, &params).unwrap();
 5056   7517   
        assert_eq!(
 5057   7518   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 5058   7519   
            out.signature
 5059   7520   
        );
 5060   7521   
 5061   7522   
        let mut signed = original.as_http_request();
 5062   7523   
@@ -1138,31 +1028,236 @@ mod tests {
 5063   7524   
        let mut request = http::Request::builder()
 5064   7525   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 5065   7526   
            .body("")
 5066   7527   
            .unwrap();
 5067   7528   
 5068   7529   
        instructions.apply_to_request_http1x(&mut request);
 5069   7530   
 5070   7531   
        assert_eq!(
 5071   7532   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 5072   7533   
            request.uri().path_and_query().unwrap().to_string()
 5073   7534   
        );
 5074   7535   
    }
 5075   7536   
 5076   7537   
    #[test]
 5077   7538   
    fn test_debug_signable_body() {
 5078   7539   
        let sut = SignableBody::Bytes(b"hello signable body");
 5079   7540   
        assert_eq!(
 5080   7541   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 5081   7542   
            format!("{sut:?}")
 5082   7543   
        );
 5083   7544   
 5084   7545   
        let sut = SignableBody::UnsignedPayload;
 5085   7546   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 5086   7547   
 5087   7548   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 5088   7549   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 5089   7550   
 5090   7551   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 5091   7552   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 5092   7553   
    }
        7554  +
        7555  +
    // v4 test suite
        7556  +
    mod v4_suite {
        7557  +
        use crate::http_request::test::run_test_suite_v4;
        7558  +
        7559  +
        #[test]
        7560  +
        fn test_get_header_key_duplicate() {
        7561  +
            run_test_suite_v4("get-header-key-duplicate");
        7562  +
        }
        7563  +
        7564  +
        #[test]
        7565  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7566  +
        fn test_get_header_value_multiline() {
        7567  +
            run_test_suite_v4("get-header-value-multiline");
        7568  +
        }
        7569  +
        7570  +
        #[test]
        7571  +
        fn test_get_header_value_order() {
        7572  +
            run_test_suite_v4("get-header-value-order");
        7573  +
        }
        7574  +
        7575  +
        #[test]
        7576  +
        fn test_get_header_value_trim() {
        7577  +
            run_test_suite_v4("get-header-value-trim");
        7578  +
        }
        7579  +
        7580  +
        #[test]
        7581  +
        fn test_get_relative_normalized() {
        7582  +
            run_test_suite_v4("get-relative-normalized");
        7583  +
        }
        7584  +
        7585  +
        #[test]
        7586  +
        fn test_get_relative_relative_normalized() {
        7587  +
            run_test_suite_v4("get-relative-relative-normalized");
        7588  +
        }
        7589  +
        7590  +
        #[test]
        7591  +
        fn test_get_relative_relative_unnormalized() {
        7592  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        7593  +
        }
        7594  +
        7595  +
        #[test]
        7596  +
        fn test_get_relative_unnormalized() {
        7597  +
            run_test_suite_v4("get-relative-unnormalized");
        7598  +
        }
        7599  +
        7600  +
        #[test]
        7601  +
        fn test_get_slash_dot_slash_normalized() {
        7602  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        7603  +
        }
        7604  +
        7605  +
        #[test]
        7606  +
        fn test_get_slash_dot_slash_unnormalized() {
        7607  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        7608  +
        }
        7609  +
        7610  +
        #[test]
        7611  +
        fn test_get_slash_normalized() {
        7612  +
            run_test_suite_v4("get-slash-normalized");
        7613  +
        }
        7614  +
        7615  +
        #[test]
        7616  +
        fn test_get_slash_pointless_dot_normalized() {
        7617  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        7618  +
        }
        7619  +
        7620  +
        #[test]
        7621  +
        fn test_get_slash_pointless_dot_unnormalized() {
        7622  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        7623  +
        }
        7624  +
        7625  +
        #[test]
        7626  +
        fn test_get_slash_unnormalized() {
        7627  +
            run_test_suite_v4("get-slash-unnormalized");
        7628  +
        }
        7629  +
        7630  +
        #[test]
        7631  +
        fn test_get_slashes_normalized() {
        7632  +
            run_test_suite_v4("get-slashes-normalized");
        7633  +
        }
        7634  +
        7635  +
        #[test]
        7636  +
        fn test_get_slashes_unnormalized() {
        7637  +
            run_test_suite_v4("get-slashes-unnormalized");
        7638  +
        }
        7639  +
        7640  +
        #[test]
        7641  +
        #[ignore = "relies on single encode of path segments"]
        7642  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7643  +
        // skipped until we add control over double_uri_encode in context.json
        7644  +
        fn test_get_space_normalized() {
        7645  +
            run_test_suite_v4("get-space-normalized");
        7646  +
        }
        7647  +
        7648  +
        #[test]
        7649  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7650  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7651  +
        fn test_get_space_unnormalized() {
        7652  +
            run_test_suite_v4("get-space-unnormalized");
        7653  +
        }
        7654  +
        7655  +
        #[test]
        7656  +
        fn test_get_unreserved() {
        7657  +
            run_test_suite_v4("get-unreserved");
        7658  +
        }
        7659  +
        7660  +
        #[test]
        7661  +
        #[ignore = "httparse fails on invalid uri character"]
        7662  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7663  +
        fn test_get_utf8() {
        7664  +
            run_test_suite_v4("get-utf8");
        7665  +
        }
        7666  +
        7667  +
        #[test]
        7668  +
        fn test_get_vanilla() {
        7669  +
            run_test_suite_v4("get-vanilla");
        7670  +
        }
        7671  +
        7672  +
        #[test]
        7673  +
        fn test_get_vanilla_empty_query_key() {
        7674  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        7675  +
        }
        7676  +
        7677  +
        #[test]
        7678  +
        fn test_get_vanilla_query() {
        7679  +
            run_test_suite_v4("get-vanilla-query");
        7680  +
        }
        7681  +
        7682  +
        #[test]
        7683  +
        fn test_get_vanilla_query_order_encoded() {
        7684  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        7685  +
        }
        7686  +
        7687  +
        #[test]
        7688  +
        fn test_get_vanilla_query_order_key_case() {
        7689  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        7690  +
        }
        7691  +
        7692  +
        #[test]
        7693  +
        fn test_get_vanilla_query_unreserved() {
        7694  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        7695  +
        }
        7696  +
        7697  +
        #[test]
        7698  +
        #[ignore = "httparse fails on invalid uri character"]
        7699  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7700  +
        fn test_get_vanilla_utf8_query() {
        7701  +
            run_test_suite_v4("get-vanilla-utf8-query");
        7702  +
        }
        7703  +
        7704  +
        #[test]
        7705  +
        fn test_get_vanilla_with_session_token() {
        7706  +
            run_test_suite_v4("get-vanilla-with-session-token");
        7707  +
        }
        7708  +
        7709  +
        #[test]
        7710  +
        fn test_post_header_key_case() {
        7711  +
            run_test_suite_v4("post-header-key-case");
        7712  +
        }
        7713  +
        7714  +
        #[test]
        7715  +
        fn test_post_header_key_sort() {
        7716  +
            run_test_suite_v4("post-header-key-sort");
        7717  +
        }
        7718  +
        7719  +
        #[test]
        7720  +
        fn test_post_header_value_case() {
        7721  +
            run_test_suite_v4("post-header-value-case");
        7722  +
        }
        7723  +
        7724  +
        #[test]
        7725  +
        fn test_post_sts_header_after() {
        7726  +
            run_test_suite_v4("post-sts-header-after");
        7727  +
        }
        7728  +
        7729  +
        #[test]
        7730  +
        fn test_post_sts_header_before() {
        7731  +
            run_test_suite_v4("post-sts-header-before");
        7732  +
        }
        7733  +
        7734  +
        #[test]
        7735  +
        fn test_post_vanilla() {
        7736  +
            run_test_suite_v4("post-vanilla");
        7737  +
        }
        7738  +
        7739  +
        #[test]
        7740  +
        fn test_post_vanilla_empty_query_value() {
        7741  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        7742  +
        }
        7743  +
        7744  +
        #[test]
        7745  +
        fn test_post_vanilla_query() {
        7746  +
            run_test_suite_v4("post-vanilla-query");
        7747  +
        }
        7748  +
        7749  +
        #[test]
        7750  +
        fn test_post_x_www_form_urlencoded() {
        7751  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        7752  +
        }
        7753  +
        7754  +
        #[test]
        7755  +
        fn test_post_x_www_form_urlencoded_parameters() {
        7756  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        7757  +
        }
        7758  +
    }
 5093   7759   
}
 5094   7760   
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
 5095   7761   
index be6c496..86eec20 100644
 5096         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        7762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 5097   7763   
@@ -1,242 +1,453 @@
 5098   7764   
/*
 5099   7765   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 5100   7766   
 * SPDX-License-Identifier: Apache-2.0
 5101   7767   
 */
 5102   7768   
 5103   7769   
//! Functions shared between the tests of several modules.
 5104   7770   
 5105         -
use crate::http_request::{SignableBody, SignableRequest};
        7771  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        7772  +
use crate::http_request::{
        7773  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        7774  +
    SigningSettings,
        7775  +
};
        7776  +
use aws_credential_types::Credentials;
        7777  +
use aws_smithy_runtime_api::client::identity::Identity;
 5106   7778   
use http0::{Method, Uri};
        7779  +
use std::borrow::Cow;
 5107   7780   
use std::error::Error as StdError;
        7781  +
use std::time::{Duration, SystemTime};
        7782  +
use time::format_description::well_known::Rfc3339;
        7783  +
use time::OffsetDateTime;
        7784  +
        7785  +
/// Common test suite collection
        7786  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        7787  +
enum Collection {
        7788  +
    V4,
        7789  +
    V4A,
        7790  +
}
 5108   7791   
 5109         -
pub(crate) mod v4 {
 5110         -
    use super::*;
        7792  +
/// A test from the common CRT test suite
        7793  +
#[derive(Debug, Clone)]
        7794  +
pub(crate) struct SigningSuiteTest {
        7795  +
    test_name: &'static str,
        7796  +
    collection: Collection,
        7797  +
}
 5111   7798   
 5112         -
    fn path(name: &str, ext: &str) -> String {
 5113         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        7799  +
impl SigningSuiteTest {
        7800  +
    /// Create a new test from the V4 test suite
        7801  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        7802  +
        Self {
        7803  +
            test_name,
        7804  +
            collection: Collection::V4,
 5114   7805   
        }
 5115         -
 5116         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 5117         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 5118         -
        read(&path(name, "creq")).trim().to_string()
 5119   7806   
    }
 5120   7807   
 5121         -
    pub(crate) fn test_sts(name: &str) -> String {
 5122         -
        read(&path(name, "sts"))
        7808  +
    /// Create a new test from the V4a test suite
        7809  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        7810  +
        Self {
        7811  +
            test_name,
        7812  +
            collection: Collection::V4A,
 5123   7813   
        }
 5124         -
 5125         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 5126         -
        test_parsed_request(name, "req")
 5127   7814   
    }
 5128   7815   
 5129         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 5130         -
        test_parsed_request(name, "sreq")
        7816  +
    /// Get the path to a file in this test suite directory
        7817  +
    fn path(&self, filename: &str) -> String {
        7818  +
        let dir = match self.collection {
        7819  +
            Collection::V4 => "v4",
        7820  +
            Collection::V4A => "v4a",
        7821  +
        };
        7822  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 5131   7823   
    }
 5132   7824   
 5133         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 5134         -
        test_parsed_request(name, "qpsreq")
        7825  +
    /// Get the HTTP request for the test
        7826  +
    pub(crate) fn request(&self) -> TestRequest {
        7827  +
        test_parsed_request(&self.path("request.txt"))
 5135   7828   
    }
 5136   7829   
 5137         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 5138         -
        let path = path(name, ext);
 5139         -
        match parse_request(read(&path).as_bytes()) {
 5140         -
            Ok(parsed) => parsed,
 5141         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        7830  +
    /// Get the signed HTTP request for the test
        7831  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        7832  +
        match signature_location {
        7833  +
            SignatureLocation::QueryParams => {
        7834  +
                test_parsed_request(&self.path("query-signed-request.txt"))
 5142   7835   
            }
        7836  +
            SignatureLocation::Headers => {
        7837  +
                test_parsed_request(&self.path("header-signed-request.txt"))
 5143   7838   
            }
 5144         -
 5145         -
    #[test]
 5146         -
    fn test_parse() {
 5147         -
        test_request("post-header-key-case");
 5148   7839   
        }
 5149         -
 5150         -
    #[test]
 5151         -
    fn test_read_query_params() {
 5152         -
        test_request("get-vanilla-query-order-key-case");
 5153   7840   
    }
 5154         -
}
 5155         -
 5156         -
#[cfg(feature = "sigv4a")]
 5157         -
pub(crate) mod v4a {
 5158         -
    use super::*;
 5159         -
    use crate::http_request::{
 5160         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 5161         -
    };
 5162         -
    use aws_credential_types::Credentials;
 5163         -
    use aws_smithy_runtime_api::client::identity::Identity;
 5164         -
    use serde_derive::Deserialize;
 5165         -
    use std::time::{Duration, SystemTime};
 5166         -
    use time::format_description::well_known::Rfc3339;
 5167         -
    use time::OffsetDateTime;
 5168   7841   
 5169         -
    fn path(test_name: &str, definition_name: &str) -> String {
 5170         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        7842  +
    /// Get the canonical request for the test
        7843  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        7844  +
        match signature_location {
        7845  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        7846  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
 5171   7847   
        }
 5172         -
 5173         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 5174         -
        test_parsed_request(&path(name, "request"))
 5175   7848   
    }
 5176   7849   
 5177         -
    pub(crate) fn test_canonical_request(
 5178         -
        name: &str,
 5179         -
        signature_location: SignatureLocation,
 5180         -
    ) -> String {
        7850  +
    /// Get the string to sign for the test
        7851  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
 5181   7852   
        match signature_location {
 5182         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 5183         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        7853  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        7854  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 5184   7855   
        }
 5185   7856   
    }
 5186   7857   
 5187         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
        7858  +
    /// Get the signature for the test
        7859  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
 5188   7860   
        match signature_location {
 5189         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 5190         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        7861  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        7862  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        7863  +
        }
 5191   7864   
    }
        7865  +
        7866  +
    /// Get the test context for the test
        7867  +
    pub(crate) fn context(&self) -> TestContext {
        7868  +
        let context = read(&self.path("context.json"));
        7869  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        7870  +
        tc_builder.build()
 5192   7871   
    }
        7872  +
}
 5193   7873   
 5194         -
    fn test_parsed_request(path: &str) -> TestRequest {
        7874  +
fn test_parsed_request(path: &str) -> TestRequest {
 5195   7875   
    match parse_request(read(path).as_bytes()) {
 5196   7876   
        Ok(parsed) => parsed,
 5197   7877   
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 5198   7878   
    }
 5199         -
    }
        7879  +
}
 5200   7880   
 5201         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 5202         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 5203         -
        let context = read(&path);
 5204         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 5205         -
        tc_builder.build()
 5206         -
    }
        7881  +
fn new_v4_signing_params_from_context(
        7882  +
    test_context: &'_ TestContext,
        7883  +
    signature_location: SignatureLocation,
        7884  +
) -> crate::http_request::SigningParams<'_> {
        7885  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        7886  +
    params.settings.signature_location = signature_location;
        7887  +
    params.into()
        7888  +
}
        7889  +
        7890  +
/// Run the given test from the v4 suite for both header and query
        7891  +
/// signature locations
        7892  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        7893  +
    run_v4_test(test_name, SignatureLocation::Headers);
        7894  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        7895  +
}
        7896  +
        7897  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        7898  +
    assert_eq!(expected.scheme(), actual.scheme());
        7899  +
    assert_eq!(expected.authority(), actual.authority());
        7900  +
    assert_eq!(expected.path(), actual.path());
        7901  +
        7902  +
    // query params may be out of order
        7903  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        7904  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        7905  +
    expected_params.sort();
        7906  +
        7907  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        7908  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        7909  +
    actual_params.sort();
        7910  +
        7911  +
    assert_eq!(expected_params, actual_params);
        7912  +
}
 5207   7913   
 5208         -
    pub(crate) struct TestContext {
        7914  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        7915  +
    let expected = expected.as_http_request();
        7916  +
    let actual = actual;
        7917  +
    assert_eq!(expected.method(), actual.method());
        7918  +
    assert_eq!(
        7919  +
        expected.headers().len(),
        7920  +
        actual.headers().len(),
        7921  +
        "extra or missing headers"
        7922  +
    );
        7923  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        7924  +
    assert_uri_eq(expected.uri(), actual.uri());
        7925  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        7926  +
}
        7927  +
        7928  +
/// Run the given test from the v4 suite for the given signature location
        7929  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        7930  +
    let test = SigningSuiteTest::v4(test_name);
        7931  +
    let tc = test.context();
        7932  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        7933  +
        7934  +
    let req = test.request();
        7935  +
    let expected_creq = test.canonical_request(signature_location);
        7936  +
    let signable_req = SignableRequest::from(&req);
        7937  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        7938  +
        7939  +
    // check canonical request
        7940  +
    assert_eq!(
        7941  +
        expected_creq,
        7942  +
        actual_creq.to_string(),
        7943  +
        "canonical request didn't match (signature location: {signature_location:?})"
        7944  +
    );
        7945  +
        7946  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        7947  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        7948  +
    let actual_string_to_sign = StringToSign::new_v4(
        7949  +
        *params.time(),
        7950  +
        params.region().unwrap(),
        7951  +
        params.name(),
        7952  +
        hashed_creq,
        7953  +
    )
        7954  +
    .to_string();
        7955  +
        7956  +
    // check string to sign
        7957  +
    assert_eq!(
        7958  +
        expected_string_to_sign, actual_string_to_sign,
        7959  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        7960  +
    );
        7961  +
        7962  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        7963  +
    let mut signed = req.as_http_request();
        7964  +
    out.output.apply_to_request_http0x(&mut signed);
        7965  +
        7966  +
    // check signature
        7967  +
    assert_eq!(
        7968  +
        test.signature(signature_location),
        7969  +
        out.signature,
        7970  +
        "signature didn't match (signature location: {signature_location:?})"
        7971  +
    );
        7972  +
        7973  +
    let expected = test.signed_request(signature_location);
        7974  +
    assert_requests_eq(expected, signed);
        7975  +
}
        7976  +
        7977  +
/// Test suite context.json
        7978  +
pub(crate) struct TestContext {
 5209   7979   
    pub(crate) identity: Identity,
 5210   7980   
    pub(crate) expiration_in_seconds: u64,
 5211   7981   
    pub(crate) normalize: bool,
 5212   7982   
    pub(crate) region: String,
 5213   7983   
    pub(crate) service: String,
 5214   7984   
    pub(crate) timestamp: String,
 5215   7985   
    pub(crate) omit_session_token: bool,
 5216   7986   
    pub(crate) sign_body: bool,
 5217         -
    }
 5218         -
 5219         -
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 5220         -
        fn from(tc: &'a TestContext) -> Self {
 5221         -
            crate::sign::v4a::SigningParams {
 5222         -
                identity: &tc.identity,
 5223         -
                region_set: &tc.region,
 5224         -
                name: &tc.service,
 5225         -
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 5226         -
                    .unwrap()
 5227         -
                    .into(),
 5228         -
                settings: SigningSettings {
 5229         -
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5230         -
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 5231         -
                    uri_path_normalization_mode: tc.normalize.into(),
 5232         -
                    session_token_mode: if tc.omit_session_token {
 5233         -
                        SessionTokenMode::Exclude
 5234         -
                    } else {
 5235         -
                        SessionTokenMode::Include
 5236         -
                    },
 5237         -
                    payload_checksum_kind: if tc.sign_body {
 5238         -
                        PayloadChecksumKind::XAmzSha256
 5239         -
                    } else {
 5240         -
                        PayloadChecksumKind::NoHeader
 5241         -
                    },
 5242         -
                    ..Default::default()
 5243         -
                },
 5244         -
            }
 5245         -
        }
 5246         -
    }
        7987  +
}
 5247   7988   
 5248         -
    // Serde has limitations requiring this odd workaround.
 5249         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 5250         -
    fn return_true() -> bool {
        7989  +
// Serde has limitations requiring this odd workaround.
        7990  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        7991  +
fn return_true() -> bool {
 5251   7992   
    true
 5252         -
    }
        7993  +
}
 5253   7994   
 5254         -
    #[derive(Deserialize)]
 5255         -
    pub(crate) struct TestContextBuilder {
        7995  +
#[derive(serde_derive::Deserialize)]
        7996  +
pub(crate) struct TestContextBuilder {
 5256   7997   
    credentials: TestContextCreds,
 5257   7998   
    expiration_in_seconds: u64,
 5258   7999   
    normalize: bool,
 5259   8000   
    region: String,
 5260   8001   
    service: String,
 5261   8002   
    timestamp: String,
 5262   8003   
    #[serde(default)]
 5263   8004   
    omit_session_token: bool,
 5264   8005   
    #[serde(default = "return_true")]
 5265   8006   
    sign_body: bool,
 5266         -
    }
        8007  +
}
 5267   8008   
 5268         -
    impl TestContextBuilder {
        8009  +
impl TestContextBuilder {
 5269   8010   
    pub(crate) fn build(self) -> TestContext {
 5270   8011   
        let identity = Identity::new(
 5271   8012   
            Credentials::from_keys(
 5272   8013   
                &self.credentials.access_key_id,
 5273   8014   
                &self.credentials.secret_access_key,
 5274   8015   
                self.credentials.token.clone(),
 5275   8016   
            ),
 5276   8017   
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 5277   8018   
        );
 5278   8019   
 5279   8020   
        TestContext {
 5280   8021   
            identity,
 5281   8022   
            expiration_in_seconds: self.expiration_in_seconds,
 5282   8023   
            normalize: self.normalize,
 5283   8024   
            region: self.region,
 5284   8025   
            service: self.service,
 5285   8026   
            timestamp: self.timestamp,
 5286   8027   
            omit_session_token: self.omit_session_token,
 5287   8028   
            sign_body: self.sign_body,
 5288   8029   
        }
 5289   8030   
    }
 5290         -
    }
        8031  +
}
 5291   8032   
 5292         -
    #[derive(Deserialize)]
 5293         -
    pub(crate) struct TestContextCreds {
        8033  +
#[derive(serde_derive::Deserialize)]
        8034  +
pub(crate) struct TestContextCreds {
 5294   8035   
    access_key_id: String,
 5295   8036   
    secret_access_key: String,
 5296   8037   
    token: Option<String>,
        8038  +
}
        8039  +
        8040  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        8041  +
    fn from(tc: &'a TestContext) -> Self {
        8042  +
        crate::sign::v4::SigningParams {
        8043  +
            identity: &tc.identity,
        8044  +
            region: &tc.region,
        8045  +
            name: &tc.service,
        8046  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8047  +
                .unwrap()
        8048  +
                .into(),
        8049  +
            settings: SigningSettings {
        8050  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8051  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8052  +
                uri_path_normalization_mode: tc.normalize.into(),
        8053  +
                session_token_mode: if tc.omit_session_token {
        8054  +
                    SessionTokenMode::Exclude
        8055  +
                } else {
        8056  +
                    SessionTokenMode::Include
        8057  +
                },
        8058  +
                payload_checksum_kind: if tc.sign_body {
        8059  +
                    PayloadChecksumKind::XAmzSha256
        8060  +
                } else {
        8061  +
                    PayloadChecksumKind::NoHeader
        8062  +
                },
        8063  +
                ..Default::default()
        8064  +
            },
        8065  +
        }
        8066  +
    }
        8067  +
}
        8068  +
        8069  +
#[cfg(feature = "sigv4a")]
        8070  +
pub(crate) mod v4a {
        8071  +
    use super::*;
        8072  +
    use crate::http_request::{
        8073  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        8074  +
    };
        8075  +
    use crate::sign::v4a;
        8076  +
    use p256::ecdsa::signature::{Signature, Verifier};
        8077  +
    use p256::ecdsa::{DerSignature, SigningKey};
        8078  +
    use std::time::Duration;
        8079  +
    use time::format_description::well_known::Rfc3339;
        8080  +
    use time::OffsetDateTime;
        8081  +
        8082  +
    fn new_v4a_signing_params_from_context(
        8083  +
        test_context: &'_ TestContext,
        8084  +
        signature_location: SignatureLocation,
        8085  +
    ) -> crate::http_request::SigningParams<'_> {
        8086  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        8087  +
        params.settings.signature_location = signature_location;
        8088  +
        params.into()
        8089  +
    }
        8090  +
        8091  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        8092  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        8093  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
        8094  +
    }
        8095  +
        8096  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        8097  +
        let test = SigningSuiteTest::v4a(test_name);
        8098  +
        let tc = test.context();
        8099  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        8100  +
        8101  +
        let req = test.request();
        8102  +
        let expected_creq = test.canonical_request(signature_location);
        8103  +
        let signable_req = SignableRequest::from(&req);
        8104  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8105  +
        8106  +
        assert_eq!(
        8107  +
            expected_creq,
        8108  +
            actual_creq.to_string(),
        8109  +
            "canonical request didn't match (signature location: {signature_location:?})"
        8110  +
        );
        8111  +
        8112  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        8113  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8114  +
        let actual_string_to_sign = StringToSign::new_v4a(
        8115  +
            *params.time(),
        8116  +
            params.region_set().unwrap(),
        8117  +
            params.name(),
        8118  +
            hashed_creq,
        8119  +
        )
        8120  +
        .to_string();
        8121  +
        8122  +
        assert_eq!(
        8123  +
            expected_string_to_sign, actual_string_to_sign,
        8124  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        8125  +
        );
        8126  +
        8127  +
        let out = sign(signable_req, &params).unwrap();
        8128  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        8129  +
        out.output
        8130  +
            .apply_to_request_http0x(&mut req.as_http_request());
        8131  +
        8132  +
        let creds = params.credentials().unwrap();
        8133  +
        let signing_key =
        8134  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        8135  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        8136  +
        let sig = sig
        8137  +
            .try_into()
        8138  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        8139  +
        8140  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        8141  +
        let peer_public_key = signing_key.verifying_key();
        8142  +
        let sts = actual_string_to_sign.as_bytes();
        8143  +
        peer_public_key.verify(sts, &sig).unwrap();
        8144  +
        // TODO(sigv4a) - use public.key.json as verifying key?
        8145  +
    }
        8146  +
        8147  +
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
        8148  +
        fn from(tc: &'a TestContext) -> Self {
        8149  +
            crate::sign::v4a::SigningParams {
        8150  +
                identity: &tc.identity,
        8151  +
                region_set: &tc.region,
        8152  +
                name: &tc.service,
        8153  +
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8154  +
                    .unwrap()
        8155  +
                    .into(),
        8156  +
                settings: SigningSettings {
        8157  +
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8158  +
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8159  +
                    uri_path_normalization_mode: tc.normalize.into(),
        8160  +
                    session_token_mode: if tc.omit_session_token {
        8161  +
                        SessionTokenMode::Exclude
        8162  +
                    } else {
        8163  +
                        SessionTokenMode::Include
        8164  +
                    },
        8165  +
                    payload_checksum_kind: if tc.sign_body {
        8166  +
                        PayloadChecksumKind::XAmzSha256
        8167  +
                    } else {
        8168  +
                        PayloadChecksumKind::NoHeader
        8169  +
                    },
        8170  +
                    ..Default::default()
        8171  +
                },
        8172  +
            }
        8173  +
        }
 5297   8174   
    }
 5298   8175   
 5299   8176   
    #[test]
 5300   8177   
    fn test_parse() {
 5301         -
        let req = test_request("post-header-key-case");
        8178  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 5302   8179   
        assert_eq!(req.method, "POST");
 5303   8180   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 5304   8181   
        assert!(req.headers.is_empty());
 5305   8182   
    }
 5306   8183   
 5307   8184   
    #[test]
 5308   8185   
    fn test_read_query_params() {
 5309         -
        let req = test_request("get-header-value-trim");
        8186  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 5310   8187   
        assert_eq!(req.method, "GET");
 5311   8188   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 5312   8189   
        assert!(!req.headers.is_empty());
 5313   8190   
    }
 5314   8191   
}
 5315   8192   
 5316   8193   
fn read(path: &str) -> String {
 5317   8194   
    println!("Loading `{}` for test case...", path);
 5318   8195   
    let v = {
 5319   8196   
        match std::fs::read_to_string(path) {
 5320   8197   
            // This replacement is necessary for tests to pass on Windows, as reading the
 5321   8198   
            // test snapshots from the file system results in CRLF line endings being inserted.
 5322   8199   
            Ok(value) => value.replace("\r\n", "\n"),
 5323   8200   
            Err(err) => {
 5324   8201   
                panic!("failed to load test case `{}`: {}", path, err);
 5325   8202   
            }
 5326   8203   
        }
 5327   8204   
    };
 5328   8205   
 5329   8206   
    v.trim().to_string()
 5330   8207   
}
 5331   8208   
 5332   8209   
pub(crate) struct TestRequest {
 5333   8210   
    pub(crate) uri: String,
 5334   8211   
    pub(crate) method: String,
 5335   8212   
    pub(crate) headers: Vec<(String, String)>,
 5336   8213   
    pub(crate) body: TestSignedBody,
 5337   8214   
}
 5338   8215   
 5339   8216   
pub(crate) enum TestSignedBody {
 5340   8217   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 5341   8218   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 5342   8219   
                    )
 5343   8220   
                })
 5344   8221   
                .collect::<Vec<_>>(),
 5345   8222   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 5346   8223   
        }
 5347   8224   
    }
 5348   8225   
}
 5349   8226   
 5350   8227   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 5351   8228   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 5352   8229   
        SignableRequest::new(
 5353   8230   
            &request.method,
 5354   8231   
            &request.uri,
 5355   8232   
            request
 5356   8233   
                .headers
 5357   8234   
                .iter()
 5358   8235   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 5359   8236   
            request.body.as_signable_body(),
 5360   8237   
        )
 5361   8238   
        .expect("URI MUST be valid")
 5362   8239   
    }
 5363   8240   
}
 5364   8241   
 5365   8242   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 5366   8243   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 5367   8244   
    // httparse 1.5 requires two trailing newlines to head the header section.
 5368   8245   
    let mut with_newline = Vec::from(s);
 5369   8246   
    with_newline.push(b'\n');
 5370   8247   
    let mut req = httparse::Request::new(&mut headers);
 5371         -
    let _ = req.parse(&with_newline).unwrap();
        8248  +
    let status = req.parse(&with_newline).unwrap();
        8249  +
        8250  +
    let body = if status.is_complete() {
        8251  +
        let body_offset = status.unwrap();
        8252  +
        // ignore the newline we added, take from original
        8253  +
        &s[body_offset..]
        8254  +
    } else {
        8255  +
        &[]
        8256  +
    };
 5372   8257   
 5373   8258   
    let mut uri_builder = Uri::builder().scheme("https");
 5374   8259   
    if let Some(path) = req.path {
 5375   8260   
        uri_builder = uri_builder.path_and_query(path);
 5376   8261   
    }
 5377   8262   
 5378   8263   
    let mut headers = vec![];
 5379   8264   
    for header in req.headers {
 5380   8265   
        let name = header.name.to_lowercase();
 5381   8266   
        if name == "host" {
 5382   8267   
            uri_builder = uri_builder.authority(header.value);
 5383   8268   
        } else if !name.is_empty() {
 5384   8269   
            headers.push((
 5385   8270   
                header.name.to_string(),
 5386   8271   
                std::str::from_utf8(header.value)?.to_string(),
 5387   8272   
            ));
 5388   8273   
        }
 5389   8274   
    }
 5390   8275   
 5391   8276   
    Ok(TestRequest {
 5392   8277   
        uri: uri_builder.build()?.to_string(),
 5393   8278   
        method: req.method.unwrap().to_string(),
 5394   8279   
        headers,
 5395         -
        body: TestSignedBody::Bytes(vec![]),
        8280  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 5396   8281   
    })
 5397   8282   
}
 5398   8283   
 5399   8284   
#[test]
 5400   8285   
fn test_parse_headers() {
 5401   8286   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 5402   8287   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 5403   8288   
    assert_eq!(
 5404   8289   
        httparse::parse_headers(buf, &mut headers),
 5405   8290   
        Ok(httparse::Status::Complete((
 5406   8291   
            56,
 5407   8292   
            &[
 5408   8293   
                httparse::Header {
 5409   8294   
                    name: "Host",
 5410   8295   
                    value: b"example.amazonaws.com",
 5411   8296   
                },
 5412   8297   
                httparse::Header {
 5413   8298   
                    name: "X-Amz-Date",
 5414   8299   
                    value: b"20150830T123600Z",
 5415   8300   
                }
 5416   8301   
            ][..]
 5417   8302   
        )))
 5418   8303   
    );
 5419   8304   
}
 5420   8305   
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
 5421   8306   
index a208453..fc00249 100644
 5422         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        8307  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 5423   8308   
@@ -168,52 +168,54 @@ pub mod signing_params {
 5424   8309   
        );
 5425   8310   
 5426   8311   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 5427   8312   
        /// a required argument was not given.
 5428   8313   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 5429   8314   
            Ok(SigningParams {
 5430   8315   
                identity: self
 5431   8316   
                    .identity
 5432   8317   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 5433   8318   
                region: self
 5434   8319   
                    .region
 5435   8320   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 5436   8321   
                name: self
 5437   8322   
                    .name
 5438   8323   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 5439   8324   
                time: self
 5440   8325   
                    .time
 5441   8326   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 5442   8327   
                settings: self
 5443   8328   
                    .settings
 5444   8329   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 5445   8330   
            })
 5446   8331   
        }
 5447   8332   
    }
 5448   8333   
}
 5449   8334   
 5450   8335   
#[cfg(test)]
 5451   8336   
mod tests {
 5452   8337   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 5453   8338   
    use crate::date_time::test_parsers::parse_date_time;
 5454         -
    use crate::http_request::test;
 5455   8339   
 5456   8340   
    #[test]
 5457   8341   
    fn test_signature_calculation() {
 5458   8342   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 5459         -
        let creq = test::v4::test_canonical_request("iam");
        8343  +
        let creq = r#"AWS4-HMAC-SHA256
        8344  +
20150830T123600Z
        8345  +
20150830/us-east-1/iam/aws4_request
        8346  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 5460   8347   
        let time = parse_date_time("20150830T123600Z").unwrap();
 5461   8348   
 5462   8349   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 5463   8350   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 5464   8351   
 5465   8352   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 5466   8353   
        assert_eq!(expected, &signature);
 5467   8354   
    }
 5468   8355   
 5469   8356   
    #[test]
 5470   8357   
    fn sign_payload_empty_string() {
 5471   8358   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 5472   8359   
        let actual = sha256_hex_string([]);
 5473   8360   
        assert_eq!(expected, actual);
 5474   8361   
    }
 5475   8362   
}
 5476   8363   
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
 5477   8364   
index ce78c38..8c2f591 100644
 5478         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        8365  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 5479   8366   
@@ -1,43 +1,43 @@
 5480   8367   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 5481   8368   
[package]
 5482   8369   
name = "aws-smithy-checksums"
 5483   8370   
version = "0.63.5"
 5484   8371   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 5485   8372   
description = "Checksum calculation and verification callbacks"
 5486   8373   
edition = "2021"
 5487   8374   
license = "Apache-2.0"
 5488   8375   
repository = "https://github.com/smithy-lang/smithy-rs"
 5489   8376   
[package.metadata.docs.rs]
 5490   8377   
all-features = true
 5491   8378   
targets = ["x86_64-unknown-linux-gnu"]
 5492   8379   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 5493   8380   
rustdoc-args = ["--cfg", "docsrs"]
 5494   8381   
 5495   8382   
[dependencies]
 5496   8383   
bytes = "1.10.0"
 5497   8384   
crc-fast = "1.3.0"
 5498   8385   
hex = "0.4.3"
 5499   8386   
http = "0.2.9"
 5500   8387   
http-body = "0.4.5"
 5501   8388   
md-5 = "0.10"
 5502   8389   
pin-project-lite = "0.2.14"
 5503   8390   
sha1 = "0.10"
 5504   8391   
sha2 = "0.10"
 5505   8392   
tracing = "0.1.40"
 5506   8393   
 5507   8394   
[dependencies.aws-smithy-http]
 5508   8395   
path = "../aws-smithy-http"
 5509         -
version = "0.62.2"
        8396  +
version = "0.62.3"
 5510   8397   
 5511   8398   
[dependencies.aws-smithy-types]
 5512   8399   
path = "../aws-smithy-types"
 5513   8400   
version = "1.3.2"
 5514   8401   
 5515   8402   
[dev-dependencies]
 5516   8403   
bytes-utils = "0.1.2"
 5517   8404   
pretty_assertions = "1.3"
 5518   8405   
tracing-test = "0.2.1"
 5519   8406   
 5520   8407   
[dev-dependencies.tokio]
 5521   8408   
version = "1.23.1"
 5522   8409   
features = ["macros", "rt"]
 5523   8410   
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
 5524   8411   
index 970c99e..d3c7a49 100644
 5525         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        8412  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 5526   8413   
@@ -1,34 +1,34 @@
 5527   8414   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 5528   8415   
[package]
 5529   8416   
name = "aws-smithy-http"
 5530         -
version = "0.62.2"
        8417  +
version = "0.62.3"
 5531   8418   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 5532   8419   
description = "Smithy HTTP logic for smithy-rs."
 5533   8420   
edition = "2021"
 5534   8421   
license = "Apache-2.0"
 5535   8422   
repository = "https://github.com/smithy-lang/smithy-rs"
 5536   8423   
[package.metadata.docs.rs]
 5537   8424   
all-features = true
 5538   8425   
targets = ["x86_64-unknown-linux-gnu"]
 5539   8426   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 5540   8427   
rustdoc-args = ["--cfg", "docsrs"]
 5541   8428   
 5542   8429   
[features]
 5543   8430   
event-stream = ["aws-smithy-eventstream"]
 5544   8431   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 5545   8432   
 5546   8433   
[dependencies]
 5547   8434   
bytes = "1.10.0"
 5548   8435   
bytes-utils = "0.1"
 5549   8436   
percent-encoding = "2.3.1"
 5550   8437   
pin-project-lite = "0.2.14"
 5551   8438   
pin-utils = "0.1.0"
 5552   8439   
tracing = "0.1.40"
 5553   8440   
futures-core = "0.3.31"
 5554   8441   
 5555   8442   
[dependencies.aws-smithy-eventstream]
 5556   8443   
path = "../aws-smithy-eventstream"
 5557   8444   
optional = true
 5558   8445   
version = "0.60.10"
 5559   8446   
 5560   8447   
[dependencies.aws-smithy-runtime-api]
 5561   8448   
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
 5562   8449   
index 508f7a2..361545e 100644
 5563         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        8450  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 5564   8451   
@@ -1,27 +1,27 @@
 5565   8452   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 5566   8453   
[[bin]]
 5567   8454   
name = "read_many_from_str"
 5568   8455   
path = "fuzz_targets/read_many_from_str.rs"
 5569   8456   
test = false
 5570   8457   
doc = false
 5571   8458   
 5572   8459   
[package]
 5573   8460   
name = "aws-smithy-http-fuzz"
 5574   8461   
version = "0.0.0"
 5575   8462   
authors = ["Automatically generated"]
 5576   8463   
publish = false
 5577   8464   
edition = "2021"
 5578   8465   
 5579   8466   
[package.metadata]
 5580   8467   
cargo-fuzz = true
 5581   8468   
 5582   8469   
[dependencies]
 5583   8470   
libfuzzer-sys = "=0.4.7"
 5584   8471   
http = "0.2.3"
 5585   8472   
 5586   8473   
[dependencies.aws-smithy-http]
 5587   8474   
path = ".."
 5588         -
version = "0.62.2"
        8475  +
version = "0.62.3"
 5589   8476   
 5590   8477   
[workspace]
 5591   8478   
members = ["."]
 5592   8479   
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
 5593   8480   
index fef41d0..7694da6 100644
 5594         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        8481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 5595   8482   
@@ -25,68 +25,73 @@ impl QueryWriter {
 5596   8483   
    pub fn new(uri: &Uri) -> Self {
 5597   8484   
        let new_path_and_query = uri
 5598   8485   
            .path_and_query()
 5599   8486   
            .map(|pq| pq.to_string())
 5600   8487   
            .unwrap_or_default();
 5601   8488   
        let prefix = if uri.query().is_none() {
 5602   8489   
            Some('?')
 5603   8490   
        } else if !uri.query().unwrap_or_default().is_empty() {
 5604   8491   
            Some('&')
 5605   8492   
        } else {
 5606   8493   
            None
 5607   8494   
        };
 5608   8495   
        QueryWriter {
 5609   8496   
            base_uri: uri.clone(),
 5610   8497   
            new_path_and_query,
 5611   8498   
            prefix,
 5612   8499   
        }
 5613   8500   
    }
 5614   8501   
 5615   8502   
    /// Clears all query parameters.
 5616   8503   
    pub fn clear_params(&mut self) {
 5617   8504   
        if let Some(index) = self.new_path_and_query.find('?') {
 5618   8505   
            self.new_path_and_query.truncate(index);
 5619   8506   
            self.prefix = Some('?');
 5620   8507   
        }
 5621   8508   
    }
 5622   8509   
 5623   8510   
    /// Inserts a new query parameter. The key and value are percent encoded
 5624   8511   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 5625   8512   
    pub fn insert(&mut self, k: &str, v: &str) {
        8513  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        8514  +
    }
        8515  +
        8516  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        8517  +
    /// as is.
        8518  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 5626   8519   
        if let Some(prefix) = self.prefix {
 5627   8520   
            self.new_path_and_query.push(prefix);
 5628   8521   
        }
 5629   8522   
        self.prefix = Some('&');
 5630         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        8523  +
        self.new_path_and_query.push_str(encoded_k);
 5631   8524   
        self.new_path_and_query.push('=');
 5632         -
 5633         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
        8525  +
        self.new_path_and_query.push_str(encoded_v)
 5634   8526   
    }
 5635   8527   
 5636   8528   
    /// Returns just the built query string.
 5637   8529   
    pub fn build_query(self) -> String {
 5638   8530   
        self.build_uri().query().unwrap_or_default().to_string()
 5639   8531   
    }
 5640   8532   
 5641   8533   
    /// Returns a full [`Uri`] with the query string updated.
 5642   8534   
    pub fn build_uri(self) -> Uri {
 5643   8535   
        let mut parts = self.base_uri.into_parts();
 5644   8536   
        parts.path_and_query = Some(
 5645   8537   
            self.new_path_and_query
 5646   8538   
                .parse()
 5647   8539   
                .expect("adding query should not invalidate URI"),
 5648   8540   
        );
 5649   8541   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 5650   8542   
    }
 5651   8543   
}
 5652   8544   
 5653   8545   
#[cfg(test)]
 5654   8546   
mod test {
 5655   8547   
    use super::QueryWriter;
 5656   8548   
    use http_02x::Uri;
 5657   8549   
 5658   8550   
    #[test]
 5659   8551   
    fn empty_uri() {
 5660   8552   
        let uri = Uri::from_static("http://www.example.com");
 5661   8553   
        let mut query_writer = QueryWriter::new(&uri);
 5662   8554   
        query_writer.insert("key", "val%ue");
 5663   8555   
        query_writer.insert("another", "value");
 5664   8556   
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
 5665   8557   
index f108978..df7a9fe 100644
 5666         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        8558  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 5667   8559   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 5668   8560   
 5669   8561   
[package.metadata.smithy-rs-release-tooling]
 5670   8562   
stable = true
 5671   8563   
[package.metadata.cargo-udeps.ignore]
 5672   8564   
normal = ["aws-smithy-http"]
 5673   8565   
 5674   8566   
[features]
 5675   8567   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 5676   8568   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 5677   8569   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 5678   8570   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 5679   8571   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 5680   8572   
rt-tokio = ["tokio/rt"]
 5681   8573   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 5682   8574   
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"]
 5683   8575   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 5684   8576   
 5685   8577   
[dependencies]
 5686   8578   
bytes = "1.10.0"
 5687   8579   
fastrand = "2.3.0"
 5688   8580   
pin-project-lite = "0.2.14"
 5689   8581   
pin-utils = "0.1.0"
 5690   8582   
tracing = "0.1.40"
 5691   8583   
 5692   8584   
[dependencies.aws-smithy-async]
 5693   8585   
path = "../aws-smithy-async"
 5694   8586   
version = "1.2.5"
 5695   8587   
 5696   8588   
[dependencies.aws-smithy-http]
 5697   8589   
path = "../aws-smithy-http"
 5698         -
version = "0.62.2"
        8590  +
version = "0.62.3"
 5699   8591   
 5700   8592   
[dependencies.aws-smithy-observability]
 5701   8593   
path = "../aws-smithy-observability"
 5702   8594   
version = "0.1.3"
 5703   8595   
 5704   8596   
[dependencies.aws-smithy-runtime-api]
 5705   8597   
path = "../aws-smithy-runtime-api"
 5706   8598   
version = "1.8.5"
 5707   8599   
 5708   8600   
[dependencies.aws-smithy-types]
 5709   8601   
path = "../aws-smithy-types"
 5710   8602   
features = ["http-body-0-4-x"]
 5711   8603   
version = "1.3.2"
 5712   8604   
 5713   8605   
[dependencies.aws-smithy-http-client]
 5714   8606   
path = "../aws-smithy-http-client"
 5715   8607   
optional = true
 5716   8608   
version = "1.0.6"
 5717   8609   
 5718   8610   
[dependencies.http-02x]
 5719   8611   
package = "http"
 5720   8612   
version = "0.2.9"
 5721   8613   
 5722   8614   
[dependencies.http-1x]
 5723   8615   
package = "http"
 5724   8616   
version = "1"
 5725   8617   
 5726   8618   
[dependencies.http-body-04x]
 5727   8619   
package = "http-body"
 5728   8620   
version = "0.4.5"
 5729   8621   
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
 5730   8622   
index 4e050c6..f58eb1c 100644
 5731         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
        8623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 5732   8624   
@@ -1,33 +1,33 @@
 5733   8625   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 5734   8626   
[package]
 5735   8627   
name = "aws-smithy-wasm"
 5736   8628   
version = "0.1.4"
 5737   8629   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 5738   8630   
description = "Smithy WebAssembly configuration for smithy-rs."
 5739   8631   
edition = "2021"
 5740   8632   
license = "Apache-2.0"
 5741   8633   
repository = "https://github.com/awslabs/smithy-rs"
 5742   8634   
[package.metadata.docs.rs]
 5743   8635   
all-features = true
 5744   8636   
targets = ["x86_64-unknown-linux-gnu"]
 5745   8637   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 5746   8638   
rustdoc-args = ["--cfg", "docsrs"]
 5747   8639   
 5748   8640   
[dependencies]
 5749   8641   
bytes = "1.10.0"
 5750   8642   
http = "1.0.0"
 5751   8643   
tracing = "0.1.40"
 5752   8644   
wasi = "0.12.1"
 5753   8645   
 5754   8646   
[dependencies.aws-smithy-runtime-api]
 5755   8647   
path = "../aws-smithy-runtime-api"
 5756   8648   
features = ["http-1x"]
 5757   8649   
version = "1.8.5"
 5758   8650   
 5759   8651   
[dependencies.aws-smithy-http]
 5760   8652   
path = "../aws-smithy-http"
 5761         -
version = "0.62.2"
        8653  +
version = "0.62.3"
 5762   8654   
 5763   8655   
[dependencies.aws-smithy-types]
 5764   8656   
path = "../aws-smithy-types"
 5765   8657   
version = "1.3.2"
 5766   8658   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 5767   8659   
index a880648..139e808 100644
 5768         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
        8660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 5769   8661   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 5770   8662   
edition = "2021"
 5771   8663   
license = "Apache-2.0"
 5772   8664   
repository = "https://github.com/awslabs/aws-sdk-rust"
 5773   8665   
rust-version = "1.86.0"
 5774   8666   
readme = "README.md"
 5775   8667   
[package.metadata.smithy]
 5776   8668   
codegen-version = "ci"
 5777   8669   
[package.metadata.docs.rs]
 5778   8670   
all-features = true
 5779   8671   
targets = ["x86_64-unknown-linux-gnu"]
 5780   8672   
[dependencies.aws-credential-types]
 5781   8673   
path = "../aws-credential-types"
 5782   8674   
version = "1.2.4"
 5783   8675   
 5784   8676   
[dependencies.aws-runtime]
 5785   8677   
path = "../aws-runtime"
 5786   8678   
features = ["event-stream"]
 5787   8679   
version = "1.5.9"
 5788   8680   
 5789   8681   
[dependencies.aws-smithy-async]
 5790   8682   
path = "../aws-smithy-async"
 5791   8683   
version = "1.2.5"
 5792   8684   
 5793   8685   
[dependencies.aws-smithy-eventstream]
 5794   8686   
path = "../aws-smithy-eventstream"
 5795   8687   
version = "0.60.10"
 5796   8688   
 5797   8689   
[dependencies.aws-smithy-http]
 5798   8690   
path = "../aws-smithy-http"
 5799   8691   
features = ["event-stream"]
 5800         -
version = "0.62.2"
        8692  +
version = "0.62.3"
 5801   8693   
 5802   8694   
[dependencies.aws-smithy-json]
 5803   8695   
path = "../aws-smithy-json"
 5804   8696   
version = "0.61.4"
 5805   8697   
 5806   8698   
[dependencies.aws-smithy-runtime]
 5807   8699   
path = "../aws-smithy-runtime"
 5808   8700   
features = ["client"]
 5809   8701   
version = "1.8.5"
 5810   8702   
 5811   8703   
[dependencies.aws-smithy-runtime-api]
 5812   8704   
path = "../aws-smithy-runtime-api"
 5813   8705   
features = ["client", "http-02x"]
 5814   8706   
version = "1.8.5"
 5815   8707   
 5816   8708   
[dependencies.aws-smithy-types]
 5817   8709   
path = "../aws-smithy-types"
 5818   8710   
version = "1.3.2"
 5819   8711   
 5820   8712   
[dependencies.aws-types]
 5821   8713   
path = "../aws-types"
 5822   8714   
version = "1.3.8"
 5823   8715   
 5824   8716   
[dependencies.bytes]
 5825   8717   
version = "1.4.0"
 5826   8718   
 5827   8719   
[dependencies.fastrand]
 5828   8720   
version = "2.0.0"
 5829   8721   
 5830   8722   
[dependencies.http]
 5831   8723   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 5832   8724   
index 415ecc9..667d12b 100644
 5833         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
        8725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 5834   8726   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 5835   8727   
edition = "2021"
 5836   8728   
license = "Apache-2.0"
 5837   8729   
repository = "https://github.com/awslabs/aws-sdk-rust"
 5838   8730   
rust-version = "1.86.0"
 5839   8731   
readme = "README.md"
 5840   8732   
[package.metadata.smithy]
 5841   8733   
codegen-version = "ci"
 5842   8734   
[package.metadata.docs.rs]
 5843   8735   
all-features = true
 5844   8736   
targets = ["x86_64-unknown-linux-gnu"]
 5845   8737   
[dependencies.aws-credential-types]
 5846   8738   
path = "../aws-credential-types"
 5847   8739   
version = "1.2.4"
 5848   8740   
 5849   8741   
[dependencies.aws-runtime]
 5850   8742   
path = "../aws-runtime"
 5851   8743   
features = ["event-stream"]
 5852   8744   
version = "1.5.9"
 5853   8745   
 5854   8746   
[dependencies.aws-smithy-async]
 5855   8747   
path = "../aws-smithy-async"
 5856   8748   
version = "1.2.5"
 5857   8749   
 5858   8750   
[dependencies.aws-smithy-eventstream]
 5859   8751   
path = "../aws-smithy-eventstream"
 5860   8752   
version = "0.60.10"
 5861   8753   
 5862   8754   
[dependencies.aws-smithy-http]
 5863   8755   
path = "../aws-smithy-http"
 5864   8756   
features = ["event-stream"]
 5865         -
version = "0.62.2"
        8757  +
version = "0.62.3"
 5866   8758   
 5867   8759   
[dependencies.aws-smithy-json]
 5868   8760   
path = "../aws-smithy-json"
 5869   8761   
version = "0.61.4"
 5870   8762   
 5871   8763   
[dependencies.aws-smithy-runtime]
 5872   8764   
path = "../aws-smithy-runtime"
 5873   8765   
features = ["client"]
 5874   8766   
version = "1.8.5"
 5875   8767   
 5876   8768   
[dependencies.aws-smithy-runtime-api]
 5877   8769   
path = "../aws-smithy-runtime-api"
 5878   8770   
features = ["client", "http-02x"]
 5879   8771   
version = "1.8.5"
 5880   8772   
 5881   8773   
[dependencies.aws-smithy-types]
 5882   8774   
path = "../aws-smithy-types"
 5883   8775   
version = "1.3.2"
 5884   8776   
 5885   8777   
[dependencies.aws-types]
 5886   8778   
path = "../aws-types"
 5887   8779   
version = "1.3.8"
 5888   8780   
 5889   8781   
[dependencies.bytes]
 5890   8782   
version = "1.4.0"
 5891   8783   
 5892   8784   
[dependencies.fastrand]
 5893   8785   
version = "2.0.0"
 5894   8786   
 5895   8787   
[dependencies.http]
 5896   8788   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 5897   8789   
index 8871cab..ed88de6 100644
 5898         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
        8790  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 5899   8791   
@@ -1,61 +1,61 @@
 5900   8792   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 5901   8793   
[package]
 5902   8794   
name = "aws-sdk-codecatalyst"
 5903   8795   
version = "0.0.0-local"
 5904   8796   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 5905   8797   
description = "AWS SDK for Amazon CodeCatalyst"
 5906   8798   
edition = "2021"
 5907   8799   
license = "Apache-2.0"
 5908   8800   
repository = "https://github.com/awslabs/aws-sdk-rust"
 5909   8801   
rust-version = "1.86.0"
 5910   8802   
readme = "README.md"
 5911   8803   
[package.metadata.smithy]
 5912   8804   
codegen-version = "ci"
 5913   8805   
[package.metadata.docs.rs]
 5914   8806   
all-features = true
 5915   8807   
targets = ["x86_64-unknown-linux-gnu"]
 5916   8808   
[dependencies.aws-credential-types]
 5917   8809   
path = "../aws-credential-types"
 5918   8810   
version = "1.2.4"
 5919   8811   
 5920   8812   
[dependencies.aws-runtime]
 5921   8813   
path = "../aws-runtime"
 5922   8814   
version = "1.5.9"
 5923   8815   
 5924   8816   
[dependencies.aws-smithy-async]
 5925   8817   
path = "../aws-smithy-async"
 5926   8818   
version = "1.2.5"
 5927   8819   
 5928   8820   
[dependencies.aws-smithy-http]
 5929   8821   
path = "../aws-smithy-http"
 5930         -
version = "0.62.2"
        8822  +
version = "0.62.3"
 5931   8823   
 5932   8824   
[dependencies.aws-smithy-json]
 5933   8825   
path = "../aws-smithy-json"
 5934   8826   
version = "0.61.4"
 5935   8827   
 5936   8828   
[dependencies.aws-smithy-runtime]
 5937   8829   
path = "../aws-smithy-runtime"
 5938   8830   
features = ["client", "http-auth"]
 5939   8831   
version = "1.8.5"
 5940   8832   
 5941   8833   
[dependencies.aws-smithy-runtime-api]
 5942   8834   
path = "../aws-smithy-runtime-api"
 5943   8835   
features = ["client", "http-02x", "http-auth"]
 5944   8836   
version = "1.8.5"
 5945   8837   
 5946   8838   
[dependencies.aws-smithy-types]
 5947   8839   
path = "../aws-smithy-types"
 5948   8840   
version = "1.3.2"
 5949   8841   
 5950   8842   
[dependencies.aws-types]
 5951   8843   
path = "../aws-types"
 5952   8844   
version = "1.3.8"
 5953   8845   
 5954   8846   
[dependencies.bytes]
 5955   8847   
version = "1.4.0"
 5956   8848   
 5957   8849   
[dependencies.fastrand]
 5958   8850   
version = "2.0.0"
 5959   8851   
 5960   8852   
[dependencies.http]
 5961   8853   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 5962   8854   
index 89573ff..05238af 100644
 5963         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
        8855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 5964   8856   
@@ -1,61 +1,61 @@
 5965   8857   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 5966   8858   
[package]
 5967   8859   
name = "aws-sdk-config"
 5968   8860   
version = "0.0.0-local"
 5969   8861   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 5970   8862   
description = "AWS SDK for AWS Config"
 5971   8863   
edition = "2021"
 5972   8864   
license = "Apache-2.0"
 5973   8865   
repository = "https://github.com/awslabs/aws-sdk-rust"
 5974   8866   
rust-version = "1.86.0"
 5975   8867   
readme = "README.md"
 5976   8868   
[package.metadata.smithy]
 5977   8869   
codegen-version = "ci"
 5978   8870   
[package.metadata.docs.rs]
 5979   8871   
all-features = true
 5980   8872   
targets = ["x86_64-unknown-linux-gnu"]
 5981   8873   
[dependencies.aws-credential-types]
 5982   8874   
path = "../aws-credential-types"
 5983   8875   
version = "1.2.4"
 5984   8876   
 5985   8877   
[dependencies.aws-runtime]
 5986   8878   
path = "../aws-runtime"
 5987   8879   
version = "1.5.9"
 5988   8880   
 5989   8881   
[dependencies.aws-smithy-async]
 5990   8882   
path = "../aws-smithy-async"
 5991   8883   
version = "1.2.5"
 5992   8884   
 5993   8885   
[dependencies.aws-smithy-http]
 5994   8886   
path = "../aws-smithy-http"
 5995         -
version = "0.62.2"
        8887  +
version = "0.62.3"
 5996   8888   
 5997   8889   
[dependencies.aws-smithy-json]
 5998   8890   
path = "../aws-smithy-json"
 5999   8891   
version = "0.61.4"
 6000   8892   
 6001   8893   
[dependencies.aws-smithy-runtime]
 6002   8894   
path = "../aws-smithy-runtime"
 6003   8895   
features = ["client"]
 6004   8896   
version = "1.8.5"
 6005   8897   
 6006   8898   
[dependencies.aws-smithy-runtime-api]
 6007   8899   
path = "../aws-smithy-runtime-api"
 6008   8900   
features = ["client", "http-02x"]
 6009   8901   
version = "1.8.5"
 6010   8902   
 6011   8903   
[dependencies.aws-smithy-types]
 6012   8904   
path = "../aws-smithy-types"
 6013   8905   
version = "1.3.2"
 6014   8906   
 6015   8907   
[dependencies.aws-types]
 6016   8908   
path = "../aws-types"
 6017   8909   
version = "1.3.8"
 6018   8910   
 6019   8911   
[dependencies.bytes]
 6020   8912   
version = "1.4.0"
 6021   8913   
 6022   8914   
[dependencies.fastrand]
 6023   8915   
version = "2.0.0"
 6024   8916   
 6025   8917   
[dependencies.http]
 6026   8918   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 6027   8919   
index d397c58..2c1062b 100644
 6028         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
        8920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 6029   8921   
@@ -1,61 +1,61 @@
 6030   8922   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6031   8923   
[package]
 6032   8924   
name = "aws-sdk-dynamodb"
 6033   8925   
version = "0.0.0-local"
 6034   8926   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6035   8927   
description = "AWS SDK for Amazon DynamoDB"
 6036   8928   
edition = "2021"
 6037   8929   
license = "Apache-2.0"
 6038   8930   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6039   8931   
rust-version = "1.86.0"
 6040   8932   
readme = "README.md"
 6041   8933   
[package.metadata.smithy]
 6042   8934   
codegen-version = "ci"
 6043   8935   
[package.metadata.docs.rs]
 6044   8936   
all-features = true
 6045   8937   
targets = ["x86_64-unknown-linux-gnu"]
 6046   8938   
[dependencies.aws-credential-types]
 6047   8939   
path = "../aws-credential-types"
 6048   8940   
version = "1.2.4"
 6049   8941   
 6050   8942   
[dependencies.aws-runtime]
 6051   8943   
path = "../aws-runtime"
 6052   8944   
version = "1.5.9"
 6053   8945   
 6054   8946   
[dependencies.aws-smithy-async]
 6055   8947   
path = "../aws-smithy-async"
 6056   8948   
version = "1.2.5"
 6057   8949   
 6058   8950   
[dependencies.aws-smithy-http]
 6059   8951   
path = "../aws-smithy-http"
 6060         -
version = "0.62.2"
        8952  +
version = "0.62.3"
 6061   8953   
 6062   8954   
[dependencies.aws-smithy-json]
 6063   8955   
path = "../aws-smithy-json"
 6064   8956   
version = "0.61.4"
 6065   8957   
 6066   8958   
[dependencies.aws-smithy-runtime]
 6067   8959   
path = "../aws-smithy-runtime"
 6068   8960   
features = ["client"]
 6069   8961   
version = "1.8.5"
 6070   8962   
 6071   8963   
[dependencies.aws-smithy-runtime-api]
 6072   8964   
path = "../aws-smithy-runtime-api"
 6073   8965   
features = ["client", "http-02x"]
 6074   8966   
version = "1.8.5"
 6075   8967   
 6076   8968   
[dependencies.aws-smithy-types]
 6077   8969   
path = "../aws-smithy-types"
 6078   8970   
version = "1.3.2"
 6079   8971   
 6080   8972   
[dependencies.aws-types]
 6081   8973   
path = "../aws-types"
 6082   8974   
version = "1.3.8"
 6083   8975   
 6084   8976   
[dependencies.bytes]
 6085   8977   
version = "1.4.0"
 6086   8978   
 6087   8979   
[dependencies.fastrand]
 6088   8980   
version = "2.0.0"
 6089   8981   
 6090   8982   
[dependencies.http]
 6091   8983   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 6092   8984   
index c0ba315..46168af 100644
 6093         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
        8985  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 6094   8986   
@@ -1,61 +1,61 @@
 6095   8987   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6096   8988   
[package]
 6097   8989   
name = "aws-sdk-ec2"
 6098   8990   
version = "0.0.0-local"
 6099   8991   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6100   8992   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 6101   8993   
edition = "2021"
 6102   8994   
license = "Apache-2.0"
 6103   8995   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6104   8996   
rust-version = "1.86.0"
 6105   8997   
readme = "README.md"
 6106   8998   
[package.metadata.smithy]
 6107   8999   
codegen-version = "ci"
 6108   9000   
[package.metadata.docs.rs]
 6109   9001   
all-features = true
 6110   9002   
targets = ["x86_64-unknown-linux-gnu"]
 6111   9003   
[dependencies.aws-credential-types]
 6112   9004   
path = "../aws-credential-types"
 6113   9005   
version = "1.2.4"
 6114   9006   
 6115   9007   
[dependencies.aws-runtime]
 6116   9008   
path = "../aws-runtime"
 6117   9009   
version = "1.5.9"
 6118   9010   
 6119   9011   
[dependencies.aws-smithy-async]
 6120   9012   
path = "../aws-smithy-async"
 6121   9013   
version = "1.2.5"
 6122   9014   
 6123   9015   
[dependencies.aws-smithy-http]
 6124   9016   
path = "../aws-smithy-http"
 6125         -
version = "0.62.2"
        9017  +
version = "0.62.3"
 6126   9018   
 6127   9019   
[dependencies.aws-smithy-json]
 6128   9020   
path = "../aws-smithy-json"
 6129   9021   
version = "0.61.4"
 6130   9022   
 6131   9023   
[dependencies.aws-smithy-query]
 6132   9024   
path = "../aws-smithy-query"
 6133   9025   
version = "0.60.7"
 6134   9026   
 6135   9027   
[dependencies.aws-smithy-runtime]
 6136   9028   
path = "../aws-smithy-runtime"
 6137   9029   
features = ["client"]
 6138   9030   
version = "1.8.5"
 6139   9031   
 6140   9032   
[dependencies.aws-smithy-runtime-api]
 6141   9033   
path = "../aws-smithy-runtime-api"
 6142   9034   
features = ["client", "http-02x"]
 6143   9035   
version = "1.8.5"
 6144   9036   
 6145   9037   
[dependencies.aws-smithy-types]
 6146   9038   
path = "../aws-smithy-types"
 6147   9039   
version = "1.3.2"
 6148   9040   
 6149   9041   
[dependencies.aws-smithy-xml]
 6150   9042   
path = "../aws-smithy-xml"
 6151   9043   
version = "0.60.10"
 6152   9044   
 6153   9045   
[dependencies.aws-types]
 6154   9046   
path = "../aws-types"
 6155   9047   
version = "1.3.8"
 6156   9048   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 6157   9049   
index 4474d17..095d40e 100644
 6158         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
        9050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 6159   9051   
@@ -1,61 +1,61 @@
 6160   9052   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6161   9053   
[package]
 6162   9054   
name = "aws-sdk-ecs"
 6163   9055   
version = "0.0.0-local"
 6164   9056   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6165   9057   
description = "AWS SDK for Amazon EC2 Container Service"
 6166   9058   
edition = "2021"
 6167   9059   
license = "Apache-2.0"
 6168   9060   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6169   9061   
rust-version = "1.86.0"
 6170   9062   
readme = "README.md"
 6171   9063   
[package.metadata.smithy]
 6172   9064   
codegen-version = "ci"
 6173   9065   
[package.metadata.docs.rs]
 6174   9066   
all-features = true
 6175   9067   
targets = ["x86_64-unknown-linux-gnu"]
 6176   9068   
[dependencies.aws-credential-types]
 6177   9069   
path = "../aws-credential-types"
 6178   9070   
version = "1.2.4"
 6179   9071   
 6180   9072   
[dependencies.aws-runtime]
 6181   9073   
path = "../aws-runtime"
 6182   9074   
version = "1.5.9"
 6183   9075   
 6184   9076   
[dependencies.aws-smithy-async]
 6185   9077   
path = "../aws-smithy-async"
 6186   9078   
version = "1.2.5"
 6187   9079   
 6188   9080   
[dependencies.aws-smithy-http]
 6189   9081   
path = "../aws-smithy-http"
 6190         -
version = "0.62.2"
        9082  +
version = "0.62.3"
 6191   9083   
 6192   9084   
[dependencies.aws-smithy-json]
 6193   9085   
path = "../aws-smithy-json"
 6194   9086   
version = "0.61.4"
 6195   9087   
 6196   9088   
[dependencies.aws-smithy-runtime]
 6197   9089   
path = "../aws-smithy-runtime"
 6198   9090   
features = ["client"]
 6199   9091   
version = "1.8.5"
 6200   9092   
 6201   9093   
[dependencies.aws-smithy-runtime-api]
 6202   9094   
path = "../aws-smithy-runtime-api"
 6203   9095   
features = ["client", "http-02x"]
 6204   9096   
version = "1.8.5"
 6205   9097   
 6206   9098   
[dependencies.aws-smithy-types]
 6207   9099   
path = "../aws-smithy-types"
 6208   9100   
version = "1.3.2"
 6209   9101   
 6210   9102   
[dependencies.aws-types]
 6211   9103   
path = "../aws-types"
 6212   9104   
version = "1.3.8"
 6213   9105   
 6214   9106   
[dependencies.bytes]
 6215   9107   
version = "1.4.0"
 6216   9108   
 6217   9109   
[dependencies.fastrand]
 6218   9110   
version = "2.0.0"
 6219   9111   
 6220   9112   
[dependencies.http]
 6221   9113   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 6222   9114   
index 15b1d77..16d7d89 100644
 6223         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
        9115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 6224   9116   
@@ -1,65 +1,65 @@
 6225   9117   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6226   9118   
[package]
 6227   9119   
name = "aws-sdk-glacier"
 6228   9120   
version = "0.0.0-local"
 6229   9121   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6230   9122   
description = "AWS SDK for Amazon Glacier"
 6231   9123   
edition = "2021"
 6232   9124   
license = "Apache-2.0"
 6233   9125   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6234   9126   
rust-version = "1.86.0"
 6235   9127   
readme = "README.md"
 6236   9128   
[package.metadata.smithy]
 6237   9129   
codegen-version = "ci"
 6238   9130   
[package.metadata.docs.rs]
 6239   9131   
all-features = true
 6240   9132   
targets = ["x86_64-unknown-linux-gnu"]
 6241   9133   
[dependencies.aws-credential-types]
 6242   9134   
path = "../aws-credential-types"
 6243   9135   
version = "1.2.4"
 6244   9136   
 6245   9137   
[dependencies.aws-runtime]
 6246   9138   
path = "../aws-runtime"
 6247   9139   
version = "1.5.9"
 6248   9140   
 6249   9141   
[dependencies.aws-sigv4]
 6250   9142   
path = "../aws-sigv4"
 6251         -
version = "1.3.3"
        9143  +
version = "1.3.4"
 6252   9144   
 6253   9145   
[dependencies.aws-smithy-async]
 6254   9146   
path = "../aws-smithy-async"
 6255   9147   
version = "1.2.5"
 6256   9148   
 6257   9149   
[dependencies.aws-smithy-http]
 6258   9150   
path = "../aws-smithy-http"
 6259         -
version = "0.62.2"
        9151  +
version = "0.62.3"
 6260   9152   
 6261   9153   
[dependencies.aws-smithy-json]
 6262   9154   
path = "../aws-smithy-json"
 6263   9155   
version = "0.61.4"
 6264   9156   
 6265   9157   
[dependencies.aws-smithy-runtime]
 6266   9158   
path = "../aws-smithy-runtime"
 6267   9159   
features = ["client"]
 6268   9160   
version = "1.8.5"
 6269   9161   
 6270   9162   
[dependencies.aws-smithy-runtime-api]
 6271   9163   
path = "../aws-smithy-runtime-api"
 6272   9164   
features = ["client", "http-02x"]
 6273   9165   
version = "1.8.5"
 6274   9166   
 6275   9167   
[dependencies.aws-smithy-types]
 6276   9168   
path = "../aws-smithy-types"
 6277   9169   
version = "1.3.2"
 6278   9170   
 6279   9171   
[dependencies.aws-types]
 6280   9172   
path = "../aws-types"
 6281   9173   
version = "1.3.8"
 6282   9174   
 6283   9175   
[dependencies.bytes]
 6284   9176   
version = "1.4.0"
 6285   9177   
 6286   9178   
[dependencies.fastrand]
 6287   9179   
version = "2.0.0"
 6288   9180   
 6289   9181   
[dependencies.hex]
 6290   9182   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 6291   9183   
index d718a3a..65e6f24 100644
 6292         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
        9184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 6293   9185   
@@ -1,61 +1,61 @@
 6294   9186   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6295   9187   
[package]
 6296   9188   
name = "aws-sdk-iam"
 6297   9189   
version = "0.0.0-local"
 6298   9190   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6299   9191   
description = "AWS SDK for AWS Identity and Access Management"
 6300   9192   
edition = "2021"
 6301   9193   
license = "Apache-2.0"
 6302   9194   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6303   9195   
rust-version = "1.86.0"
 6304   9196   
readme = "README.md"
 6305   9197   
[package.metadata.smithy]
 6306   9198   
codegen-version = "ci"
 6307   9199   
[package.metadata.docs.rs]
 6308   9200   
all-features = true
 6309   9201   
targets = ["x86_64-unknown-linux-gnu"]
 6310   9202   
[dependencies.aws-credential-types]
 6311   9203   
path = "../aws-credential-types"
 6312   9204   
version = "1.2.4"
 6313   9205   
 6314   9206   
[dependencies.aws-runtime]
 6315   9207   
path = "../aws-runtime"
 6316   9208   
version = "1.5.9"
 6317   9209   
 6318   9210   
[dependencies.aws-smithy-async]
 6319   9211   
path = "../aws-smithy-async"
 6320   9212   
version = "1.2.5"
 6321   9213   
 6322   9214   
[dependencies.aws-smithy-http]
 6323   9215   
path = "../aws-smithy-http"
 6324         -
version = "0.62.2"
        9216  +
version = "0.62.3"
 6325   9217   
 6326   9218   
[dependencies.aws-smithy-json]
 6327   9219   
path = "../aws-smithy-json"
 6328   9220   
version = "0.61.4"
 6329   9221   
 6330   9222   
[dependencies.aws-smithy-query]
 6331   9223   
path = "../aws-smithy-query"
 6332   9224   
version = "0.60.7"
 6333   9225   
 6334   9226   
[dependencies.aws-smithy-runtime]
 6335   9227   
path = "../aws-smithy-runtime"
 6336   9228   
features = ["client"]
 6337   9229   
version = "1.8.5"
 6338   9230   
 6339   9231   
[dependencies.aws-smithy-runtime-api]
 6340   9232   
path = "../aws-smithy-runtime-api"
 6341   9233   
features = ["client", "http-02x"]
 6342   9234   
version = "1.8.5"
 6343   9235   
 6344   9236   
[dependencies.aws-smithy-types]
 6345   9237   
path = "../aws-smithy-types"
 6346   9238   
version = "1.3.2"
 6347   9239   
 6348   9240   
[dependencies.aws-smithy-xml]
 6349   9241   
path = "../aws-smithy-xml"
 6350   9242   
version = "0.60.10"
 6351   9243   
 6352   9244   
[dependencies.aws-types]
 6353   9245   
path = "../aws-types"
 6354   9246   
version = "1.3.8"
 6355   9247   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 6356   9248   
index 0ed4302..3d828a5 100644
 6357         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
        9249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 6358   9250   
@@ -1,61 +1,61 @@
 6359   9251   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6360   9252   
[package]
 6361   9253   
name = "aws-sdk-kms"
 6362   9254   
version = "0.0.0-local"
 6363   9255   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6364   9256   
description = "AWS SDK for AWS Key Management Service"
 6365   9257   
edition = "2021"
 6366   9258   
license = "Apache-2.0"
 6367   9259   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6368   9260   
rust-version = "1.86.0"
 6369   9261   
readme = "README.md"
 6370   9262   
[package.metadata.smithy]
 6371   9263   
codegen-version = "ci"
 6372   9264   
[package.metadata.docs.rs]
 6373   9265   
all-features = true
 6374   9266   
targets = ["x86_64-unknown-linux-gnu"]
 6375   9267   
[dependencies.aws-credential-types]
 6376   9268   
path = "../aws-credential-types"
 6377   9269   
version = "1.2.4"
 6378   9270   
 6379   9271   
[dependencies.aws-runtime]
 6380   9272   
path = "../aws-runtime"
 6381   9273   
version = "1.5.9"
 6382   9274   
 6383   9275   
[dependencies.aws-smithy-async]
 6384   9276   
path = "../aws-smithy-async"
 6385   9277   
version = "1.2.5"
 6386   9278   
 6387   9279   
[dependencies.aws-smithy-http]
 6388   9280   
path = "../aws-smithy-http"
 6389         -
version = "0.62.2"
        9281  +
version = "0.62.3"
 6390   9282   
 6391   9283   
[dependencies.aws-smithy-json]
 6392   9284   
path = "../aws-smithy-json"
 6393   9285   
version = "0.61.4"
 6394   9286   
 6395   9287   
[dependencies.aws-smithy-runtime]
 6396   9288   
path = "../aws-smithy-runtime"
 6397   9289   
features = ["client"]
 6398   9290   
version = "1.8.5"
 6399   9291   
 6400   9292   
[dependencies.aws-smithy-runtime-api]
 6401   9293   
path = "../aws-smithy-runtime-api"
 6402   9294   
features = ["client", "http-02x"]
 6403   9295   
version = "1.8.5"
 6404   9296   
 6405   9297   
[dependencies.aws-smithy-types]
 6406   9298   
path = "../aws-smithy-types"
 6407   9299   
version = "1.3.2"
 6408   9300   
 6409   9301   
[dependencies.aws-types]
 6410   9302   
path = "../aws-types"
 6411   9303   
version = "1.3.8"
 6412   9304   
 6413   9305   
[dependencies.bytes]
 6414   9306   
version = "1.4.0"
 6415   9307   
 6416   9308   
[dependencies.fastrand]
 6417   9309   
version = "2.0.0"
 6418   9310   
 6419   9311   
[dependencies.http]
 6420   9312   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 6421   9313   
index 6518dfc..6b94752 100644
 6422         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
        9314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 6423   9315   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 6424   9316   
edition = "2021"
 6425   9317   
license = "Apache-2.0"
 6426   9318   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6427   9319   
rust-version = "1.86.0"
 6428   9320   
readme = "README.md"
 6429   9321   
[package.metadata.smithy]
 6430   9322   
codegen-version = "ci"
 6431   9323   
[package.metadata.docs.rs]
 6432   9324   
all-features = true
 6433   9325   
targets = ["x86_64-unknown-linux-gnu"]
 6434   9326   
[dependencies.aws-credential-types]
 6435   9327   
path = "../aws-credential-types"
 6436   9328   
version = "1.2.4"
 6437   9329   
 6438   9330   
[dependencies.aws-runtime]
 6439   9331   
path = "../aws-runtime"
 6440   9332   
features = ["event-stream"]
 6441   9333   
version = "1.5.9"
 6442   9334   
 6443   9335   
[dependencies.aws-smithy-async]
 6444   9336   
path = "../aws-smithy-async"
 6445   9337   
version = "1.2.5"
 6446   9338   
 6447   9339   
[dependencies.aws-smithy-eventstream]
 6448   9340   
path = "../aws-smithy-eventstream"
 6449   9341   
version = "0.60.10"
 6450   9342   
 6451   9343   
[dependencies.aws-smithy-http]
 6452   9344   
path = "../aws-smithy-http"
 6453   9345   
features = ["event-stream"]
 6454         -
version = "0.62.2"
        9346  +
version = "0.62.3"
 6455   9347   
 6456   9348   
[dependencies.aws-smithy-json]
 6457   9349   
path = "../aws-smithy-json"
 6458   9350   
version = "0.61.4"
 6459   9351   
 6460   9352   
[dependencies.aws-smithy-runtime]
 6461   9353   
path = "../aws-smithy-runtime"
 6462   9354   
features = ["client"]
 6463   9355   
version = "1.8.5"
 6464   9356   
 6465   9357   
[dependencies.aws-smithy-runtime-api]
 6466   9358   
path = "../aws-smithy-runtime-api"
 6467   9359   
features = ["client", "http-02x"]
 6468   9360   
version = "1.8.5"
 6469   9361   
 6470   9362   
[dependencies.aws-smithy-types]
 6471   9363   
path = "../aws-smithy-types"
 6472   9364   
version = "1.3.2"
 6473   9365   
 6474   9366   
[dependencies.aws-types]
 6475   9367   
path = "../aws-types"
 6476   9368   
version = "1.3.8"
 6477   9369   
 6478   9370   
[dependencies.bytes]
 6479   9371   
version = "1.4.0"
 6480   9372   
 6481   9373   
[dependencies.fastrand]
 6482   9374   
version = "2.0.0"
 6483   9375   
 6484   9376   
[dependencies.http]
 6485   9377   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 6486   9378   
index dabb0e0..34cbc15 100644
 6487         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
        9379  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 6488   9380   
@@ -1,65 +1,65 @@
 6489   9381   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6490   9382   
[package]
 6491   9383   
name = "aws-sdk-polly"
 6492   9384   
version = "0.0.0-local"
 6493   9385   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6494   9386   
description = "AWS SDK for Amazon Polly"
 6495   9387   
edition = "2021"
 6496   9388   
license = "Apache-2.0"
 6497   9389   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6498   9390   
rust-version = "1.86.0"
 6499   9391   
readme = "README.md"
 6500   9392   
[package.metadata.smithy]
 6501   9393   
codegen-version = "ci"
 6502   9394   
[package.metadata.docs.rs]
 6503   9395   
all-features = true
 6504   9396   
targets = ["x86_64-unknown-linux-gnu"]
 6505   9397   
[dependencies.aws-credential-types]
 6506   9398   
path = "../aws-credential-types"
 6507   9399   
version = "1.2.4"
 6508   9400   
 6509   9401   
[dependencies.aws-runtime]
 6510   9402   
path = "../aws-runtime"
 6511   9403   
version = "1.5.9"
 6512   9404   
 6513   9405   
[dependencies.aws-sigv4]
 6514   9406   
path = "../aws-sigv4"
 6515         -
version = "1.3.3"
        9407  +
version = "1.3.4"
 6516   9408   
 6517   9409   
[dependencies.aws-smithy-async]
 6518   9410   
path = "../aws-smithy-async"
 6519   9411   
version = "1.2.5"
 6520   9412   
 6521   9413   
[dependencies.aws-smithy-http]
 6522   9414   
path = "../aws-smithy-http"
 6523         -
version = "0.62.2"
        9415  +
version = "0.62.3"
 6524   9416   
 6525   9417   
[dependencies.aws-smithy-json]
 6526   9418   
path = "../aws-smithy-json"
 6527   9419   
version = "0.61.4"
 6528   9420   
 6529   9421   
[dependencies.aws-smithy-runtime]
 6530   9422   
path = "../aws-smithy-runtime"
 6531   9423   
features = ["client"]
 6532   9424   
version = "1.8.5"
 6533   9425   
 6534   9426   
[dependencies.aws-smithy-runtime-api]
 6535   9427   
path = "../aws-smithy-runtime-api"
 6536   9428   
features = ["client", "http-02x"]
 6537   9429   
version = "1.8.5"
 6538   9430   
 6539   9431   
[dependencies.aws-smithy-types]
 6540   9432   
path = "../aws-smithy-types"
 6541   9433   
version = "1.3.2"
 6542   9434   
 6543   9435   
[dependencies.aws-types]
 6544   9436   
path = "../aws-types"
 6545   9437   
version = "1.3.8"
 6546   9438   
 6547   9439   
[dependencies.bytes]
 6548   9440   
version = "1.4.0"
 6549   9441   
 6550   9442   
[dependencies.fastrand]
 6551   9443   
version = "2.0.0"
 6552   9444   
 6553   9445   
[dependencies.http]
 6554   9446   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 6555   9447   
index a884716..f3d8713 100644
 6556         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
        9448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 6557   9449   
@@ -1,61 +1,61 @@
 6558   9450   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6559   9451   
[package]
 6560   9452   
name = "aws-sdk-qldbsession"
 6561   9453   
version = "0.0.0-local"
 6562   9454   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6563   9455   
description = "AWS SDK for Amazon QLDB Session"
 6564   9456   
edition = "2021"
 6565   9457   
license = "Apache-2.0"
 6566   9458   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6567   9459   
rust-version = "1.86.0"
 6568   9460   
readme = "README.md"
 6569   9461   
[package.metadata.smithy]
 6570   9462   
codegen-version = "ci"
 6571   9463   
[package.metadata.docs.rs]
 6572   9464   
all-features = true
 6573   9465   
targets = ["x86_64-unknown-linux-gnu"]
 6574   9466   
[dependencies.aws-credential-types]
 6575   9467   
path = "../aws-credential-types"
 6576   9468   
version = "1.2.4"
 6577   9469   
 6578   9470   
[dependencies.aws-runtime]
 6579   9471   
path = "../aws-runtime"
 6580   9472   
version = "1.5.9"
 6581   9473   
 6582   9474   
[dependencies.aws-smithy-async]
 6583   9475   
path = "../aws-smithy-async"
 6584   9476   
version = "1.2.5"
 6585   9477   
 6586   9478   
[dependencies.aws-smithy-http]
 6587   9479   
path = "../aws-smithy-http"
 6588         -
version = "0.62.2"
        9480  +
version = "0.62.3"
 6589   9481   
 6590   9482   
[dependencies.aws-smithy-json]
 6591   9483   
path = "../aws-smithy-json"
 6592   9484   
version = "0.61.4"
 6593   9485   
 6594   9486   
[dependencies.aws-smithy-runtime]
 6595   9487   
path = "../aws-smithy-runtime"
 6596   9488   
features = ["client"]
 6597   9489   
version = "1.8.5"
 6598   9490   
 6599   9491   
[dependencies.aws-smithy-runtime-api]
 6600   9492   
path = "../aws-smithy-runtime-api"
 6601   9493   
features = ["client", "http-02x"]
 6602   9494   
version = "1.8.5"
 6603   9495   
 6604   9496   
[dependencies.aws-smithy-types]
 6605   9497   
path = "../aws-smithy-types"
 6606   9498   
version = "1.3.2"
 6607   9499   
 6608   9500   
[dependencies.aws-types]
 6609   9501   
path = "../aws-types"
 6610   9502   
version = "1.3.8"
 6611   9503   
 6612   9504   
[dependencies.bytes]
 6613   9505   
version = "1.4.0"
 6614   9506   
 6615   9507   
[dependencies.fastrand]
 6616   9508   
version = "2.0.0"
 6617   9509   
 6618   9510   
[dependencies.http]
 6619   9511   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 6620   9512   
index 32a7dc9..a2c752d 100644
 6621         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
        9513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 6622   9514   
@@ -1,61 +1,61 @@
 6623   9515   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6624   9516   
[package]
 6625   9517   
name = "aws-sdk-route53"
 6626   9518   
version = "0.0.0-local"
 6627   9519   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6628   9520   
description = "AWS SDK for Amazon Route 53"
 6629   9521   
edition = "2021"
 6630   9522   
license = "Apache-2.0"
 6631   9523   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6632   9524   
rust-version = "1.86.0"
 6633   9525   
readme = "README.md"
 6634   9526   
[package.metadata.smithy]
 6635   9527   
codegen-version = "ci"
 6636   9528   
[package.metadata.docs.rs]
 6637   9529   
all-features = true
 6638   9530   
targets = ["x86_64-unknown-linux-gnu"]
 6639   9531   
[dependencies.aws-credential-types]
 6640   9532   
path = "../aws-credential-types"
 6641   9533   
version = "1.2.4"
 6642   9534   
 6643   9535   
[dependencies.aws-runtime]
 6644   9536   
path = "../aws-runtime"
 6645   9537   
version = "1.5.9"
 6646   9538   
 6647   9539   
[dependencies.aws-smithy-async]
 6648   9540   
path = "../aws-smithy-async"
 6649   9541   
version = "1.2.5"
 6650   9542   
 6651   9543   
[dependencies.aws-smithy-http]
 6652   9544   
path = "../aws-smithy-http"
 6653         -
version = "0.62.2"
        9545  +
version = "0.62.3"
 6654   9546   
 6655   9547   
[dependencies.aws-smithy-json]
 6656   9548   
path = "../aws-smithy-json"
 6657   9549   
version = "0.61.4"
 6658   9550   
 6659   9551   
[dependencies.aws-smithy-runtime]
 6660   9552   
path = "../aws-smithy-runtime"
 6661   9553   
features = ["client"]
 6662   9554   
version = "1.8.5"
 6663   9555   
 6664   9556   
[dependencies.aws-smithy-runtime-api]
 6665   9557   
path = "../aws-smithy-runtime-api"
 6666   9558   
features = ["client", "http-02x"]
 6667   9559   
version = "1.8.5"
 6668   9560   
 6669   9561   
[dependencies.aws-smithy-types]
 6670   9562   
path = "../aws-smithy-types"
 6671   9563   
version = "1.3.2"
 6672   9564   
 6673   9565   
[dependencies.aws-smithy-xml]
 6674   9566   
path = "../aws-smithy-xml"
 6675   9567   
version = "0.60.10"
 6676   9568   
 6677   9569   
[dependencies.aws-types]
 6678   9570   
path = "../aws-types"
 6679   9571   
version = "1.3.8"
 6680   9572   
 6681   9573   
[dependencies.fastrand]
 6682   9574   
version = "2.0.0"
 6683   9575   
 6684   9576   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 6685   9577   
index f65e261..2f6bec0 100644
 6686         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
        9578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 6687   9579   
@@ -1,75 +1,75 @@
 6688   9580   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6689   9581   
[package]
 6690   9582   
name = "aws-sdk-s3"
 6691   9583   
version = "0.0.0-local"
 6692   9584   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6693   9585   
description = "AWS SDK for Amazon Simple Storage Service"
 6694   9586   
edition = "2021"
 6695   9587   
license = "Apache-2.0"
 6696   9588   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6697   9589   
rust-version = "1.86.0"
 6698   9590   
readme = "README.md"
 6699   9591   
[package.metadata.smithy]
 6700   9592   
codegen-version = "ci"
 6701   9593   
[package.metadata.docs.rs]
 6702   9594   
all-features = true
 6703   9595   
targets = ["x86_64-unknown-linux-gnu"]
 6704   9596   
[dependencies.aws-credential-types]
 6705   9597   
path = "../aws-credential-types"
 6706   9598   
version = "1.2.4"
 6707   9599   
 6708   9600   
[dependencies.aws-runtime]
 6709   9601   
path = "../aws-runtime"
 6710   9602   
features = ["event-stream", "http-02x"]
 6711   9603   
version = "1.5.9"
 6712   9604   
 6713   9605   
[dependencies.aws-sigv4]
 6714   9606   
path = "../aws-sigv4"
 6715         -
version = "1.3.3"
        9607  +
version = "1.3.4"
 6716   9608   
 6717   9609   
[dependencies.aws-smithy-async]
 6718   9610   
path = "../aws-smithy-async"
 6719   9611   
version = "1.2.5"
 6720   9612   
 6721   9613   
[dependencies.aws-smithy-checksums]
 6722   9614   
path = "../aws-smithy-checksums"
 6723   9615   
version = "0.63.5"
 6724   9616   
 6725   9617   
[dependencies.aws-smithy-eventstream]
 6726   9618   
path = "../aws-smithy-eventstream"
 6727   9619   
version = "0.60.10"
 6728   9620   
 6729   9621   
[dependencies.aws-smithy-http]
 6730   9622   
path = "../aws-smithy-http"
 6731   9623   
features = ["event-stream"]
 6732         -
version = "0.62.2"
        9624  +
version = "0.62.3"
 6733   9625   
 6734   9626   
[dependencies.aws-smithy-json]
 6735   9627   
path = "../aws-smithy-json"
 6736   9628   
version = "0.61.4"
 6737   9629   
 6738   9630   
[dependencies.aws-smithy-runtime]
 6739   9631   
path = "../aws-smithy-runtime"
 6740   9632   
features = ["client"]
 6741   9633   
version = "1.8.5"
 6742   9634   
 6743   9635   
[dependencies.aws-smithy-runtime-api]
 6744   9636   
path = "../aws-smithy-runtime-api"
 6745   9637   
features = ["client", "http-02x"]
 6746   9638   
version = "1.8.5"
 6747   9639   
 6748   9640   
[dependencies.aws-smithy-types]
 6749   9641   
path = "../aws-smithy-types"
 6750   9642   
version = "1.3.2"
 6751   9643   
 6752   9644   
[dependencies.aws-smithy-xml]
 6753   9645   
path = "../aws-smithy-xml"
 6754   9646   
version = "0.60.10"
 6755   9647   
 6756   9648   
[dependencies.aws-types]
 6757   9649   
path = "../aws-types"
 6758   9650   
version = "1.3.8"
 6759   9651   
 6760   9652   
[dependencies.bytes]
 6761   9653   
version = "1.4.0"
 6762   9654   
 6763   9655   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 6764   9656   
index b4d1cdd..861c0cc 100644
 6765         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
        9657  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 6766   9658   
@@ -1,61 +1,61 @@
 6767   9659   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6768   9660   
[package]
 6769   9661   
name = "aws-sdk-s3control"
 6770   9662   
version = "0.0.0-local"
 6771   9663   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6772   9664   
description = "AWS SDK for AWS S3 Control"
 6773   9665   
edition = "2021"
 6774   9666   
license = "Apache-2.0"
 6775   9667   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6776   9668   
rust-version = "1.86.0"
 6777   9669   
readme = "README.md"
 6778   9670   
[package.metadata.smithy]
 6779   9671   
codegen-version = "ci"
 6780   9672   
[package.metadata.docs.rs]
 6781   9673   
all-features = true
 6782   9674   
targets = ["x86_64-unknown-linux-gnu"]
 6783   9675   
[dependencies.aws-credential-types]
 6784   9676   
path = "../aws-credential-types"
 6785   9677   
version = "1.2.4"
 6786   9678   
 6787   9679   
[dependencies.aws-runtime]
 6788   9680   
path = "../aws-runtime"
 6789   9681   
version = "1.5.9"
 6790   9682   
 6791   9683   
[dependencies.aws-smithy-async]
 6792   9684   
path = "../aws-smithy-async"
 6793   9685   
version = "1.2.5"
 6794   9686   
 6795   9687   
[dependencies.aws-smithy-http]
 6796   9688   
path = "../aws-smithy-http"
 6797         -
version = "0.62.2"
        9689  +
version = "0.62.3"
 6798   9690   
 6799   9691   
[dependencies.aws-smithy-json]
 6800   9692   
path = "../aws-smithy-json"
 6801   9693   
version = "0.61.4"
 6802   9694   
 6803   9695   
[dependencies.aws-smithy-runtime]
 6804   9696   
path = "../aws-smithy-runtime"
 6805   9697   
features = ["client"]
 6806   9698   
version = "1.8.5"
 6807   9699   
 6808   9700   
[dependencies.aws-smithy-runtime-api]
 6809   9701   
path = "../aws-smithy-runtime-api"
 6810   9702   
features = ["client", "http-02x"]
 6811   9703   
version = "1.8.5"
 6812   9704   
 6813   9705   
[dependencies.aws-smithy-types]
 6814   9706   
path = "../aws-smithy-types"
 6815   9707   
version = "1.3.2"
 6816   9708   
 6817   9709   
[dependencies.aws-smithy-xml]
 6818   9710   
path = "../aws-smithy-xml"
 6819   9711   
version = "0.60.10"
 6820   9712   
 6821   9713   
[dependencies.aws-types]
 6822   9714   
path = "../aws-types"
 6823   9715   
version = "1.3.8"
 6824   9716   
 6825   9717   
[dependencies.fastrand]
 6826   9718   
version = "2.0.0"
 6827   9719   
 6828   9720   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 6829   9721   
index 2cde182..fc367f4 100644
 6830         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
        9722  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 6831   9723   
@@ -1,61 +1,61 @@
 6832   9724   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6833   9725   
[package]
 6834   9726   
name = "aws-sdk-sso"
 6835   9727   
version = "0.0.0-local"
 6836   9728   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6837   9729   
description = "AWS SDK for AWS Single Sign-On"
 6838   9730   
edition = "2021"
 6839   9731   
license = "Apache-2.0"
 6840   9732   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6841   9733   
rust-version = "1.86.0"
 6842   9734   
readme = "README.md"
 6843   9735   
[package.metadata.smithy]
 6844   9736   
codegen-version = "ci"
 6845   9737   
[package.metadata.docs.rs]
 6846   9738   
all-features = true
 6847   9739   
targets = ["x86_64-unknown-linux-gnu"]
 6848   9740   
[dependencies.aws-credential-types]
 6849   9741   
path = "../aws-credential-types"
 6850   9742   
version = "1.2.4"
 6851   9743   
 6852   9744   
[dependencies.aws-runtime]
 6853   9745   
path = "../aws-runtime"
 6854   9746   
version = "1.5.9"
 6855   9747   
 6856   9748   
[dependencies.aws-smithy-async]
 6857   9749   
path = "../aws-smithy-async"
 6858   9750   
version = "1.2.5"
 6859   9751   
 6860   9752   
[dependencies.aws-smithy-http]
 6861   9753   
path = "../aws-smithy-http"
 6862         -
version = "0.62.2"
        9754  +
version = "0.62.3"
 6863   9755   
 6864   9756   
[dependencies.aws-smithy-json]
 6865   9757   
path = "../aws-smithy-json"
 6866   9758   
version = "0.61.4"
 6867   9759   
 6868   9760   
[dependencies.aws-smithy-runtime]
 6869   9761   
path = "../aws-smithy-runtime"
 6870   9762   
features = ["client"]
 6871   9763   
version = "1.8.5"
 6872   9764   
 6873   9765   
[dependencies.aws-smithy-runtime-api]
 6874   9766   
path = "../aws-smithy-runtime-api"
 6875   9767   
features = ["client", "http-02x"]
 6876   9768   
version = "1.8.5"
 6877   9769   
 6878   9770   
[dependencies.aws-smithy-types]
 6879   9771   
path = "../aws-smithy-types"
 6880   9772   
version = "1.3.2"
 6881   9773   
 6882   9774   
[dependencies.aws-types]
 6883   9775   
path = "../aws-types"
 6884   9776   
version = "1.3.8"
 6885   9777   
 6886   9778   
[dependencies.bytes]
 6887   9779   
version = "1.4.0"
 6888   9780   
 6889   9781   
[dependencies.fastrand]
 6890   9782   
version = "2.0.0"
 6891   9783   
 6892   9784   
[dependencies.http]
 6893   9785   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 6894   9786   
index 7a34c16..588d0bd 100644
 6895         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
        9787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 6896   9788   
@@ -1,61 +1,61 @@
 6897   9789   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6898   9790   
[package]
 6899   9791   
name = "aws-sdk-ssooidc"
 6900   9792   
version = "0.0.0-local"
 6901   9793   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6902   9794   
description = "AWS SDK for AWS SSO OIDC"
 6903   9795   
edition = "2021"
 6904   9796   
license = "Apache-2.0"
 6905   9797   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6906   9798   
rust-version = "1.86.0"
 6907   9799   
readme = "README.md"
 6908   9800   
[package.metadata.smithy]
 6909   9801   
codegen-version = "ci"
 6910   9802   
[package.metadata.docs.rs]
 6911   9803   
all-features = true
 6912   9804   
targets = ["x86_64-unknown-linux-gnu"]
 6913   9805   
[dependencies.aws-credential-types]
 6914   9806   
path = "../aws-credential-types"
 6915   9807   
version = "1.2.4"
 6916   9808   
 6917   9809   
[dependencies.aws-runtime]
 6918   9810   
path = "../aws-runtime"
 6919   9811   
version = "1.5.9"
 6920   9812   
 6921   9813   
[dependencies.aws-smithy-async]
 6922   9814   
path = "../aws-smithy-async"
 6923   9815   
version = "1.2.5"
 6924   9816   
 6925   9817   
[dependencies.aws-smithy-http]
 6926   9818   
path = "../aws-smithy-http"
 6927         -
version = "0.62.2"
        9819  +
version = "0.62.3"
 6928   9820   
 6929   9821   
[dependencies.aws-smithy-json]
 6930   9822   
path = "../aws-smithy-json"
 6931   9823   
version = "0.61.4"
 6932   9824   
 6933   9825   
[dependencies.aws-smithy-runtime]
 6934   9826   
path = "../aws-smithy-runtime"
 6935   9827   
features = ["client"]
 6936   9828   
version = "1.8.5"
 6937   9829   
 6938   9830   
[dependencies.aws-smithy-runtime-api]
 6939   9831   
path = "../aws-smithy-runtime-api"
 6940   9832   
features = ["client", "http-02x"]
 6941   9833   
version = "1.8.5"
 6942   9834   
 6943   9835   
[dependencies.aws-smithy-types]
 6944   9836   
path = "../aws-smithy-types"
 6945   9837   
version = "1.3.2"
 6946   9838   
 6947   9839   
[dependencies.aws-types]
 6948   9840   
path = "../aws-types"
 6949   9841   
version = "1.3.8"
 6950   9842   
 6951   9843   
[dependencies.bytes]
 6952   9844   
version = "1.4.0"
 6953   9845   
 6954   9846   
[dependencies.fastrand]
 6955   9847   
version = "2.0.0"
 6956   9848   
 6957   9849   
[dependencies.http]
 6958   9850   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 6959   9851   
index 895dfb3..f2ce34e 100644
 6960         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
        9852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 6961   9853   
@@ -1,61 +1,61 @@
 6962   9854   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6963   9855   
[package]
 6964   9856   
name = "aws-sdk-sts"
 6965   9857   
version = "0.0.0-local"
 6966   9858   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6967   9859   
description = "AWS SDK for AWS Security Token Service"
 6968   9860   
edition = "2021"
 6969   9861   
license = "Apache-2.0"
 6970   9862   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6971   9863   
rust-version = "1.86.0"
 6972   9864   
readme = "README.md"
 6973   9865   
[package.metadata.smithy]
 6974   9866   
codegen-version = "ci"
 6975   9867   
[package.metadata.docs.rs]
 6976   9868   
all-features = true
 6977   9869   
targets = ["x86_64-unknown-linux-gnu"]
 6978   9870   
[dependencies.aws-credential-types]
 6979   9871   
path = "../aws-credential-types"
 6980   9872   
version = "1.2.4"
 6981   9873   
 6982   9874   
[dependencies.aws-runtime]
 6983   9875   
path = "../aws-runtime"
 6984   9876   
version = "1.5.9"
 6985   9877   
 6986   9878   
[dependencies.aws-smithy-async]
 6987   9879   
path = "../aws-smithy-async"
 6988   9880   
version = "1.2.5"
 6989   9881   
 6990   9882   
[dependencies.aws-smithy-http]
 6991   9883   
path = "../aws-smithy-http"
 6992         -
version = "0.62.2"
        9884  +
version = "0.62.3"
 6993   9885   
 6994   9886   
[dependencies.aws-smithy-json]
 6995   9887   
path = "../aws-smithy-json"
 6996   9888   
version = "0.61.4"
 6997   9889   
 6998   9890   
[dependencies.aws-smithy-query]
 6999   9891   
path = "../aws-smithy-query"
 7000   9892   
version = "0.60.7"
 7001   9893   
 7002   9894   
[dependencies.aws-smithy-runtime]
 7003   9895   
path = "../aws-smithy-runtime"
 7004   9896   
features = ["client"]
 7005   9897   
version = "1.8.5"
 7006   9898   
 7007   9899   
[dependencies.aws-smithy-runtime-api]
 7008   9900   
path = "../aws-smithy-runtime-api"
 7009   9901   
features = ["client", "http-02x"]
 7010   9902   
version = "1.8.5"
 7011   9903   
 7012   9904   
[dependencies.aws-smithy-types]
 7013   9905   
path = "../aws-smithy-types"
 7014   9906   
version = "1.3.2"
 7015   9907   
 7016   9908   
[dependencies.aws-smithy-xml]
 7017   9909   
path = "../aws-smithy-xml"
 7018   9910   
version = "0.60.10"
 7019   9911   
 7020   9912   
[dependencies.aws-types]
 7021   9913   
path = "../aws-types"
 7022   9914   
version = "1.3.8"
 7023   9915   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 7024   9916   
index d556561..91178b6 100644
 7025         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
        9917  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 7026   9918   
@@ -1,61 +1,61 @@
 7027   9919   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7028   9920   
[package]
 7029   9921   
name = "aws-sdk-timestreamquery"
 7030   9922   
version = "0.0.0-local"
 7031   9923   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7032   9924   
description = "AWS SDK for Amazon Timestream Query"
 7033   9925   
edition = "2021"
 7034   9926   
license = "Apache-2.0"
 7035   9927   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7036   9928   
rust-version = "1.86.0"
 7037   9929   
readme = "README.md"
 7038   9930   
[package.metadata.smithy]
 7039   9931   
codegen-version = "ci"
 7040   9932   
[package.metadata.docs.rs]
 7041   9933   
all-features = true
 7042   9934   
targets = ["x86_64-unknown-linux-gnu"]
 7043   9935   
[dependencies.aws-credential-types]
 7044   9936   
path = "../aws-credential-types"
 7045   9937   
version = "1.2.4"
 7046   9938   
 7047   9939   
[dependencies.aws-runtime]
 7048   9940   
path = "../aws-runtime"
 7049   9941   
version = "1.5.9"
 7050   9942   
 7051   9943   
[dependencies.aws-smithy-async]
 7052   9944   
path = "../aws-smithy-async"
 7053   9945   
version = "1.2.5"
 7054   9946   
 7055   9947   
[dependencies.aws-smithy-http]
 7056   9948   
path = "../aws-smithy-http"
 7057         -
version = "0.62.2"
        9949  +
version = "0.62.3"
 7058   9950   
 7059   9951   
[dependencies.aws-smithy-json]
 7060   9952   
path = "../aws-smithy-json"
 7061   9953   
version = "0.61.4"
 7062   9954   
 7063   9955   
[dependencies.aws-smithy-runtime]
 7064   9956   
path = "../aws-smithy-runtime"
 7065   9957   
features = ["client"]
 7066   9958   
version = "1.8.5"
 7067   9959   
 7068   9960   
[dependencies.aws-smithy-runtime-api]
 7069   9961   
path = "../aws-smithy-runtime-api"
 7070   9962   
features = ["client", "http-02x"]
 7071   9963   
version = "1.8.5"
 7072   9964   
 7073   9965   
[dependencies.aws-smithy-types]
 7074   9966   
path = "../aws-smithy-types"
 7075   9967   
version = "1.3.2"
 7076   9968   
 7077   9969   
[dependencies.aws-types]
 7078   9970   
path = "../aws-types"
 7079   9971   
version = "1.3.8"
 7080   9972   
 7081   9973   
[dependencies.bytes]
 7082   9974   
version = "1.4.0"
 7083   9975   
 7084   9976   
[dependencies.fastrand]
 7085   9977   
version = "2.0.0"
 7086   9978   
 7087   9979   
[dependencies.http]
 7088   9980   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 7089   9981   
index 0c56e4c..95731e3 100644
 7090         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
        9982  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 7091   9983   
@@ -1,61 +1,61 @@
 7092   9984   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7093   9985   
[package]
 7094   9986   
name = "aws-sdk-timestreamwrite"
 7095   9987   
version = "0.0.0-local"
 7096   9988   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7097   9989   
description = "AWS SDK for Amazon Timestream Write"
 7098   9990   
edition = "2021"
 7099   9991   
license = "Apache-2.0"
 7100   9992   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7101   9993   
rust-version = "1.86.0"
 7102   9994   
readme = "README.md"
 7103   9995   
[package.metadata.smithy]
 7104   9996   
codegen-version = "ci"
 7105   9997   
[package.metadata.docs.rs]
 7106   9998   
all-features = true
 7107   9999   
targets = ["x86_64-unknown-linux-gnu"]
 7108  10000   
[dependencies.aws-credential-types]
 7109  10001   
path = "../aws-credential-types"
 7110  10002   
version = "1.2.4"
 7111  10003   
 7112  10004   
[dependencies.aws-runtime]
 7113  10005   
path = "../aws-runtime"
 7114  10006   
version = "1.5.9"
 7115  10007   
 7116  10008   
[dependencies.aws-smithy-async]
 7117  10009   
path = "../aws-smithy-async"
 7118  10010   
version = "1.2.5"
 7119  10011   
 7120  10012   
[dependencies.aws-smithy-http]
 7121  10013   
path = "../aws-smithy-http"
 7122         -
version = "0.62.2"
       10014  +
version = "0.62.3"
 7123  10015   
 7124  10016   
[dependencies.aws-smithy-json]
 7125  10017   
path = "../aws-smithy-json"
 7126  10018   
version = "0.61.4"
 7127  10019   
 7128  10020   
[dependencies.aws-smithy-runtime]
 7129  10021   
path = "../aws-smithy-runtime"
 7130  10022   
features = ["client"]
 7131  10023   
version = "1.8.5"
 7132  10024   
 7133  10025   
[dependencies.aws-smithy-runtime-api]
 7134  10026   
path = "../aws-smithy-runtime-api"
 7135  10027   
features = ["client", "http-02x"]
 7136  10028   
version = "1.8.5"
 7137  10029   
 7138  10030   
[dependencies.aws-smithy-types]
 7139  10031   
path = "../aws-smithy-types"
 7140  10032   
version = "1.3.2"
 7141  10033   
 7142  10034   
[dependencies.aws-types]
 7143  10035   
path = "../aws-types"
 7144  10036   
version = "1.3.8"
 7145  10037   
 7146  10038   
[dependencies.bytes]
 7147  10039   
version = "1.4.0"
 7148  10040   
 7149  10041   
[dependencies.fastrand]
 7150  10042   
version = "2.0.0"
 7151  10043   
 7152  10044   
[dependencies.http]
 7153  10045   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 7154  10046   
index 5b35037..9fb220a 100644
 7155         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       10047  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 7156  10048   
@@ -1,71 +1,71 @@
 7157  10049   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7158  10050   
[package]
 7159  10051   
name = "aws-sdk-transcribestreaming"
 7160  10052   
version = "0.0.0-local"
 7161  10053   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7162  10054   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 7163  10055   
edition = "2021"
 7164  10056   
license = "Apache-2.0"
 7165  10057   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7166  10058   
rust-version = "1.86.0"
 7167  10059   
readme = "README.md"
 7168  10060   
[package.metadata.smithy]
 7169  10061   
codegen-version = "ci"
 7170  10062   
[package.metadata.docs.rs]
 7171  10063   
all-features = true
 7172  10064   
targets = ["x86_64-unknown-linux-gnu"]
 7173  10065   
[dependencies.aws-credential-types]
 7174  10066   
path = "../aws-credential-types"
 7175  10067   
version = "1.2.4"
 7176  10068   
 7177  10069   
[dependencies.aws-runtime]
 7178  10070   
path = "../aws-runtime"
 7179  10071   
features = ["event-stream"]
 7180  10072   
version = "1.5.9"
 7181  10073   
 7182  10074   
[dependencies.aws-sigv4]
 7183  10075   
path = "../aws-sigv4"
 7184         -
version = "1.3.3"
       10076  +
version = "1.3.4"
 7185  10077   
 7186  10078   
[dependencies.aws-smithy-async]
 7187  10079   
path = "../aws-smithy-async"
 7188  10080   
version = "1.2.5"
 7189  10081   
 7190  10082   
[dependencies.aws-smithy-eventstream]
 7191  10083   
path = "../aws-smithy-eventstream"
 7192  10084   
version = "0.60.10"
 7193  10085   
 7194  10086   
[dependencies.aws-smithy-http]
 7195  10087   
path = "../aws-smithy-http"
 7196  10088   
features = ["event-stream"]
 7197         -
version = "0.62.2"
       10089  +
version = "0.62.3"
 7198  10090   
 7199  10091   
[dependencies.aws-smithy-json]
 7200  10092   
path = "../aws-smithy-json"
 7201  10093   
version = "0.61.4"
 7202  10094   
 7203  10095   
[dependencies.aws-smithy-runtime]
 7204  10096   
path = "../aws-smithy-runtime"
 7205  10097   
features = ["client"]
 7206  10098   
version = "1.8.5"
 7207  10099